From: morioka Date: Sun, 30 Aug 1998 12:06:44 +0000 (+0000) Subject: egg-980627. X-Git-Tag: egg-980627~1 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=76732e6a1bda6c43729b2c8e356a717b2c7b1043;p=elisp%2Fegg.git egg-980627. --- diff --git a/AUTHORS b/AUTHORS index bae7fd0..b84581f 100644 --- a/AUTHORS +++ b/AUTHORS @@ -17,7 +17,8 @@ NIIBE Yutaka KATAYAMA Yoshio Design ITS programming. - Wrote its/hangul.el, its/erpin.el, its/pinyin.el, its/zhuyin.el. + Wrote its/hangul.el, its/erpin.el, its/pinyin.el, + its/thai.el, and its/zhuyin.el. Satoru Tomura Designer/Implementor/Maintainer of EGG through V3.0. diff --git a/ChangeLog b/ChangeLog index 0b00d91..3829a2c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,151 @@ +1998-06-27 KATAYAMA Yoshio + + * egg-cnv.el (egg-abort-conversion): Bug fix. + +1998-06-27 NIIBE Yutaka + + * egg/wnn.el (wnn-dictionary-specification-list): Don' specify + for gerodic/g-jinmei. + Suggested by SAKAI Kiyotaka . + +1998-06-26 KATAYAMA Yoshio + + * its.el (its-cancel-input): Bug fix. + +1998-06-26 SAKAI Kiyotaka + + * egg-cnv.el (egg-conversion-mode, egg-help-command): New + functions for help string. + * its.el (its-mode, its-mode-help-command): Likewise. + +1998-06-26 KATAYAMA Yoshio + + * egg-cnv.el (egg-convert-region): Bug fix. + * egg.el (egg-default-language): Don't use string. + + * its/hankata.el (its-han-kata-enable-double-n, and others): + Variable name change (-han-) to distingush kata.el. + + * its/erpin.el (its-erpin-tw-enable-quanjioao-alphabet, + its-erpin-cn-enable-quanjioao-alphabet): + See its-enable-fullwidth-alphabet. + * its/kata.el (its-kata-enable-zenkaku-alphabet): Likewise. + * its/pinyin.el (its-pinyin-cn-enable-quanjioao-alphabet): Likewise. + * its/zenkaku.el (its-zenkaku-down-map): Likewise. + + * its/erpin.el (its-erpin-tw-map): Bug fix for "\\", "{", "}", and + "/". + * its/pinyin.el (its-pinyin-cn-map): Ditto. + * its/quanjiao.el (its-quanjiao-down-tw-map): Ditto. + * its/zhuyin.el (its-zhuyin-cn-enable-quanjioao-alphabet): Ditto. + + * its/hira.el (its-hira-enable-zenkaku-alphabet): Follow changes + of its.el. + * its/ascii.el (its-up-map, its-down-map): Ditto. + * its/jeonkak.el (its-jeonkak-up-map): Ditto. + + * its/hira.el (its-hira-enable-zenkaku-alphabet): + See its-enable-fullwidth-alphabet. + + * egg/wnn.el (wnn-save-dictionaries): Rewritten. + + * egg/canna.el (egg-edep): Required. + (canna-support-languages): Use symbol. + * egg/sj3.el (egg-edep): Likewise. + + * egg/wnn.el (egg-edep): Likewise. + * egg/wnnrpc.el: Use symbol. + + * menudiag.el (menudiag-mode-map): Bug fix for boundary conditions. + (menudiag-make-selection-list): Bug fix in case of many items. + + (menudiag-forward-item, menudiag-backward-item, + menudiag-goto-line): Change so that it wraps. + + * its.el (egg-edep): Required. + (its-keydef): Require unconditioanlly. + (its-mode-map): Don't call its-define-select-keys here. + (its-mode-map): Use of symbol as keymap. + (its-fence-invisible): New variable. + (its-put-cursor): Don't call its-define-select-keys. + (its-setup-fence-mode): invisible handling and its-define-select-keys. + (its-keyseq-acceptable-p): if (CDR SYL) is number, return NIL. + (define-its-state-machine): Introduce its-temporaly-map. + (define-its-state-machine-append): Likewise. + + (its-goto-state): Use symbol as keymap, not directly. + + (its-set-part-1,its-set-part-2): New function. + (its-delete-backward-within-SYL): Conditionalize. + + * egg.el (egg-edep): Required. + (egg-mode): Add remove-hook call. + Supply NIL as first argument to egg-set-conversion-backend. + make-local-hook for input-method-activate-hook. + (egg-set-face): Add optional argument OBJECT. + (egg-redraw-face): Bind inhibit-point-motion-hooks. + + * egg.el (set-buffer-multibyte): Move to egg-edep.el. + + * egg-mlh.el (mlh-space-bar-backward-henkan): Use assq. + + * egg-com.el (egg-zhuyin-syllable): compatibility change. + (encode-fixed-euc-china-region): Removed maxlen. + + Really Needed? -- gN. + * egg-com.el (egg-pinyin-syllable): Check exact match. + (egg-zhuyin-syllable): Likewise. + + * egg-cnv.el (egg-edep): Required. + (its-keydef): Not required. + (egg-conversion-map): Don't call its-define-select-keys here. + Fset it to use symbol instead of the map directly. + + (egg-get-bunsetsu-info): Add new optional argument for getting + property. + (egg-start-conversion-other-languages): set egg-conversion-backend. + (egg-set-current-backend): Use assq instead of assoc. + (egg-get-conversion-face): Likewise. + (egg-conversion-invisible): New variable. + (egg-convert-region): Change for open/close delimiter. + (egg-chinese-sisheng-regexp): New function. + (egg-separate-languages): Use egg-chinese-sisheng-regexp, + use symbol for language specifier (instead of string). + + (egg-charset-to-language): Use symbol for language specifier + (instead of string). + (egg-next-chinese-lang): Likewise. + + (egg-next-part-lang): Change the arguments. + + (egg-make-bunsetsu): New function changing egg-insert-bunsetsu. + + (egg-separate-characters): compatibility changes. + + (egg-conversion-wrap-select): New Variable. + + (egg-next-candidate): Can wrap around. + + (egg-decide-before-point): Rewritten. + (egg-abort-conversion): Back to previous one. + (egg-select-candidate): Use egg-make-bunsetsu. + + * egg-edep.el: New File for handling differences between Emacs version. + * its/thai.el: New File. + * its/hangul.el: Updated. + +1998-06-26 NIIBE Yutaka + + * Makefile (install): Don't touch .emacs and leim-list.el + directly. User should do it by her hand. + Reported by SAKAI Kiyotaka + +1998-06-25 NIIBE Yutaka + + * egg/canna.el (canna-dictionary-specification): "user" instead of + ("user"). Should chnage canna-filename later. + Reported by Akio Morita . + 1998-04-02 NIIBE Yutaka * egg-com.el (comm-unpack-u16-string): Call string-as-multibyte. diff --git a/Egg.prj b/Egg.prj index da30834..4f6bcc6 100644 --- a/Egg.prj +++ b/Egg.prj @@ -1,11 +1,11 @@ ;; -*- Lisp -*- (Created-By-Prcs-Version 1 2 1) (Project-Description "") -(Project-Version Egg 0 15) -(Parent-Version Egg 0 14) -(Version-Log "Canna support.") +(Project-Version Egg 0 19) +(Parent-Version Egg 0 18) +(Version-Log "") (New-Version-Log "") -(Checkin-Time "Fri, 03 Apr 1998 08:34:49 +0900") +(Checkin-Time "Sat, 27 Jun 1998 17:16:10 +0900") (Checkin-Login gniibe) (Populate-Ignore ("^.*/RCS/.*$" "^RCS/.*$" "^\\.elc$")) (Project-Keywords) @@ -89,12 +89,12 @@ (obsolete/MEMO (Egg/b/23_MEMO 1.1 644)) (obsolete/HISTORY (Egg/b/24_HISTORY 1.1 644)) (obsolete/ChangeLog (Egg/b/25_ChangeLog 1.1 644)) - (its/zhuyin.el (Egg/b/26_zhuyin.el 1.2 644)) - (its/pinyin.el (Egg/b/27_pinyin.el 1.3 644)) + (its/zhuyin.el (Egg/b/26_zhuyin.el 1.3 644)) + (its/pinyin.el (Egg/b/27_pinyin.el 1.4 644)) (its/kana.el (Egg/b/28_kana.el 1.1 644)) - (its/hira.el (Egg/b/29_hira.el 1.3 644)) - (its/hangul.el (Egg/b/30_hangul.el 1.3 644)) - (its/erpin.el (Egg/b/31_erpin.el 1.2 644)) + (its/hira.el (Egg/b/29_hira.el 1.4 644)) + (its/hangul.el (Egg/b/30_hangul.el 1.4 644)) + (its/erpin.el (Egg/b/31_erpin.el 1.3 644)) (incoming/utils.el (Egg/b/32_utils.el 1.1 644)) (incoming/tamago-cnv.el.diff (Egg/b/33_tamago-cnv 1.1 644)) (incoming/jis-input.el (Egg/b/34_jis-input. 1.1 644)) @@ -105,25 +105,25 @@ (incoming/emacs-bug (Egg/b/39_emacs-bug 1.1 644)) (incoming/ccl (Egg/b/40_ccl 1.1 644)) (incoming/bushu.el (Egg/b/41_bushu.el 1.1 644)) - (egg/wnnrpc.el (Egg/b/42_wnnrpc.el 1.2 644)) - (egg/wnn.el (Egg/b/43_wnn.el 1.5 644)) + (egg/wnnrpc.el (Egg/b/42_wnnrpc.el 1.3 644)) + (egg/wnn.el (Egg/b/43_wnn.el 1.8 644)) (egg/sj3rpc.el (Egg/b/44_sj3rpc.el 1.4 644)) - (egg/sj3.el (Egg/b/45_sj3.el 1.6 644)) - (menudiag.el (Egg/b/46_menudiag.e 1.2 644)) + (egg/sj3.el (Egg/b/45_sj3.el 1.7 644)) + (menudiag.el (Egg/b/46_menudiag.e 1.3 644)) (leim-list-egg.el (Egg/b/47_leim-list- 1.5 644)) - (its.el (Egg/b/48_its.el 1.10 644)) + (its.el (Egg/b/48_its.el 1.12 644)) ; (euc-china.el (Egg/b/49_euc-cn.el 1.2 644)) - (egg.el (Egg/b/50_egg.el 1.6 644)) - (egg-mlh.el (Egg/b/51_egg-mlh.el 1.6 644)) - (egg-com.el (Egg/c/0_egg-com.el 1.6 644)) - (egg-cnv.el (Egg/c/1_egg-cnv.el 1.7 644)) + (egg.el (Egg/b/50_egg.el 1.8 644)) + (egg-mlh.el (Egg/b/51_egg-mlh.el 1.7 644)) + (egg-com.el (Egg/c/0_egg-com.el 1.7 644)) + (egg-cnv.el (Egg/c/1_egg-cnv.el 1.9 644)) (docomp.el (Egg/c/2_docomp.el 1.3 644)) (TODO (Egg/c/3_TODO 1.1 644)) (README (Egg/c/4_README 1.1 644)) (PROBLEMS (Egg/c/5_PROBLEMS 1.1 644)) - (Makefile (Egg/c/6_Makefile 1.7 644)) - (ChangeLog (Egg/c/7_ChangeLog 1.14 644)) - (AUTHORS (Egg/c/8_AUTHORS 1.2 644)) + (Makefile (Egg/c/6_Makefile 1.9 644)) + (ChangeLog (Egg/c/7_ChangeLog 1.17 644)) + (AUTHORS (Egg/c/8_AUTHORS 1.3 644)) ; (obsolete/its/RCS () :directory) ; (obsolete/RCS/wnnfns.h,v ()) ; (obsolete/RCS/wnnfns.c,v ()) @@ -148,18 +148,23 @@ ; (RCS/its.el,v ()) ; (RCS/egg.el,v ()) ; (RCS/busyu.el,v ()) - (its-keydef.el (Egg/c/9_its-keydef 1.5 644)) + (its-keydef.el (Egg/c/9_its-keydef 1.6 644)) (incoming/kawabata (Egg/c/10_kawabata 1.1 644)) ;; Files added by populate at Sun, 15 Mar 1998 15:40:35 +0900: (egg-hilit.el (Egg/c/11_egg-hilit. 1.1 644)) - (its/zenkaku.el (Egg/c/12_zenkaku.el 1.1 644)) - (its/quanjiao.el (Egg/c/13_quanjiao.e 1.1 644)) - (its/kata.el (Egg/c/14_kata.el 1.1 644)) - (its/jeonkak.el (Egg/c/15_jeonkak.el 1.1 644)) - (its/hankata.el (Egg/c/16_hankata.el 1.1 644)) - (its/ascii.el (Egg/c/17_ascii.el 1.1 644)) + (its/zenkaku.el (Egg/c/12_zenkaku.el 1.2 644)) + (its/quanjiao.el (Egg/c/13_quanjiao.e 1.2 644)) + (its/kata.el (Egg/c/14_kata.el 1.2 644)) + (its/jeonkak.el (Egg/c/15_jeonkak.el 1.2 644)) + (its/hankata.el (Egg/c/16_hankata.el 1.2 644)) + (its/ascii.el (Egg/c/17_ascii.el 1.2 644)) (egg/cannarpc.el (Egg/c/18_cannarpc.e 1.1 644)) - (egg/canna.el (Egg/c/19_canna.el 1.1 644)) + (egg/canna.el (Egg/c/19_canna.el 1.3 644)) + +;; Files added by populate at Sat, 27 Jun 1998 16:04:57 +0900: + (egg-edep.el (Egg/c/20_egg-edep.e 1.1 644)) +; (incoming/elp.el ()) + (its/thai.el (Egg/c/21_thai.el 1.1 644)) ) (Merge-Parents) (New-Merge-Parents) diff --git a/Makefile b/Makefile index b2d5eb2..07a693a 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ EMACS = emacs ETCS = Makefile leim-list-egg.el AUTHORS ChangeLog README TODO docomp.el \ Egg.prj PROBLEMS -SRCS = menudiag.el its.el egg.el \ +SRCS = menudiag.el its.el egg-edep.el \ its/ascii.el \ its/erpin.el \ its/hankata.el \ @@ -29,14 +29,16 @@ SRCS = menudiag.el its.el egg.el \ its/pinyin.el \ its/hangul.el \ its/kata.el \ + its/thai.el \ its/quanjiao.el \ its/zenkaku.el \ its/zhuyin.el \ its-keydef.el \ egg-mlh.el egg-cnv.el egg-com.el \ - egg/canna.el egg/cannarpc.el \ - egg/sj3.el egg/sj3rpc.el \ - egg/wnn.el egg/wnnrpc.el + egg.el \ + egg/cannarpc.el egg/canna.el \ + egg/sj3rpc.el egg/sj3.el \ + egg/wnnrpc.el egg/wnn.el ELCS = ${SRCS:.el=.elc} @@ -73,9 +75,10 @@ install-dirs: if [ ! -d ${SITEDIR}/$$d ]; then mkdir -p ${SITEDIR}/$$d; fi; \ done -install: all dotemacs leim-list.el install-dirs +install: all install-dirs for x in ${SRCS} ${ELCS}; do $(INSTALL) -m 644 $$x ${SITEDIR}/`dirname $$x`; done - $(INSTALL) -m 644 leim-list.el ${SITEDIR} + @echo -n "### See leim-list-egg.el for registering input method" + @echo " (if you haven't yet)." # DEPENDENCIES egg/sj3rpc.elc: egg-com.elc egg/sj3.elc diff --git a/egg-cnv.el b/egg-cnv.el index bd947dc..a996838 100644 --- a/egg-cnv.el +++ b/egg-cnv.el @@ -1,4 +1,4 @@ -;;; egg-cnv.el --- Conversion Backend in Egg Input Method Architecture +pn;;; egg-cnv.el --- Conversion Backend in Egg Input Method Architecture ;; Copyright (C) 1997, 1998 Mule Project, ;; Powered by Electrotechnical Laboratory, JAPAN. @@ -31,31 +31,33 @@ ;;; Code: +(require 'egg-edep) + (defvar egg-current-language) (make-variable-buffer-local 'egg-current-language) (put 'egg-current-language 'permanent-local t) (defsubst egg-bunsetsu-info () 'intangible) -(defun egg-get-bunsetsu-info (p) - (let ((bunsetsu-info (get-text-property p (egg-bunsetsu-info)))) +(defun egg-get-bunsetsu-info (p &optional object) + (let ((bunsetsu-info (get-text-property p (egg-bunsetsu-info) object))) (if bunsetsu-info - (setq egg-conversion-backend (get-text-property p 'egg-backend) - egg-current-language (get-text-property p 'egg-lang))) + (setq egg-conversion-backend (get-text-property p 'egg-backend object) + egg-current-language (get-text-property p 'egg-lang object))) bunsetsu-info)) ;; (defconst egg-conversion-backend-other-languages [ egg-init-other-languages - egg-start-conversion-other-languages + egg-start-conversion-other-languages egg-get-bunsetsu-converted-other-languages egg-get-bunsetsu-source-other-languages egg-list-candidates-other-languages - egg-get-number-of-candidates-other-languages - egg-get-current-candidate-number-other-languages - egg-get-all-candidates-other-languages - egg-decide-candidate-other-languages + egg-get-number-of-candidates-other-languages + egg-get-current-candidate-number-other-languages + egg-get-all-candidates-other-languages + egg-decide-candidate-other-languages egg-change-bunsetsu-length-other-languages egg-end-conversion-other-languages nil @@ -67,6 +69,7 @@ ) (defun egg-start-conversion-other-languages (yomi-string language) + (setq egg-conversion-backend egg-conversion-backend-other-languages) (list yomi-string)) (defun egg-get-bunsetsu-converted-other-languages (bunsetsu-info) bunsetsu-info) @@ -102,7 +105,7 @@ (defun egg-set-current-backend (language) (setq egg-conversion-backend - (cdr (assoc language egg-conversion-backend-alist))) + (cdr (assq language egg-conversion-backend-alist))) (if (null egg-conversion-backend) (setq egg-conversion-backend egg-conversion-backend-other-languages))) @@ -165,165 +168,179 @@ (defvar egg-conversion-open "|" "*$B%U%'%s%9$N;OE@$r<($9J8;zNs(B (1 $BJ8;z0J>e(B)") (defvar egg-conversion-close "|" "*$B%U%'%s%9$N=*E@$r<($9J8;zNs(B (1 $BJ8;z0J>e(B)") (defvar egg-conversion-face nil "*$B%U%'%s%9I=<($KMQ$$$k(B face $B$^$?$O(B nil") +(defvar egg-conversion-invisible nil) (defvar egg-conversion-separator " ") (defun egg-get-conversion-face () (let ((face (and (listp egg-conversion-face) - (or (assoc egg-current-language egg-conversion-face) - (assoc t egg-conversion-face))))) + (or (assq egg-current-language egg-conversion-face) + (assq t egg-conversion-face))))) (if face (cdr face) egg-conversion-face))) ;; (defun egg-convert-region (start end) (interactive "r") - (if (>= start end) - ;; nothing to do - nil - (remove-text-properties start end '(read-only nil intangible nil)) - (goto-char start) - (insert egg-conversion-open) - (let ((inhibit-read-only t) - (max (make-marker)) - bunsetsu-info-list contin p s e result) - (setq p (+ (point) (- end start))) - (set-text-properties start (point) - (list - 'read-only t - 'egg-start t - 'egg-source (buffer-substring (point) p))) - (if egg-conversion-face - (put-text-property start (point) 'invisible t)) - (setq start (point)) - (goto-char p) - (insert egg-conversion-close) - (set-text-properties p (point) '(read-only t rear-nonsticky t egg-end t)) - (if egg-conversion-face - (put-text-property p (point) 'invisible t)) - (set-marker max p) - (egg-separate-languages start max) - (goto-char start) - (while (< (point) max) - (setq egg-current-language (get-text-property (point) 'egg-lang) - s (point) - e (point)) - (while (and (< e max) - (equal egg-current-language - (get-text-property e 'egg-lang))) - (setq e (next-single-property-change e 'egg-lang nil max))) - (condition-case result - (setq bunsetsu-info-list - (egg-start-conversion - (buffer-substring-no-properties s e) - egg-current-language)) - (error ; XXX: catching all error is BADBADBAD - (setq egg-conversion-backend egg-conversion-backend-other-languages - bunsetsu-info-list (egg-start-conversion-other-languages - (buffer-substring-no-properties s e) - egg-current-language)) - (message "egg %s backend: %s" egg-current-language (cadr result)))) - (setq contin (< e max)) - (delete-region s e) - (egg-insert-bunsetsu-list bunsetsu-info-list - (if (< (point) max) 'contine t))) - (set-marker max nil) - (goto-char start)))) - -(defun egg-separate-languages (start end &optional use-context) - (let (lang last-lang last-chinese p pe l c cset) + (let ((source (buffer-substring start end)) + (no-prop-source (buffer-substring-no-properties start end)) + bunsetsu-info-list len result i j s) + (if (>= start end) + ;; nothing to do + nil + (delete-region start end) + (let ((inhibit-read-only t)) + (its-define-select-keys egg-conversion-map) + (goto-char start) + ;; XXX: Why make OPEN&CLOSE string every time when + ;; this function is invoked? Any Reason? + ;; For me it's matter of user costomization + ;; of setting egg-conversion-open/egg-conversion-close + ;; it can be string of properties at the beginning, isn't it? + (setq s (copy-sequence egg-conversion-open) + len (length s)) + (set-text-properties 0 len + (list + 'read-only t + 'egg-start t + 'egg-source source) + s) + (if egg-conversion-invisible + (put-text-property 0 len 'invisible t s)) + (insert s) + (setq start (point) + s (copy-sequence egg-conversion-close) + len (length s)) + (set-text-properties 0 len + '(read-only t rear-nonsticky t egg-end t) + s) + (if egg-conversion-invisible + (put-text-property 0 len 'invisible t s)) + (insert s) + (goto-char start) + (egg-separate-languages (copy-sequence source)) + (setq i 0 + len (length source)) + (while (< i len) + (setq egg-current-language (get-text-property i 'egg-lang source) + j (egg-next-single-property-change i 'egg-lang source len)) + (condition-case result + (setq bunsetsu-info-list (egg-start-conversion + (substring no-prop-source i j) + egg-current-language)) + (error ; XXX: catching all error is BADBADBAD + (setq bunsetsu-info-list (egg-start-conversion-other-languages + (substring no-prop-source i j) + egg-current-language)) + (message "egg %s backend: %s" + egg-current-language (nth 1 result)))) + (egg-insert-bunsetsu-list bunsetsu-info-list + (if (< j len) 'contine t)) + (setq i j)) + (goto-char start))))) + +(defconst egg-chinese-sisheng-regexp + (concat "[" (list (make-char 'chinese-sisheng 32)) + "-" (list (make-char 'chinese-sisheng 127)) + "]+")) + +(defun egg-separate-languages (str &optional last-lang) + (let (lang last-chinese + (len (length str)) i j l) ;; 1st pass -- mark undefined Chinese part - (goto-char start) - (and use-context - (setq last-lang (get-text-property (1- (point)) 'egg-lang)) - (or (equal last-lang "Chinese-GB") (equal last-lang "Chinese-CNS")) - (setq last-chinese last-lang)) - (while (< (point) end) - (setq p (point) - pe (next-single-property-change (point) 'egg-lang nil end)) - (cond - ((get-text-property (point) 'egg-lang) - (goto-char pe) - (setq lang nil)) - ((setq l (egg-chinese-syllable (buffer-substring p pe))) - (goto-char (+ p l)) - (setq lang "Chinese")) - ((progn - (setq c (following-char) - cset (char-charset c)) - (eq cset 'chinese-sisheng)) - (forward-char) - (setq lang "Chinese")) - ((eq cset 'ascii) - (skip-chars-forward "\0-\177" pe) - (if (eq (char-charset (following-char)) 'chinese-sisheng) - (goto-char (max (1+ pp) (- (point) 6)))) - (setq lang nil)) - ((eq cset 'composition) - (forward-char) - (setq lang (egg-charset-to-language - (char-charset (car (decompose-composite-char c 'list)))))) - (t - (skip-chars-forward (concat (vector (make-char cset 33 33)) - "-" - (vector (make-char cset 127 127))) - pe) - (setq lang (egg-charset-to-language cset)))) - (if lang - (put-text-property p (point) 'egg-lang lang))) + (if (or (eq last-lang 'Chinese-GB) (eq last-lang 'Chinese-CNS)) + (setq last-chinese last-lang)) + (setq i 0) + (while (< i len) + (setq j (egg-next-single-property-change i 'egg-lang str len)) + (if (get-text-property i 'egg-lang str) + nil + (setq c (egg-string-to-char-at str i) + cset (char-charset c)) + (cond + ((eq cset 'chinese-sisheng) + (string-match egg-chinese-sisheng-regexp str i) + (setq l (match-end 0) + j (min j l) + lang 'Chinese)) + ((setq l (egg-chinese-syllable str i)) + (setq j (+ i l) + lang 'Chinese)) + ((eq cset 'ascii) + (if (eq (string-match "[\0-\177\240-\377]+" str (1+ i)) (1+ i)) + (setq j (match-end 0)) + (setq j (1+ i))) + (if (and (< j len) + (eq (char-charset (egg-string-to-char-at str j)) + 'chinese-sisheng)) + (setq j (max (1+ i) (- j 6)))) + (setq lang nil)) + ((eq cset 'composition) + (setq j (+ i (egg-char-bytes c)) + lang (egg-charset-to-language + (char-charset + (car (decompose-composite-char c 'list)))))) + (t + (string-match (concat "[" (list (make-char cset 32 32)) + "-" (list (make-char cset 127 127)) + "]+") + str i) + (setq j (match-end 0) + lang (egg-charset-to-language cset)))) + (if lang + (put-text-property i j 'egg-lang lang str))) + (setq i j)) ;; 2nd pass -- set language property - (goto-char start) - (while (< (point) end) - (setq lang (get-text-property (point) 'egg-lang)) + (setq i 0) + (while (< i len) + (setq lang (get-text-property i 'egg-lang str)) (cond ((null lang) (setq lang (or last-lang - (egg-next-part-lang end)))) - ((equal lang "Chinese") + (egg-next-part-lang str i)))) + ((equal lang 'Chinese) (setq lang (or last-chinese - (egg-next-chinese-lang end))))) + (egg-next-chinese-lang str i))))) (setq last-lang lang) - (if (or (equal lang "Chinese-GB") (equal lang "Chinese-CNS")) + (if (or (eq lang 'Chinese-GB) (eq lang 'Chinese-CNS)) (setq last-chinese lang)) - (setq p (point)) - (goto-char (next-single-property-change (point) 'egg-lang nil end)) - (set-text-properties p (point) (list 'egg-lang lang))))) + (setq j i + i (egg-next-single-property-change i 'egg-lang str len)) + (set-text-properties j i (list 'egg-lang lang) str)))) +;;; Should think again the interface to language-info-alist (defun egg-charset-to-language (charset) (let ((list language-info-alist)) (while (and list (null (memq charset (assq 'charset (car list))))) (setq list (cdr list))) - (car (car list)))) - -(defun egg-next-part-lang (end) - (let* ((p (next-single-property-change (point) 'egg-lang nil end)) - (lang (get-text-property p 'egg-lang))) - (if (equal lang "Chinese") - (egg-next-chinese-lang end) + (if list + (intern (car (car list)))))) + +(defun egg-next-part-lang (str pos) + (let ((lang (get-text-property + (egg-next-single-property-change pos 'egg-lang str (length str)) + 'egg-lang str))) + (if (eq lang 'Chinese) + (egg-next-chinese-lang str pos) (or lang its-current-language egg-default-language)))) -(defun egg-next-chinese-lang (end) - (let (p lang) - (setq p (point)) - (while (and (< p end) (null lang)) - (setq p (next-single-property-change p 'egg-lang nil end)) - (setq lang (get-text-property p 'egg-lang)) - (if (null (or (equal lang "Chinese-GB") - (equal lang "Chinese-CNS"))) +(defun egg-next-chinese-lang (str pos) + (let ((len (length str)) lang) + (while (and (< pos len) (null lang)) + (setq pos (egg-next-single-property-change pos 'egg-lang str len) + lang (get-text-property pos 'egg-lang str)) + (if (null (or (eq lang 'Chinese-GB) + (eq lang 'Chinese-CNS))) (setq lang nil))) (cond (lang lang) - ((or (equal its-current-language "Chinese-GB") - (equal its-current-language "Chinese-CNS")) - its-current-language) - ((or (equal egg-default-language "Chinese-GB") - (equal egg-default-language "Chinese-CNS")) - egg-default-language) - (t "Chinese-GB")))) + ((eq its-current-language 'Chinese-GB) 'Chinese-GB) + ((eq its-current-language 'Chinese-CNS) 'Chinese-CNS) + ((eq egg-default-language 'Chinese-GB) 'Chinese-GB) + ((eq egg-default-language 'Chinese-CNS) 'Chinese-CNS) + (t 'Chinese-GB)))) -(require 'its-keydef) - (defvar egg-conversion-map (let ((map (make-sparse-keymap)) (i 33)) @@ -352,39 +369,45 @@ (define-key map [right] 'egg-forward-bunsetsu) (define-key map [left] 'egg-backward-bunsetsu) (define-key map " " 'egg-next-candidate) - (its-define-select-keys map) map) "Keymap for EGG Conversion mode.") +(fset 'egg-conversion-map egg-conversion-map) + (defun egg-exit-conversion-unread-char () (interactive) (setq unread-command-events (list last-command-event)) (egg-exit-conversion)) -(defun egg-insert-bunsetsu (bunsetsu-info last) - (let ((bunsetsu (egg-get-bunsetsu-converted bunsetsu-info)) - (p (point)) p1) - (insert bunsetsu) - (setq p1 (point)) +(defun egg-make-bunsetsu (bunsetsu-info last) + (let ((bunsetsu (copy-sequence (egg-get-bunsetsu-converted bunsetsu-info))) + len len1) + (setq len1 (length bunsetsu)) (if (null (eq last t)) - (insert egg-conversion-separator)) - (set-text-properties p (point) + (setq bunsetsu (concat bunsetsu egg-conversion-separator))) + (setq len (length bunsetsu)) + (set-text-properties 0 len (list 'read-only t (egg-bunsetsu-info) bunsetsu-info 'egg-backend egg-conversion-backend 'egg-lang egg-current-language 'egg-bunsetsu-last last - 'local-map egg-conversion-map)) + 'local-map 'egg-conversion-map) + bunsetsu) (if egg-conversion-face - (egg-set-face p p1 (egg-get-conversion-face))))) + (egg-set-face 0 len1 (egg-get-conversion-face) bunsetsu)) + bunsetsu)) (defun egg-insert-bunsetsu-list (bunsetsu-info-list &optional last) (let ((l bunsetsu-info-list) - bunsetsu-info) + bunsetsu-info bunsetsu) (while l (setq bunsetsu-info (car l) - l (cdr l)) - (egg-insert-bunsetsu bunsetsu-info (and (null l) last))))) + l (cdr l) + bunsetsu (cons (egg-make-bunsetsu bunsetsu-info + (and (null l) last)) + bunsetsu))) + (apply 'insert (nreverse bunsetsu)))) ; XXX: Should avoid apply and reverse (defun egg-beginning-of-conversion-buffer (n) (interactive "p") @@ -431,13 +454,13 @@ (egg-get-bunsetsu-info (- p 2)))) (defun egg-separate-characters (str) - (let* ((v (string-to-vector str)) + (let* ((v (egg-string-to-vector str)) (len (length v)) (i 0) (j 0) m n (nchar 0)) (while (< i len) (if (setq n (egg-chinese-syllable str j)) - (setq m (chars-in-string (substring str j (+ j n)))) - (setq m 1 n (char-bytes (aref v i)))) + (setq m (egg-chars-in-period str j n)) + (setq m 1 n (egg-char-bytes (aref v i)))) (put-text-property j (+ j n) 'egg-char-size n str) (setq nchar (1+ nchar) i (+ i m) j (+ j n))) nchar)) @@ -486,6 +509,10 @@ (if beep (ding)))) +(defvar egg-conversion-wrap-select nil + "*Candidate selection wraps around to first candidate, if non-nil. +Otherwise stop at the last candidate.") + (defun egg-next-candidate (n) (interactive "p") (let ((inhibit-read-only t) @@ -503,17 +530,21 @@ (setq i (egg-get-current-candidate-number b)) (setq i (+ n i))) (if (null max+) - (setq beep t) - (if (< i 0) ; go backward as if it is ring - (while (< i 0) - (setq i (+ i max+)))) - (if (>= i max+) ; don't go forward - (setq i (1- max+) - beep t)) + (setq beep t) + (cond + ((< i 0) ; go backward as if it is ring + (while (< i 0) + (setq i (+ i max+)))) + ((< i max+)) ; OK + (egg-conversion-wrap-select ; go backward as if it is ring + (while (>= i max+) + (setq i (- i max+)))) + ((setq i (1- max+) ; don't go forward + beep t))) (setq new (egg-decide-candidate b i)) (setq p (point)) (delete-region p (progn (forward-char) (point))) - (egg-insert-bunsetsu new last) + (insert (egg-make-bunsetsu new last)) (goto-char p)) (if beep (ding)))) @@ -559,46 +590,44 @@ (defun egg-decide-before-point () (interactive) (let ((inhibit-read-only t) - (len (length egg-conversion-open)) - bunsetsu-list bl (p (point)) source lang s) - (save-restriction - (if (null (get-text-property (1- (point)) 'egg-start)) - (goto-char (previous-single-property-change (point) 'egg-start))) - (narrow-to-region (- (point) len) p) - (setq bunsetsu-list (setq bl (list nil))) - (while (< (point) (point-max)) - ;; delete sparator/open marker - (delete-region (- (point) len) (point)) - (setq len 1 - bl (setcdr bl (list (egg-get-bunsetsu-info (point))))) - (if (get-text-property (point) 'egg-bunsetsu-last) - (progn - (egg-end-conversion (cdr bunsetsu-list) nil) - (setq bunsetsu-list (setq bl (list nil))))) - (setq p (point)) - (forward-char) - (set-text-properties p (point) nil))) - (if (cdr bunsetsu-list) - (egg-end-conversion (cdr bunsetsu-list) nil)) - (if (get-text-property (point) 'egg-end) + start end len decided undecided bunsetsu source) + (setq start (if (get-text-property (1- (point)) 'egg-start) + (point) + (previous-single-property-change (point) 'egg-start)) + end (if (get-text-property (point) 'egg-end) + (point) + (next-single-property-change (point) 'egg-end)) + decided (buffer-substring start (point)) + undecided (buffer-substring (point) end)) + (delete-region (- start (length egg-conversion-open)) + (+ end (length egg-conversion-close))) + (setq i 0 + len (length decided)) + (while (< i len) + (setq bunsetsu (cons (egg-get-bunsetsu-info i decided) bunsetsu) + i (egg-next-single-property-change + i (egg-bunsetsu-info) decided len)) + (if (or (= i len) + (get-text-property (1- i) 'egg-bunsetsu-last decided)) + (progn + (setq bunsetsu (nreverse bunsetsu)) + (apply 'insert (mapcar (lambda (b) (egg-get-bunsetsu-converted b)) + bunsetsu)) + (egg-end-conversion bunsetsu nil) + (setq bunsetsu nil)))) + (setq len (length undecided)) + (if (= len 0) (progn - ;; delete close marker - (delete-region (point) (+ (point) (length egg-conversion-close))) (egg-do-auto-fill) (run-hooks 'input-method-after-insert-chunk-hook)) - ;; delete from last speparater - (delete-region (1- (point)) (point)) - (setq source "") - (while (null (get-text-property (point) 'egg-end)) - (setq s (egg-get-bunsetsu-source (egg-get-bunsetsu-info (point)))) - (put-text-property 0 (length s) 'egg-lang egg-current-language s) - (setq source (concat source s)) - (setq p (point)) - (forward-char) - (delete-region p (point))) - ;; delete close marker - (delete-region (point) (+ (point) (length egg-conversion-close))) - (its-restart source t)))) + (setq i 0) + (while (< i len) + (setq source (cons (egg-get-bunsetsu-source + (egg-get-bunsetsu-info i undecided)) + source) + i (egg-next-single-property-change + i (egg-bunsetsu-info) undecided len))) + (its-restart (apply 'concat (nreverse source)) t)))) (defun egg-exit-conversion () (interactive) @@ -607,21 +636,16 @@ (defun egg-abort-conversion () (interactive) - (let ((inhibit-read-only t) - start bunsetsu-list source) - (if (get-text-property (1- (point)) 'egg-start) - (setq start (1- (point))) - (setq start (1- (previous-single-property-change (point) 'egg-start)))) - (goto-char start) + (let ((inhibit-read-only t) source) + (goto-char (- (if (get-text-property (1- (point)) 'egg-start) + (point) + (previous-single-property-change (point) 'egg-start)) + (length egg-conversion-open))) (setq source (get-text-property (point) 'egg-source)) - ;; Delete open marker - (delete-region start (+ start (length egg-conversion-open))) - (setq bunsetsu-list (egg-decide-bunsetsu)) - ;; Delete close marker - (delete-region (point) (+ (point) (length egg-conversion-close))) - (egg-end-conversion bunsetsu-list t) - (delete-region start (point)) - (its-restart source))) + (delete-region (point) (+ (next-single-property-change (point) 'egg-end) + (length egg-conversion-close))) + (its-restart source) + (its-end-of-input-buffer))) (defun egg-select-candidate () (interactive) @@ -655,8 +679,21 @@ (setq new (egg-decide-candidate b i)) (setq p (point)) (delete-region p (progn (forward-char) (point))) - (egg-insert-bunsetsu new last) + (insert (egg-make-bunsetsu new last)) (goto-char p))))) +(defun egg-conversion-mode () + "\\{egg-conversion-map}" + ;; dummy function to get docstring + ) + +(defun egg-help-command () + "Display documentation for EGG Conversion mode." + (interactive) + (with-output-to-temp-buffer "*Help*" + (princ "EGG Conversion mode:\n") + (princ (documentation 'egg-conversion-mode)) + (help-setup-xref (cons #'help-xref-mode (current-buffer)) (interactive-p)))) + (provide 'egg-cnv) ;;; egg-cnv.el ends here. diff --git a/egg-com.el b/egg-com.el index 72d8045..7117563 100644 --- a/egg-com.el +++ b/egg-com.el @@ -1,8 +1,7 @@ -;;; egg-com.el --- Communication Routines in Egg Input -;;; Method Architecture +;;; egg-com.el --- Communication Routines in Egg Input Method Architecture -;; Copyright (C) 1997, 1998 Mule Project, Powered by Electrotechnical -;; Laboratory, JAPAN. +;; Copyright (C) 1997, 1998 Mule Project, +;; Powered by Electrotechnical Laboratory, JAPAN. ;; Project Leader: Satoru Tomura ;; Author: Hisashi Miyashita @@ -31,6 +30,8 @@ ;;; Code: +(require 'egg-edep) + (defvar egg-fixed-euc 'fixed-euc-jp) (make-variable-buffer-local 'egg-fixed-euc) @@ -60,30 +61,24 @@ (r0 = (r1 | ?\x80)) (write-read-repeat r0))))))))) -(define-ccl-program ccl-encode-fixed-euc +(define-ccl-program ccl-encode-fixed-euc-jp `(2 ((read r0) (loop -; (if (r0 < ?\x20) -; (write-read-repeat r0)) - (if (r0 == ,(charset-id 'latin-jisx0201)) ; Unify + (if (r0 == ,(charset-id 'latin-jisx0201)) ; Unify ((read r0) (r0 &= ?\x7f))) - (if (r0 < ?\x80) + (if (r0 < ?\x80) ;G0 ((write 0) (write-read-repeat r0))) (r6 = (r0 == ,(charset-id 'japanese-jisx0208))) (r6 |= (r0 == ,(charset-id 'japanese-jisx0208-1978))) - (r6 |= (r0 == ,(charset-id 'chinese-gb2312))) - (r6 |= (r0 == ,(charset-id 'korean-ksc5601))) (if r6 ;G1 ((read r0) (write r0) (read r0) (write-read-repeat r0))) - (r6 = (r0 == ,(charset-id 'katakana-jisx0201))) - (r6 |= (r0 == ,(charset-id 'chinese-sisheng))) - (if r6 ;G2 + (if (r0 == ,(charset-id 'katakana-jisx0201)) ;G2 ((read r0) (write 0) (write-read-repeat r0))) @@ -98,7 +93,7 @@ ) (make-coding-system 'fixed-euc-jp 4 ?W "Coding System for fixed EUC Japanese" - (cons ccl-decode-fixed-euc-jp ccl-encode-fixed-euc)) + (cons ccl-decode-fixed-euc-jp ccl-encode-fixed-euc-jp)) ;; Korean @@ -119,17 +114,13 @@ `(2 ((read r0) (loop -; (if (r0 < ?\x20) -; (write-read-repeat r0)) (if (r0 < ?\x80) ((write 0) (write-read-repeat r0))) (if (r0 == ,(charset-id 'korean-ksc5601)) ((read r0) - (r0 |= ?\x80) (write r0) (read r0) - (r0 |= ?\x80) (write-read-repeat r0))) (read r0) (repeat))))) @@ -416,20 +407,23 @@ ?\x0000 ]) -(defun egg-chinese-syllable (str &optional start) - (if start - (setq str (substring str start))) +(defconst egg-chinese-syllable-max-len + (max (length "Zhu(0!(Bng(0@(B") (length "(0ShdA(B"))) + +(defun egg-chinese-syllable (str pos) + (setq str (substring str pos (min (length str) + (+ pos egg-chinese-syllable-max-len)))) (or (car (egg-pinyin-syllable str)) (car (egg-zhuyin-syllable str)))) (defsubst egg-make-fixed-euc-china-code (s y) - (concat (list - (+ (* 2 (nth 1 y)) (logand (nth 2 y) 1) 32) - (+ (* 4 (if (= s 0) 20 s)) (lsh (nth 2 y) -1) 156)))) + (cons + (+ (* 2 (nth 1 y)) (logand (nth 2 y) 1) 32) + (+ (* 4 (if (= s 0) 20 s)) (lsh (nth 2 y) -1) 156))) (defun egg-pinyin-syllable (str) (let (s y end) - (if (string-match "^[A-Za-z(0!(B-(0?(B]+(0@(B" str) + (if (eq (string-match "^[A-Za-z(0!(B-(0?(B]+(0@(B" str) 0) (progn (setq end (match-end 0)) (cond @@ -444,8 +438,8 @@ (cons end (egg-make-fixed-euc-china-code s y))))))) (defun egg-zhuyin-syllable (str) - (let (end s y c z (zhuyin-len (charset-bytes 'chinese-sisheng))) - (if (string-match "^[(0E(B-(0i(B@0-4]+[(0@ABCD(B]" str) + (let (end s y c z (zhuyin-len (egg-charset-bytes 'chinese-sisheng))) + (if (eq (string-match "^[(0E(B-(0i(B@0-4]+[(0@ABCD(B]" str) 0) (progn (setq end (match-end 0) c (substring str 0 zhuyin-len) @@ -465,21 +459,22 @@ (defun encode-fixed-euc-china-region (beg end type) "Encode the text in the region to EUC-CN/TW." - (let (s syl c cset (maxlen (max (length "Zhu(0!(Bng(0@(B") (length "(0ShdA(B")))) + (let (s syl c cset) (save-excursion (save-restriction (narrow-to-region beg end) (goto-char (point-min)) (while (< (point) (point-max)) - (setq s (buffer-substring (point) - (min (+ (point) maxlen) (point-max)))) + (setq s (buffer-substring + (point) + (min (point-max) (+ (point) egg-chinese-syllable-max-len)))) (cond ((setq syl (egg-pinyin-syllable s)) (delete-region (point) (+ (point) (car syl))) - (insert (cdr syl))) + (insert (car (cdr syl)) (cdr (cdr syl)))) ((setq syl (egg-zhuyin-syllable s)) (delete-region (point) (+ (point) (car syl))) - (insert (cdr syl))) + (insert (car (cdr syl)) (cdr (cdr syl)))) (t (setq c (split-char (following-char)) cset (car c)) @@ -494,9 +489,11 @@ ((eq cset 'chinese-sisheng) (delete-char 1) (insert 0 (+ (nth 1 c) 128))) + ((eq cset 'ascii) + (delete-char 1) + (insert 0 (nth 1 c))) (t - (delete-region (point) (1+ (point))) - (insert 0 (nth 1 c))))))) + (delete-char 1)))))) (- (point-max) (point-min)))))) (defun pre-write-encode-fixed-euc-china (from to type) @@ -504,9 +501,11 @@ (work (get-buffer-create " *pre-write-encoding-work*"))) (set-buffer work) (erase-buffer) - (if (stringp from) - (insert from) - (insert-buffer-substring buf from to)) + (if (null (stringp from)) + (save-excursion + (set-buffer buf) + (setq from (buffer-substring from to)))) + (insert (string-as-multibyte from)) (encode-fixed-euc-china-region 1 (point-max) type) nil)) @@ -519,54 +518,56 @@ (defun decode-fixed-euc-china-region (beg end type) "Decode EUC-CN/TW encoded text in the region. Return the length of resulting text." - (interactive "r") (prog1 - (let (c0 c1 s y ss) - (save-restriction - (narrow-to-region beg end) - (goto-char (point-min)) - (while (< (point) (point-max)) - (setq c1 (buffer-substring (point) (+ (point) 2)) - c0 (aref c1 0) - c1 (aref c1 1)) - (delete-region (point) (+ (point) 2)) + (let ((str (string-as-unibyte (buffer-substring beg end))) + (i 0) + l c0 c1 s y ss) + (delete-region beg end) + (setq l (1- (length str))) + (while (< i l) + (setq c0 (aref str i) + c1 (aref str (1+ i)) + i (+ i 2)) + (cond + ((eq c0 0) + (if (> c1 ?\xa0) + (insert leading-code-private-11 + (charset-id 'chinese-sisheng) + c1) + (insert c1))) + ((>= c0 ?\x80) (cond - ((eq c0 0) - (if (> c1 ?\xa0) - (insert leading-code-private-11 - (charset-id 'chinese-sisheng) - c1) - (insert c1))) + ((eq type 'cn) + (insert (charset-id 'chinese-gb2312) c0 (logior c1 ?\x80))) ((>= c0 ?\x80) - (cond - ((eq type 'cn) - (insert (charset-id 'chinese-gb2312) c0 (logior c1 ?\x80))) - ((>= c0 ?\x80) - (insert (charset-id 'chinese-cns11643-1) c0 c1)) - (t - (insert (charset-id 'chinese-cns11643-2) c0 (+ c1 ?\x80))))) + (insert (charset-id 'chinese-cns11643-1) c0 c1)) (t - (setq c1 (logand c1 ?\x7f)) - (setq s (- (lsh c1 -2) 7) ;;(+ (lsh (- c1 32) -2) 1) - y (- (lsh c0 -1) 16) ;;(lsh (- c0 32) -1) - ss (+ (logand c0 1) (logand c1 3))) - (if egg-zhuyin - (progn - (setq c0 (aref yincode-zhuyin-table (+ (* 41 s) y))) - (if (eq (logand c0 ?\x8080) ?\x80) - (setq s (lsh c0 -8) - y (logand c0 ?\x7f))) - (if (and (eq s 20) - (eq (aref yincode-pinyin-table (+ (* 39 s) y)) 0)) - (setq s 0)) - (insert (car (nth s yincode-zhuyin-shengmu)) - (car (nth (+ (* 5 y) ss) yincode-zhuyin-yunmu)))) - (if (and (eq s 20) - (eq (aref yincode-pinyin-table (+ (* 39 s) y)) 0)) - (setq s 0)) - (insert (car (nth s yincode-pinyin-shengmu)) - (car (nth (+ (* 5 y) ss) yincode-pinyin-yunmu))))))) - (- (point-max) (point-min)))) + (insert (charset-id 'chinese-cns11643-2) c0 (+ c1 ?\x80))))) + (t + (setq c1 (logand c1 ?\x7f)) + (setq s (- (lsh c1 -2) 7);;(+ (lsh (- c1 32) -2) 1) + y (- (lsh c0 -1) 16);;(lsh (- c0 32) -1) + ss (+ (logand c0 1) (logand c1 3))) + (if egg-zhuyin + (progn + (setq c0 (aref yincode-zhuyin-table (+ (* 41 s) y))) + (if (eq (logand c0 ?\x8080) ?\x80) + (setq s (lsh c0 -8) + y (logand c0 ?\x7f))) + (if (and (eq s 20) + (eq (aref yincode-pinyin-table (+ (* 39 s) y)) 0)) + (setq s 0)) + (setq s (car (nth s yincode-zhuyin-shengmu)) + y (car (nth (+ (* 5 y) ss) yincode-zhuyin-yunmu)))) + (if (and (eq s 20) + (eq (aref yincode-pinyin-table (+ (* 39 s) y)) 0)) + (setq s 0)) + (setq s (car (nth s yincode-pinyin-shengmu)) + y (car (nth (+ (* 5 y) ss) yincode-pinyin-yunmu)))) + (if enable-multibyte-characters + (insert s y) + (insert (string-as-unibyte s) (string-as-unibyte y)))))) + (- (point) beg)) (if (looking-at "\0\0") (forward-char 2)))) (defun post-read-decode-fixed-euc-china (len type) @@ -582,13 +583,13 @@ Return the length of resulting text." (defun post-read-decode-euc-tw (len) (post-read-decode-fixed-euc-china len 'tw)) -(make-coding-system 'fixed-euc-cn 5 ?W "Coding System for fixed EUC Chinese-gb2312") -(put 'fixed-euc-cn 'pre-write-conversion 'pre-write-encode-euc-cn) -(put 'fixed-euc-cn 'post-read-conversion 'post-read-decode-euc-cn) +(make-coding-system 'fixed-euc-cn 0 ?W "Coding System for fixed EUC Chinese-gb2312") +(coding-system-put 'fixed-euc-cn 'pre-write-conversion 'pre-write-encode-euc-cn) +(coding-system-put 'fixed-euc-cn 'post-read-conversion 'post-read-decode-euc-cn) -(make-coding-system 'fixed-euc-tw 5 ?W "Coding System for fixed EUC Chinese-cns11643") -(put 'fixed-euc-tw 'pre-write-conversion 'pre-write-encode-euc-tw) -(put 'fixed-euc-tw 'post-read-conversion 'post-read-decode-euc-tw) +(make-coding-system 'fixed-euc-tw 0 ?W "Coding System for fixed EUC Chinese-cns11643") +(coding-system-put 'fixed-euc-tw 'pre-write-conversion 'pre-write-encode-euc-tw) +(coding-system-put 'fixed-euc-tw 'post-read-conversion 'post-read-decode-euc-tw) (defsubst comm-format-u32c (uint32c) (let ((h0 (car uint32c)) @@ -689,10 +690,6 @@ v means 8-bit vector." 'progn result))) -(if (not (fboundp 'string-as-multibyte)) - (defsubst string-as-multibyte (str) - str)) - ;; Do not move the point, leave it where it was. (defun comm-accept-process-output (proc) (let ((p (point))) diff --git a/egg-mlh.el b/egg-mlh.el index 36ad108..1c9aefe 100644 --- a/egg-mlh.el +++ b/egg-mlh.el @@ -43,7 +43,7 @@ Or else, execute command that space-bar invokes usually." (let ((henkan-begin nil) (inhibit-henkan t) (its-disable-special-action t)) - (if (null (assoc "Japanese" egg-conversion-backend-alist)) + (if (null (assq 'Japanese egg-conversion-backend-alist)) (progn (setq egg-mode-preference nil) (activate-input-method (concat "japanese-egg-" mlh-default-backend))) diff --git a/egg.el b/egg.el index caec255..601c981 100644 --- a/egg.el +++ b/egg.el @@ -29,10 +29,12 @@ ;;; Commentary: ;;; Code: +(require 'egg-edep) + (defvar egg-mode-preference t "Non-nil if modefull.") -(defvar egg-default-language "Japanese") +(defvar egg-default-language) (defvar egg-last-method-name) (make-variable-buffer-local 'egg-last-method-name) @@ -53,12 +55,13 @@ (setq describe-current-input-method-function nil) (setq current-input-method nil) (use-local-map (keymap-parent (current-local-map))) + (remove-hook 'input-method-activate-hook 'its-set-mode-line-title t) (force-mode-line-update)) ;; Turn on (if (null (string= (car arg) egg-last-method-name)) - (let ((backend egg-conversion-backend)) + (progn (funcall (nth 1 arg)) - (egg-set-conversion-backend backend (list its-current-language) t) + (egg-set-conversion-backend nil (list its-current-language) t) (setq egg-default-language its-current-language))) (setq egg-last-method-name (car arg)) (use-local-map (if egg-mode-preference @@ -66,7 +69,8 @@ (egg-modeless-map))) (setq inactivate-current-input-method-function 'egg-mode) (setq describe-current-input-method-function 'egg-help) - (add-hook 'input-method-activate-hook 'its-set-mode-line-title))) + (make-local-hook 'input-method-activate-hook) + (add-hook 'input-method-activate-hook 'its-set-mode-line-title nil t))) (defun egg-modefull-map () "Generate modefull keymap for EGG mode." @@ -95,81 +99,92 @@ (defvar egg-mark-list nil) (defvar egg-suppress-marking nil) -(defun egg-set-face (beg eng face) +(defun egg-set-face (beg eng face &optional object) + (put face 'face face) (add-text-properties beg eng - (list 'face face - 'egg-face face - 'modification-hooks '(egg-mark-modification)))) + (list 'category face + 'egg-face t + 'modification-hooks '(egg-mark-modification)) + object)) (defun egg-mark-modification (beg end) (if (and (null egg-suppress-marking) (or (get-text-property beg 'egg-face) - (setq beg (next-single-property-change beg 'egg-face))) - (or (get-text-property (1- end) 'egg-face) - (setq end (previous-single-property-change end 'egg-face))) - (< beg end)) + (setq beg (next-single-property-change beg 'egg-face))) + (or (get-text-property (1- end) 'egg-face) + (setq end (previous-single-property-change end 'egg-face))) + (< beg end)) (let ((list egg-mark-list) - (found 0) - pair mb me b e) + (found 0) + pair mb me b e) (add-hook 'post-command-hook 'egg-redraw-face t) - (setq list egg-mark-list) + (setq list egg-mark-list) (while (and list (< found 2)) - (setq pair (car list) - list (cdr list) - mb (car pair) - me (cdr pair) + (setq pair (car list) + list (cdr list) + mb (car pair) + me (cdr pair) b (marker-position mb) e (marker-position me)) - (cond - ;; no overwrapping -- SKIP - ((or (null (eq (marker-buffer mb) (current-buffer))) - (or (> beg e) (< end b)))) - ;; completely included - ((and (>= beg b) (<= end e)) - (setq found 3)) - ;; partially overwrapping - (t + (cond + ;; no overwrapping -- SKIP + ((or (null (eq (marker-buffer mb) (current-buffer))) + (or (> beg e) (< end b)))) + ;; completely included + ((and (>= beg b) (<= end e)) + (setq found 3)) + ;; partially overwrapping + (t (set-marker mb nil) (set-marker me nil) - (setq egg-mark-list (delete pair egg-mark-list) - beg (min beg b) - end (max end e) - found (1+ found))))) - (if (< found 3) - (progn - (setq b (make-marker) - e (make-marker) - egg-mark-list (cons (cons b e) egg-mark-list)) - (set-marker b beg) - (set-marker e end)))))) + (setq egg-mark-list (delete pair egg-mark-list) + beg (min beg b) + end (max end e) + found (1+ found))))) + (if (< found 3) + (progn + (setq b (make-marker) + e (make-marker) + egg-mark-list (cons (cons b e) egg-mark-list)) + (set-marker b beg) + (set-marker e end)))))) (defun egg-redraw-face () (let ((inhibit-read-only t) + (inhibit-point-motion-hooks t) (egg-suppress-marking t) (list egg-mark-list) + (org-buffer (current-buffer)) + (org-point (point)) mb me b e p) (setq egg-mark-list nil) (remove-hook 'post-command-hook 'egg-redraw-face) - (save-excursion - (while list - (setq mb (car (car list)) - me (cdr (car list)) - list (cdr list)) - (when (marker-buffer mb) - (set-buffer (marker-buffer mb)) - (let ((before-change-functions nil) (after-change-functions nil)) - (save-restriction - (widen) - (setq b (max mb (point-min)) - e (min me (point-max))) - (set-marker mb nil) - (set-marker me nil) - (while (< b e) - (if (null (get-text-property b 'egg-face)) - (setq b (next-single-property-change b 'egg-face nil e))) - (setq p (next-single-property-change b 'egg-face nil e)) - (put-text-property b p 'face (get-text-property b 'egg-face)) - (setq b p))))))))) + (while list + (setq mb (car (car list)) + me (cdr (car list)) + list (cdr list)) + (when (marker-buffer mb) + (set-buffer (marker-buffer mb)) + (let ((before-change-functions nil) (after-change-functions nil)) + (save-restriction + (widen) + (setq b (max mb (point-min)) + e (min me (point-max))) + (set-marker mb nil) + (set-marker me nil) + (while (< b e) + (if (null (get-text-property b 'egg-face)) + (setq b (next-single-property-change b 'egg-face nil e))) + (setq p (next-single-property-change b 'egg-face nil e)) + (when (< b p) + (goto-char b) + (setq str (buffer-substring b p)) + (delete-region b p) + (remove-text-properties 0 (- p b) '(face) str) + (insert str) + (setq b p))))))) + (set-buffer org-buffer) + (goto-char org-point))) (defun egg-hinshi-select () (menudiag-select ; Should generate at initialization time @@ -254,10 +269,6 @@ (defun egg-kill-emacs-function () (egg-finalize-backend)) -(if (not (fboundp 'set-buffer-multibyte)) -(defun set-buffer-multibyte (flag) - (setq enable-multibyte-characters flag))) - (provide 'egg) ;;; egg.el ends here diff --git a/egg/canna.el b/egg/canna.el index 736302d..80f04b6 100644 --- a/egg/canna.el +++ b/egg/canna.el @@ -29,7 +29,9 @@ ;;; Code: -(defconst canna-support-languages '("Japanese")) +(require 'egg-edep) + +(defconst canna-support-languages '(Japanese)) (eval-when-compile (defmacro CANNA-const (c) @@ -131,7 +133,7 @@ "hojomwd" "hojoswd" "bushu" - ("user") + "user" ) "Dictionary specification of CANNA.") diff --git a/egg/sj3.el b/egg/sj3.el index 33abd34..865f42b 100644 --- a/egg/sj3.el +++ b/egg/sj3.el @@ -29,7 +29,9 @@ ;;; Code: -(defconst sj3-support-languages '("Japanese")) +(require 'egg-edep) + +(defconst sj3-support-languages '(Japanese)) (eval-when-compile (defmacro SJ3-const (c) diff --git a/egg/wnn.el b/egg/wnn.el index 4ada308..1e8330d 100644 --- a/egg/wnn.el +++ b/egg/wnn.el @@ -30,12 +30,14 @@ ;;; Commentary: ;;; Code: + +(require 'egg-edep) + (defgroup wnn nil "Wnn interface for Tamagotchy" :group 'egg) -(defconst wnn-support-languages - '("Japanese" "Chinese-GB" "Chinese-CNS" "Korean")) +(defconst wnn-support-languages '(Japanese Chinese-GB Chinese-CNS Korean)) (eval-when-compile (defmacro WNN-const (c) @@ -166,18 +168,17 @@ ;; The port number should be initialized from $WNNLIB/serverdefs by wnn-init (defconst wnn-server-info-list - ;; language locale server port stream coding-system hostname - '(("Japanese" "ja_JP" jserver wnn-jport "Wnn" fixed-euc-jp wnn-jserver) - ("Chinese-GB" "zh_CN" cserver wnn-cport "cWnn" fixed-euc-cn wnn-cserver) - ("Chinese-CNS" "zh_TW" tserver wnn-tport "tWnn" fixed-euc-tw wnn-tserver) - ("Korean" "ko_KR" kserver wnn-kport "kWnn" fixed-euc-kr wnn-kserver))) - -(defun wnn-get-server-info (lang) - (let (info) - (if (null lang) - (setq lang its-current-language)) - (if (setq info (assoc lang wnn-server-info-list)) info - (assoc "Japanese" wnn-server-info-list)))) + ;; language locale server port stream coding-system hostname + '((Japanese "ja_JP" jserver wnn-jport "Wnn" fixed-euc-jp wnn-jserver) + (Chinese-GB "zh_CN" cserver wnn-cport "cWnn" fixed-euc-cn wnn-cserver) + (Chinese-CNS "zh_TW" tserver wnn-tport "tWnn" fixed-euc-tw wnn-tserver) + (Korean "ko_KR" kserver wnn-kport "kWnn" fixed-euc-kr wnn-kserver))) + +(defsubst wnn-server-get-info (lang) + (assq (or lang its-current-language) wnn-server-info-list)) + +(defsubst wnn-server-language (info) + (car info)) (defsubst wnn-server-locale (info) (nth 1 info)) @@ -206,7 +207,7 @@ (defun wnn-start-conversion (yomi &optional language dic-set reverse) "Convert YOMI string to kanji, and enter conversion mode. Return the list of bunsetsu." - (let* ((server-info (wnn-get-server-info language)) + (let* ((server-info (wnn-server-get-info language)) (env (wnn-get-environment server-info dic-set reverse)) (result (wnnrpc-renbunsetsu-conversion env yomi (WNN-const BUN_SENTOU) ""))) @@ -358,29 +359,88 @@ Return the list of bunsetsu." (defvar wnn-sticky-environment-flag nil "*Flag which specifies sticky environment.") -(defun wnn-fini (lang) ; XXX - ; tamago-971009 version - ; argument LANG is still dummy - (if wnn-environments - (let ((l wnn-environments)) - (condition-case nil - (while l - (let ((env (car l))) - (if wnn-sticky-environment-flag - (wnnrpc-make-env-sticky env) - (wnnrpc-make-env-unsticky env)) - (wnnrpc-disconnect env) - (setq l (cdr l)))) - (error nil)) - (setq l wnn-environments) - (while l - (let ((proc (wnnenv-get-proc (car l)))) - (if (eq (process-status proc) 'open) - (progn - (wnnrpc-close proc) - (kill-buffer (process-buffer proc))) - (setq l (cdr l))))) - (setq wnn-environments nil)))) +(defmacro wnn-for-each-environment (lang env &rest body) + `(let* ((server-info (wnn-server-get-info ,lang)) + (server-type (wnn-server-type server-info)) + (env-list wnn-environments)) + (if server-type + (while env-list + (let ((,env (car env-list))) + ,@body) + (setq env-list (cdr env-list)))))) + +(defun wnn-fini (lang &optional save-only) + (let* ((server-info (wnn-server-get-info lang)) + (server-type (wnn-server-type server-info)) + (l wnn-environments) + new-env-list del-list env proc) + (if server-type + (progn + (message "%s $B$NIQEY>pJs!&<-=q>pJs$rB`Hr$7$F$$$^$9(B" + (wnn-server-stream-name server-info)) + (while l + (setq env (car l)) + (if (eq (wnnenv-get-server-type env) server-type) + (condition-case nil + (progn + (wnn-save-dictionaries env) + (if (null save-only) + (progn + (setq del-list (nconc del-list (list env))) + (if wnn-sticky-environment-flag + (wnnrpc-make-env-sticky env) + (wnnrpc-make-env-unsticky env)) + (wnnrpc-disconnect env)))) + (error nil)) + (setq new-env-list (nconc new-env-list (list env)))) + (setq l (cdr l))) + (message "%s $B$NIQEY>pJs!&<-=q>pJs$rB`Hr$7$^$7$?(B" + (wnn-server-stream-name server-info)) + (if (null save-only) + (progn + (setq proc (and del-list (wnnenv-get-proc (car del-list)))) + (if (and proc (eq (process-status proc) 'open)) + (progn + (wnnrpc-close proc) + (kill-buffer (process-buffer proc)))) + (setq wnn-environments new-env-list))))))) + +(defun wnn-close (lang) + (interactive (list (wnn-read-active-lang))) + (or (listp lang) + (setq lang (list lang))) + (while lang + (wnn-fini (car lang)) + (setq lang (cdr lang)))) + +(defun wnn-dictionary-save (lang) + (interactive (list (wnn-read-active-lang))) + (or (listp lang) + (setq lang (list lang))) + (while lang + (wnn-fini (car lang) t) + (setq lang (cdr lang)))) + +(defun wnn-read-active-lang () + (let ((completion-ignore-case t) + (env wnn-environments) + langs server server-list) + (while env + (setq server (wnnenv-get-server-type (car env)) + env (cdr env)) + (if (null (member server server-list)) + (setq server-list (cons server server-list)))) + (setq langs (delete nil + (mapcar (lambda (info) + (if (memq (wnn-server-type info) server-list) + (wnn-server-language info))) + wnn-server-info-list))) + (if (<= (length langs) 1) + langs + (setq langs (cons (cons "All" langs) + (mapcar (lambda (lang) (cons (symbol-name lang) lang)) + langs))) + (cdr (assoc (completing-read "language? " langs nil t) langs))))) ;; (defun wnn-comm-sentinel (proc reason) ; assume it is close @@ -426,7 +486,6 @@ Return the list of bunsetsu." (setq hostname (car hostname-list) hostname-list (cdr hostname-list)) (message msg-form server-type hostname) - (sit-for 0) (condition-case result (setq proc (open-network-stream (wnn-server-stream-name server-info) buf @@ -476,7 +535,7 @@ Return the list of bunsetsu." ["pubdic/symbol.dic" ("symbol.h") 1 nil t] ["pubdic/tankan.dic" nil 1 nil nil] ["pubdic/bio.dic" ("bio.h") 1 nil t] - ["gerodic/g-jinmei.dic" ("g-jinmei.h") 1 nil t] +; ["gerodic/g-jinmei.dic" ("g-jinmei.h") 1 nil t] ["wnncons/tankan2.dic" nil 1 nil nil] ["wnncons/tankan3.dic" nil 1 nil nil] [("ud") nil 5 t t]) @@ -493,7 +552,7 @@ Return the list of bunsetsu." ["pubdic/symbol.dic" ("symbol.h") 1 nil t] ["pubdic/tankan.dic" nil 1 nil nil] ["pubdic/bio.dic" ("bio.h") 1 nil t] - ["gerodic/g-jinmei.dic" ("g-jinmei.h") 1 nil t] +; ["gerodic/g-jinmei.dic" ("g-jinmei.h") 1 nil t] ["wnncons/tankan2.dic" nil 1 nil nil] ["wnncons/tankan3.dic" nil 1 nil nil] [("ud") nil 5 t t])) @@ -839,14 +898,41 @@ REVERSE specifies reverse conversion, if non nil." ;(defun wnn-set-conversion-mode () ; (jl-set-environment)) -(defun wnn-save-dictionaries () - (for-each-environment - js-dic-list - (while (< i count) - dic => id - js-file-write - hindo => id - js-file-write))) +(defsubst wnn-dicinfo-entry (info) (aref info 0)) +(defsubst wnn-dicinfo-id (info freq) (aref info (+ 1 freq))) +(defsubst wnn-dicinfo-mode (info freq) (aref info (+ 3 freq))) +(defsubst wnn-dicinfo-enable (info) (aref info 5)) +(defsubst wnn-dicinfo-nice (info) (aref info 6)) +(defsubst wnn-dicinfo-reverse (info) (aref info 7)) +(defsubst wnn-dicinfo-comment (info) (aref info 8)) +(defsubst wnn-dicinfo-name (info freq) (aref info (+ 9 freq))) +(defsubst wnn-dicinfo-passwd (info freq) (aref info (+ 11 freq))) +(defsubst wnn-dicinfo-type (info) (aref info 13)) +(defsubst wnn-dicinfo-words (info) (aref info 14)) +(defsubst wnn-dicinfo-local (info freq) (aref info (+ 15 freq))) + +(defun wnn-save-dictionaries (env) + (let ((dic-list (wnnrpc-get-dictionary-list-with-environment env)) + (result 0) info freq) + (while (and dic-list + (>= result 0)) + (setq info (car dic-list) + dic-list (cdr dic-list) + freq 0) + (while (<= freq 1) + (if (and (> (wnn-dicinfo-id info freq) 0) + (= (wnn-dicinfo-mode info freq) 0)) + (if (= (wnn-dicinfo-local info freq) 1) + (setq result (wnnrpc-write-file env + (wnn-dicinfo-id info freq) + (wnn-dicinfo-name info freq))) + (message "WNN: remote dictionary (%s) not supported yet" + (wnn-dicinfo-name info freq)) + (ding) + (sit-for 1))) + (if (< result 0) + (wnnrpc-disconnect env)) + (setq freq (1+ freq)))))) (defun wnn-version (proc) "Return version number string of WNN server." diff --git a/egg/wnnrpc.el b/egg/wnnrpc.el index 723453a..ee35e72 100644 --- a/egg/wnnrpc.el +++ b/egg/wnnrpc.el @@ -38,60 +38,60 @@ "Macro for WNN constants." (cond ((eq c 'JS_VERSION) 0) ((eq c 'JS_OPEN) 1) - ((eq c 'JS_CLOSE) 3) - ((eq c 'JS_CONNECT) 5) - ((eq c 'JS_DISCONNECT) 6) - ((eq c 'JS_ENV_EXIST) 7) - ((eq c 'JS_ENV_STICKY) 8) - ((eq c 'JS_ENV_UNSTICKY) 9) - ((eq c 'JS_KANREN) 17) - ((eq c 'JS_KANTAN_SHO) 18) - ((eq c 'JS_KANZEN_SHO) 19) - ((eq c 'JS_KANTAN_DAI) 20) - ((eq c 'JS_KANZEN_DAI) 21) - ((eq c 'JS_HINDO_SET) 24) - ((eq c 'JS_DIC_ADD) 33) - ((eq c 'JS_DIC_DELETE) 34) - ((eq c 'JS_DIC_USE) 35) - ((eq c 'JS_DIC_LIST) 36) - ((eq c 'JS_DIC_INFO) 37) - ((eq c 'JS_FUZOKUGO_SET) 41) - ((eq c 'JS_FUZOKUGO_GET) 48) - ((eq c 'JS_WORD_ADD) 49) - ((eq c 'JS_WORD_DELETE) 50) - ((eq c 'JS_WORD_SEARCH) 51) - ((eq c 'JS_WORD_SEARCH_BY_ENV) 52) - ((eq c 'JS_WORD_INFO) 53) - ((eq c 'JS_WORD_COMMENT_SET) 54) - ((eq c 'JS_PARAM_SET) 65) - ((eq c 'JS_PARAM_GET) 66) - ((eq c 'JS_MKDIR) 81) - ((eq c 'JS_ACCESS) 82) - ((eq c 'JS_WHO) 83) - ((eq c 'JS_ENV_LIST) 85) - ((eq c 'JS_FILE_LIST_ALL) 86) - ((eq c 'JS_DIC_LIST_ALL) 87) - ((eq c 'JS_FILE_READ) 97) - ((eq c 'JS_FILE_WRITE) 98) - ((eq c 'JS_FILE_SEND) 99) - ((eq c 'JS_FILE_RECEIVE) 100) - ((eq c 'JS_HINDO_FILE_CREATE) 101) - ((eq c 'JS_DIC_FILE_CREATE) 102) - ((eq c 'JS_FILE_REMOVE) 103) - ((eq c 'JS_FILE_LIST) 104) - ((eq c 'JS_FILE_INFO) 105) - ((eq c 'JS_FILE_LOADED) 106) - ((eq c 'JS_FILE_LOADED_LOCAL) 107) - ((eq c 'JS_FILE_DISCARD) 108) - ((eq c 'JS_FILE_COMMENT_SET) 109) - ((eq c 'JS_FILE_PASSWORD) 110) - ((eq c 'JS_FILE_STAT) 111) - ((eq c 'JS_KILL) 112) - ((eq c 'JS_HINSI_LIST) 114) - ((eq c 'JS_HINSI_NAME) 115) - ((eq c 'JS_HINSI_NUMBER) 116) - ((eq c 'JS_HINSI_DICTS) 117) - ((eq c 'JS_HINSI_TABLE_SET) 118) + ((eq c 'JS_CLOSE) 3) + ((eq c 'JS_CONNECT) 5) + ((eq c 'JS_DISCONNECT) 6) + ((eq c 'JS_ENV_EXIST) 7) + ((eq c 'JS_ENV_STICKY) 8) + ((eq c 'JS_ENV_UNSTICKY) 9) + ((eq c 'JS_KANREN) 17) + ((eq c 'JS_KANTAN_SHO) 18) + ((eq c 'JS_KANZEN_SHO) 19) + ((eq c 'JS_KANTAN_DAI) 20) + ((eq c 'JS_KANZEN_DAI) 21) + ((eq c 'JS_HINDO_SET) 24) + ((eq c 'JS_DIC_ADD) 33) + ((eq c 'JS_DIC_DELETE) 34) + ((eq c 'JS_DIC_USE) 35) + ((eq c 'JS_DIC_LIST) 36) + ((eq c 'JS_DIC_INFO) 37) + ((eq c 'JS_FUZOKUGO_SET) 41) + ((eq c 'JS_FUZOKUGO_GET) 48) + ((eq c 'JS_WORD_ADD) 49) + ((eq c 'JS_WORD_DELETE) 50) + ((eq c 'JS_WORD_SEARCH) 51) + ((eq c 'JS_WORD_SEARCH_BY_ENV) 52) + ((eq c 'JS_WORD_INFO) 53) + ((eq c 'JS_WORD_COMMENT_SET) 54) + ((eq c 'JS_PARAM_SET) 65) + ((eq c 'JS_PARAM_GET) 66) + ((eq c 'JS_MKDIR) 81) + ((eq c 'JS_ACCESS) 82) + ((eq c 'JS_WHO) 83) + ((eq c 'JS_ENV_LIST) 85) + ((eq c 'JS_FILE_LIST_ALL) 86) + ((eq c 'JS_DIC_LIST_ALL) 87) + ((eq c 'JS_FILE_READ) 97) + ((eq c 'JS_FILE_WRITE) 98) + ((eq c 'JS_FILE_SEND) 99) + ((eq c 'JS_FILE_RECEIVE) 100) + ((eq c 'JS_HINDO_FILE_CREATE) 101) + ((eq c 'JS_DIC_FILE_CREATE) 102) + ((eq c 'JS_FILE_REMOVE) 103) + ((eq c 'JS_FILE_LIST) 104) + ((eq c 'JS_FILE_INFO) 105) + ((eq c 'JS_FILE_LOADED) 106) + ((eq c 'JS_FILE_LOADED_LOCAL) 107) + ((eq c 'JS_FILE_DISCARD) 108) + ((eq c 'JS_FILE_COMMENT_SET) 109) + ((eq c 'JS_FILE_PASSWORD) 110) + ((eq c 'JS_FILE_STAT) 111) + ((eq c 'JS_KILL) 112) + ((eq c 'JS_HINSI_LIST) 114) + ((eq c 'JS_HINSI_NAME) 115) + ((eq c 'JS_HINSI_NUMBER) 116) + ((eq c 'JS_HINSI_DICTS) 117) + ((eq c 'JS_HINSI_TABLE_SET) 118) ((eq c 'JLIB_VERSION) 16387) ; 0x4003 @@ -106,7 +106,7 @@ ((eq c 'WNN_MAX_FILE_OF_AN_ENV) 60)))) (defconst wnnrpc-error-message - '(("Japanese" . + '((Japanese . [ nil "$B%U%!%$%k$,B8:_$7$^$;$s(B" @@ -226,7 +226,7 @@ "$B<-=q$KIQEY%U%!%$%k$,$D$$$F$$$^$;$s(B" "$B%Q%9%o!<%I$N%U%!%$%k$,:n@.=PMh$^$;$s(B" ]) - ("Chinese-GB" . + (Chinese-GB . [ nil "$AND<~2;4fTZ(B" @@ -346,7 +346,7 @@ "$AWV5d5DF56HND<~C;SP(B" "password$A5DND<~C;SP44=(3v@4(B" ]) - ("Chinese-CNS" . + (Chinese-CNS . [ nil "$(GEFG5DbGtGc(B" @@ -466,7 +466,7 @@ "$(GGsL(N{s"PyEFG5JtH4(B" "password$(GN{EFG5JtH4^6PzExKt(B" ]) - ("Korean" . + (Korean . [ nil "$(CH-@O@L(B $(CA8@gGOAv(B $(C>J=@4O4Y(B" @@ -590,10 +590,11 @@ (defun wnnrpc-get-error-message (errno) "Return error message string specified by ERRNO." - (let ((msg (or (assoc egg-default-language wnnrpc-error-message) - (assoc its-current-language wnnrpc-error-message) - (assoc "Japanese" wnnrpc-error-message)))) - (or (aref (cdr msg) errno) (format "#%d" errno)))) + (let ((msg (cdr (or (assoc egg-default-language wnnrpc-error-message) + (assoc its-current-language wnnrpc-error-message) + (assoc 'Japanese wnnrpc-error-message))))) + (or (and (< errno (length msg)) (aref msg errno)) + (format "#%d" errno)))) (defmacro wnnrpc-call-with-environment (e vlist send-expr &rest receive-exprs) (let ((v (append @@ -1353,7 +1354,7 @@ HINSHI and FUZOKU are information of preceding bunsetsu." (concat (system-name) "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0") 0 16))) (comm-call-with-proc proc (result) - (comm-format (u U U U s) (wnn-const JS_FILE_LOADED_LOCAL) + (comm-format (u U U U s) (wnn-const JS_FILE_LOADED_LOCAL) time dev inode padded-hostname) (comm-unpack (u) result) result)))) diff --git a/its-keydef.el b/its-keydef.el index 9372491..5e3a835 100644 --- a/its-keydef.el +++ b/its-keydef.el @@ -5,7 +5,7 @@ (make-variable-buffer-local 'its-zhuyin) (put 'its-zhuyin 'permanent-local t) -(eval-when (eval compile) +(eval-and-compile (defun its-make-select-func (key1 key2 func file map &optional zhuyin) (setq func (intern (concat "its-select-" (symbol-name func))) file (intern (concat "its/" (symbol-name file))) @@ -23,31 +23,45 @@ (its-put-cursor t)) ((egg-get-bunsetsu-info (point)) (egg-exit-conversion))) - (setq its-current-select-func ',func) - (setq its-current-map ,map) - (if (its-get-language its-current-map) - (setq its-current-language (its-get-language its-current-map))) + (setq its-current-select-func ',func + its-current-map ',map) + (if (its-get-language ,map) + (setq its-current-language (its-get-language ,map))) ,(if zhuyin `(setq its-zhuyin ,(eq zhuyin 'T))) (if (null mode-line-unchange) (its-set-mode-line-title))))) - `(define-key map - (if fence - ,(concat "\e" key2) - ,(concat "\C-x\C-m" key1)) - ',func)))) + `(,func ,(concat "\C-x\C-m" key1) ,(concat "\e" key2))))) (defmacro its-do-list-make-select-func (list) - (eval-when (eval compile) - (let (funcs keydefs pair) - (while list - (setq pair (apply 'its-make-select-func (car list))) - (setq funcs (cons (car pair) funcs) - keydefs (cons (cdr pair) keydefs)) - (setq list (cdr list))) - `(progn - ,@funcs - (defun its-define-select-keys (map &optional fence) - ,@keydefs))))) + (let (funcs keydefs pair) + (while list + (setq pair (apply 'its-make-select-func (car list)) + funcs (cons (car pair) funcs) + keydefs (cons (cdr pair) keydefs) + list (cdr list))) + `(progn + ,@funcs + (defvar its-define-select-key-list ',keydefs)))) + +(defmacro its-add-select-funcs (list) + (let (funcs keydefs pair) + (while list + (setq pair (apply 'its-make-select-func (car list)) + funcs (cons (car pair) funcs) + keydefs (cons (cdr pair) keydefs) + list (cdr list))) + `(progn + ,@funcs + (setq its-define-select-key-list + (append ',keydefs its-define-select-key-list))))) + +(defun its-define-select-keys (map &optional fence) + (let ((key-list its-define-select-key-list)) + (while key-list + (define-key map (nth 1 (car key-list)) (car (car key-list))) + (if fence + (define-key map (nth 2 (car key-list)) (car (car key-list)))) + (setq key-list (cdr key-list))))) (its-do-list-make-select-func (("Q" "Q" upcase ascii up) diff --git a/its.el b/its.el index 4aff32b..b01b06b 100644 --- a/its.el +++ b/its.el @@ -31,6 +31,7 @@ ;;; Code: (require 'cl) +(require 'egg-edep) (defvar its-current-map nil) (make-variable-buffer-local 'its-current-map) @@ -187,8 +188,7 @@ ;; ;; -(eval-when (eval load compile) - (require 'its-keydef)) +(require 'its-keydef) (defvar its-mode-map (let ((map (make-sparse-keymap)) @@ -228,13 +228,15 @@ (define-key map "\M-k" 'its-katakana) (define-key map "\M-<" 'its-hankaku) (define-key map "\M->" 'its-zenkaku) - (its-define-select-keys map t) map) "Keymap for ITS mode.") +(fset 'its-mode-map its-mode-map) + (defvar its-fence-open "|" "*$B%U%'%s%9$N;OE@$r<($9J8;zNs(B (1 $BJ8;z0J>e(B)") (defvar its-fence-close "|" "*$B%U%'%s%9$N=*E@$r<($9J8;zNs(B (1 $BJ8;z0J>e(B)") (defvar its-fence-face nil "*$B%U%'%s%9I=<($KMQ$$$k(B face $B$^$?$O(B nil") +(defvar its-fence-invisible nil) (defconst its-setup-fence-before-insert-SYL nil) @@ -245,11 +247,9 @@ (if face (cdr face) its-fence-face))) (defun its-put-cursor (cursor) - (let ((p (point)) - (map (copy-keymap its-mode-map))) - (its-define-select-keys map) + (let ((p (point))) (insert "!") - (add-text-properties p (point) (list 'local-map map + (add-text-properties p (point) (list 'local-map 'its-mode-map 'read-only t 'invisible t 'intangible 'its-part-2 @@ -275,17 +275,18 @@ (let ((open-props '(its-start t intangible its-part-1)) (close-props '(rear-nonsticky t its-end t intangible its-part-2)) (p (point)) p1) - ;; Put open-fence before inhibit-read-only to detect read-nly + ;; Put open-fence before inhibit-read-only to detect read-only (insert its-fence-open) (let ((inhibit-read-only t)) (setq p1 (point)) (add-text-properties p p1 open-props) (insert its-fence-close) (add-text-properties p1 (point) close-props) - (if its-fence-face + (if its-fence-invisible (put-text-property p (point) 'invisible t)) (put-text-property p (point) 'read-only t) (goto-char p1) + (its-define-select-keys its-mode-map t) (its-put-cursor t)))) (defun its-start (key) @@ -318,7 +319,7 @@ (its-input syl key))) (defun its-initial-ISYL () - (its-get-start-state its-current-map)) + (its-get-start-state (symbol-value its-current-map))) (defun its-make-VSYL (keyseq) (cons keyseq (length keyseq))) @@ -516,19 +517,21 @@ cursor) (if (null syl) (setq syl (its-initial-ISYL))) - (while (and syl (< i len)) - (setq cursor (its-state-machine syl (aref keyseq i) emit)) - (cond - ((eq cursor 'its-keyseq-test-failed) - (setq syl nil)) - (cursor - (setq syl (its-initial-ISYL))) - (t - its-latest-SYL)) - (setq i (1+ i))) - (if (and syl eol) - (setq cursor (its-state-machine syl -1 emit))) - (not (eq cursor 'its-keyseq-test-failed)))) + (if (numberp (cdr syl)) + nil + (while (and syl (< i len)) + (setq cursor (its-state-machine syl (aref keyseq i) emit)) + (cond + ((eq cursor 'its-keyseq-test-failed) + (setq syl nil)) + (cursor + (setq syl (its-initial-ISYL))) + (t + its-latest-SYL)) + (setq i (1+ i))) + (if (and syl eol) + (setq cursor (its-state-machine syl -1 emit))) + (not (eq cursor 'its-keyseq-test-failed))))) ;;; ;;; Name --> map @@ -551,9 +554,10 @@ (defmacro define-its-state-machine (map name indicator lang doc &rest exprs) `(progn (eval-when (eval compile) - (let ((its-current-map (its-new-map ,name ,indicator ,lang))) + (let ((its-current-map 'its-temporaly-map) + (its-temporaly-map (its-new-map ,name ,indicator ,lang))) ,@exprs - (setq ,map its-current-map))) + (setq ,map its-temporaly-map))) (define-its-compiled-map ,map ,doc))) (defmacro define-its-compiled-map (map doc) @@ -561,9 +565,10 @@ (defmacro define-its-state-machine-append (map &rest exprs) (append - `(let ((its-current-map ,map))) + `(let ((its-current-map 'its-temporaly-map) + (its-temporaly-map ,map))) exprs - (list `(setq ,map its-current-map)))) + (list `(setq ,map its-temporaly-map)))) ;; ;; Construct State Machine @@ -583,7 +588,8 @@ Return last state." (defun its-goto-state (input &optional initial-state build-if-none) (let ((len (length input)) (i 0) - (state (or initial-state (its-get-start-state its-current-map)))) + (state (or initial-state + (its-get-start-state (symbol-value its-current-map))))) (while (< i len) (setq state (or (its-get-next-state state (aref input i)) @@ -638,6 +644,22 @@ Return last state." t)) ;;; +(defun its-set-part-1 (beg end) + (let ((inhibit-point-motion-hooks t) + (str (buffer-substring beg end))) + (goto-char beg) + (delete-region beg end) + (put-text-property 0 (- end beg) 'intangible 'its-part-1 str) + (insert str))) + +(defun its-set-part-2 (beg end) + (let ((inhibit-point-motion-hooks t) + (str (buffer-substring beg end))) + (goto-char beg) + (delete-region beg end) + (put-text-property 0 (- end beg) 'intangible 'its-part-2 str) + (insert str))) + (defun its-beginning-of-input-buffer () (interactive) (let ((inhibit-read-only t)) @@ -645,7 +667,7 @@ Return last state." (if (not (get-text-property (1- (point)) 'its-start)) (let ((begpos (previous-single-property-change (point) 'its-start))) ;; Make SYLs have property of "part 2" - (put-text-property begpos (point) 'intangible 'its-part-2) + (its-set-part-2 begpos (point)) (goto-char begpos))) (its-put-cursor t))) @@ -656,7 +678,7 @@ Return last state." (if (not (get-text-property (point) 'its-end)) (let ((endpos (next-single-property-change (point) 'its-end))) ;; Make SYLs have property of "part 1" - (put-text-property (point) endpos 'intangible 'its-part-1) + (its-set-part-1 (point) endpos) (goto-char endpos))) (its-put-cursor t))) @@ -690,7 +712,7 @@ Return last state." (let ((inhibit-read-only t)) (delete-region (if (get-text-property (1- (point)) 'its-start) (point) - (previous-single-property-change (1- (point)) 'its-start)) + (previous-single-property-change (point) 'its-start)) (if (get-text-property (point) 'its-end) (point) (next-single-property-change (point) 'its-end))) @@ -711,7 +733,7 @@ Return last state." (setq syl (get-text-property (1- p) 'its-syl)) (setq n (1- n))) ;; Make SYLs have property of "part 2" - (put-text-property p old-point 'intangible 'its-part-2) + (its-set-part-2 p old-point) (goto-char p) (its-put-cursor t) (if (> n 0) @@ -731,7 +753,7 @@ Return last state." (setq syl (get-text-property p 'its-syl)) (setq n (1- n))) ;; Make SYLs have property of "part 1" - (put-text-property old-point p 'intangible 'its-part-1) + (its-set-part-1 old-point p) (goto-char p) (its-put-cursor t) (if (> n 0) @@ -799,55 +821,53 @@ Return last state." ;; TODO: killflag (defun its-delete-backward-within-SYL (syl n killflag) - (let* ((keyseq (its-get-keyseq-syl syl)) - (len (length keyseq)) - (p (- (point) (length (its-get-output syl)))) - (its-current-map (get-text-property (1- (point)) 'its-map)) - (its-current-language (get-text-property (1- (point)) 'egg-lang)) - back pp) - (if (< n 0) - (signal 'args-out-of-range (list (- (point) n) (point)))) - (if its-delete-by-keystroke - (while (null (or (eq p pp) (its-concrete-DSYL-p syl))) - (setq pp p) - (while (and (setq syl (get-text-property (1- p) 'its-syl)) - (its-DSYL-with-back-p syl) - (<= (setq back (- (its-get-kst/t syl))) len) - (> back (- len n)) - (equal (substring (its-get-keyseq syl) (- back)) - (substring keyseq 0 back))) - (setq keyseq (concat (its-get-keyseq-syl syl) keyseq) - len (length keyseq) - p (- p (length (its-get-output syl))))) - (if (and (eq p pp) syl (> n len)) - (setq n (- n len) - keyseq (its-get-keyseq-syl syl) - len (length keyseq) - p (- p (length (its-get-output syl)))))) - (if (and (> n len) (its-concrete-DSYL-p syl)) - (setq len 1))) - (if (> n len) - (setq n (- n len) - len 0)) - (while (and (> n len) (setq syl (get-text-property (1- p) 'its-syl))) - (setq n (1- n) - p (- p (length (its-get-output syl))))) - (if (> n len) - (signal 'beginning-of-buffer nil)) - (delete-region p (point)) - (cond - ((> len n) - (its-state-machine-keyseq (substring keyseq 0 (- len n)) - 'its-buffer-ins/del-SYL)) - ;; Check if empty - ((and (get-text-property (1- (point)) 'its-start) - (get-text-property (1+ (point)) 'its-end)) - (its-exit-mode-internal)) - ((and its-delete-by-keystroke - (null (its-concrete-DSYL-p (get-text-property (1- p) 'its-syl)))) - (its-set-cursor-status 'its-cursor)) - (t - (its-set-cursor-status t))))) + (if (let* ((keyseq (its-get-keyseq-syl syl)) + (len (length keyseq)) + (p (- (point) (length (its-get-output syl)))) + (its-current-map (get-text-property (1- (point)) 'its-map)) + (its-current-language (get-text-property (1- (point)) 'egg-lang)) + back pp) + (if (< n 0) + (signal 'args-out-of-range (list (- (point) n) (point)))) + (if its-delete-by-keystroke + (while (null (or (eq p pp) (its-concrete-DSYL-p syl))) + (setq pp p) + (while (and (setq syl (get-text-property (1- p) 'its-syl)) + (its-DSYL-with-back-p syl) + (<= (setq back (- (its-get-kst/t syl))) len) + (> back (- len n)) + (equal (substring (its-get-keyseq syl) (- back)) + (substring keyseq 0 back))) + (setq keyseq (concat (its-get-keyseq-syl syl) keyseq) + len (length keyseq) + p (- p (length (its-get-output syl))))) + (if (and (eq p pp) syl (> n len)) + (setq n (- n len) + keyseq (its-get-keyseq-syl syl) + len (length keyseq) + p (- p (length (its-get-output syl)))))) + (if (and (> n len) (its-concrete-DSYL-p syl)) + (setq len 1))) + (if (> n len) + (setq n (- n len) + len 0)) + (while (and (> n len) (setq syl (get-text-property (1- p) 'its-syl))) + (setq n (1- n) + p (- p (length (its-get-output syl))))) + (if (> n len) + (signal 'beginning-of-buffer nil)) + (delete-region p (point)) + (if (> len n) + (its-state-machine-keyseq (substring keyseq 0 (- len n)) + 'its-buffer-ins/del-SYL) + (its-set-cursor-status + (if (or (null its-delete-by-keystroke) + (its-concrete-DSYL-p (get-text-property (1- p) 'its-syl))) + t + 'its-cursor))) + (and (get-text-property (1- (point)) 'its-start) + (get-text-property (1+ (point)) 'its-end))) + (its-exit-mode-internal))) (defun its-transpose-chars (n) (interactive "p") @@ -918,29 +938,39 @@ Return last state." (defun its-setup-yanked-portion (start end) (let ((yank-before (eq (point) end)) - (max-sisheng (make-char 'chinese-sisheng 127)) - p syl lang) - (remove-text-properties start end '(intangible nil)) - (egg-separate-languages start end t) - (goto-char start) - (while (< (point) end) - (setq p (point) - lang (get-text-property p 'egg-lang)) + syl lang source no-prop-source len i j l) + (setq source (buffer-substring start end) + no-prop-source (buffer-substring-no-properties start end) + len (length source)) + (remove-text-properties 0 len '(intangible nil) source) + (egg-separate-languages source (get-text-property (1- start) 'egg-lang)) + (setq i 0) + (while (< i len) + (setq lang (get-text-property i 'egg-lang source)) (if (and - (or (equal lang "Chinese-GB") (equal lang "Chinese-CNS")) - (<= (following-char) max-sisheng) - (setq len (egg-chinese-syllable (buffer-substring (point) end)))) - (goto-char (+ (point) len)) - (forward-char)) - (setq syl (buffer-substring-no-properties p (point))) - (put-text-property p (point) 'its-syl (cons syl syl)) - (if its-fence-face - (let ((its-current-language (get-text-property p 'egg-lang))) - (egg-set-face p (point) (its-get-fence-face))))) + (or (eq lang 'Chinese-GB) (eq lang 'Chinese-CNS)) + (setq l (egg-chinese-syllable source i))) + (setq j (+ i l)) + (setq j (+ i (egg-char-bytes (egg-string-to-char-at source i))))) + (setq syl (substring no-prop-source i j)) + (put-text-property i j 'its-syl (cons syl syl) source) + (setq i j)) + (if its-fence-face + (let (its-current-language) + (setq i 0) + (while (< i len) + (setq j (egg-next-single-property-change i 'egg-lang source len) + its-current-language (get-text-property i 'egg-lang source)) + (egg-set-face i j (its-get-fence-face) source) + (setq i j)))) + (delete-region start end) (if yank-before - (add-text-properties start end '(read-only t intangible its-part-1)) - (add-text-properties start end '(read-only t intangible its-part-2)) + (progn + (add-text-properties 0 len '(read-only t intangible its-part-1) source) + (insert source)) (delete-region (point) (1+ (point))) + (add-text-properties 0 len '(read-only t intangible its-part-2) source) + (insert source) (goto-char start) (its-put-cursor t)))) @@ -949,7 +979,8 @@ Return last state." (let ((cursor (get-text-property (point) 'its-cursor))) ;; key "END" (if (null cursor) - (its-input (get-text-property (1- (point)) 'its-syl) -1)) + (let ((its-current-language (get-text-property (1- (point)) 'egg-lang))) + (its-input (get-text-property (1- (point)) 'its-syl) -1))) (delete-region (point) (1+ (point))))) (defun its-exit-mode () @@ -981,7 +1012,10 @@ Return last state." (if proceed-to-conversion (egg-convert-region start end) ;; Remove all properties - (set-text-properties start end nil) + (goto-char start) + (setq s (buffer-substring-no-properties start end)) + (delete-region start end) + (insert s) (egg-do-auto-fill) (run-hooks 'input-method-after-insert-chunk-hook)))) @@ -1045,7 +1079,7 @@ Return last state." (insert its-translation-result))) (defun its-set-mode-line-title () - (let ((title (its-get-indicator its-current-map))) + (let ((title (its-get-indicator (symbol-value its-current-map)))) (setq current-input-method-title (if its-previous-select-func (concat "<" title ">") title)) @@ -1067,5 +1101,18 @@ Return last state." (setq its-previous-select-func nil) (its-set-mode-line-title))) +(defun its-mode () + "\\{its-mode-map}" + ;; dummy function to get docstring + ) + +(defun its-mode-help-command () + "Display documentation for ITS mode." + (interactive) + (with-output-to-temp-buffer "*Help*" + (princ "ITS mode:\n") + (princ (documentation 'its-mode)) + (help-setup-xref (cons #'help-xref-mode (current-buffer)) (interactive-p)))) + (provide 'its) ;;; its.el ends here. diff --git a/its/ascii.el b/its/ascii.el index 272a340..3595d17 100644 --- a/its/ascii.el +++ b/its/ascii.el @@ -35,7 +35,7 @@ (require 'its)) (define-its-state-machine its-up-map - "upcase" "aA" nil nil + "upcase" "aA" nil "Map for upcase input." (let ((i ? )) @@ -44,7 +44,7 @@ (setq i (1+ i))))) (define-its-state-machine its-down-map - "downcase" "aa" nil nil + "downcase" "aa" nil "Map for downcase input." (let ((i ? )) diff --git a/its/erpin.el b/its/erpin.el index db0665b..83b1d6f 100644 --- a/its/erpin.el +++ b/its/erpin.el @@ -2,11 +2,21 @@ (require 'its) (require 'cl)) -(defvar its-erpin-cn-enable-quanjioao-alphabet t "*Enable Quanjiao alphabet") +(defvar its-erpin-cn-enable-quanjioao-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Quanjiao alphabet") + (defvar its-erpin-cn-open-braket "$A!8(B" "*[") ; "$A#[(B" (defvar its-erpin-cn-close-braket "$A!9(B" "*]") ; "$A#](B" -(defvar its-erpin-tw-enable-quanjioao-alphabet t "*Enable Quanjiao alphabet") +(defvar its-erpin-tw-enable-quanjioao-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Quanjiao alphabet") + (defvar its-erpin-tw-open-braket "$(G!V(B" "*[") ; "$(G!b(B " (defvar its-erpin-tw-close-braket "$(G!W(B" "*]") ; "$(G!c(B" @@ -153,7 +163,7 @@ (its-defrule "on4" "(0?@(B")))) (define-its-state-machine its-erpin-cn-map - "erpin-cn" "$A6~(BG" "Chinese-GB" + "erpin-cn" "$A6~(BG" 'Chinese-GB "Map for Erpin input. (Chinese-GB)" (defconst its-quanjiao-escape "Z") @@ -227,7 +237,7 @@ (its-defrule "!" "$A#!(B")) (define-its-state-machine its-erpin-tw-map - "erpin-tw" "$(GD((BC" "Chinese-CNS" + "erpin-tw" "$(GD((BC" 'Chinese-CNS "Map for Erpin input." (defconst its-quanjiao-escape "Z") @@ -268,11 +278,11 @@ (" " . "$(G!!(B") ("!" . "$(G!*(B") ("@" . "$(G"i(B") ("#" . "$(G!l(B") ("$" . "$(G"c(B") ("%" . "$(G"h(B") ("^" . "$(G!T(B") ("&" . "$(G!m(B") ("*" . "$(G!n(B") ("(" . "$(G!>(B") (")" . "$(G!?(B") - ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"b(B") + ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"`(B") ("|" . "$(G"^(B") ("_" . "$(G"%(B") ("+" . "$(G"0(B") ("~" . "$(G"D(B") - ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$A#{(B") ("}" . "$(G!a(B") + ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$(G!B(B") ("}" . "$(G!C(B") (":" . "$(G!((B") (";" . "$(G!'(B") ("\"" . "$(G!i(B") ("'" . "$(G!k(B") - ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"a(B") + ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"_(B") ("," . "$(G!"(B") ("." . "$(G!%(B") ("a" . "$(G$[(B") ("b" . "$(G$\(B") ("c" . "$(G$](B") ("d" . "$(G$^(B") ("e" . "$(G$_(B") ("f" . "$(G$`(B") ("g" . "$(G$a(B") ("h" . "$(G$b(B") @@ -320,7 +330,7 @@ (its-defrule "=" "$A#=(B") (its-defrule "`" "$A#`(B") (its-defrule "\\" "$A#\(B") (its-defrule "|" "$A#|(B") (its-defrule "_" "$A#_(B") (its-defrule "+" "$A#+(B") - (its-defrule "{" "$A#{(B") (its-defrule "}" "$A#}(B") + (its-defrule "{" "$(G!B(B") (its-defrule "}" "$(G!C(B") (its-defrule "\"" "$A#"(B") (its-defrule "'" "$A#'(B") (its-defrule "<" "$A#<(B") (its-defrule ">" "$A#>(B")) (progn diff --git a/its/hangul.el b/its/hangul.el index 888c434..83a7556 100644 --- a/its/hangul.el +++ b/its/hangul.el @@ -31,57 +31,90 @@ (eval-when-compile (require 'its) + (require 'egg-edep) (require 'cl)) -(defvar its-hangul-enable-jeonkak-alphabet t "*Enable Jeonkak alphabet") +(defvar its-hangul-enable-jeonkak-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Jeonkak alphabet") + (defvar its-hangul-period ". " "*$(C#.(B") ; ". " "$(C#.(B" (defvar its-hangul-comma ", " "*$(C#,(B") ; ", " "$(C#,(B" (defvar its-hangul-open-bracket "$(C!8(B" "*[") ; "$(C#[(B" (defvar its-hangul-close-bracket "$(C!9(B" "*]") ; "$(C#](B" (eval-when-compile - (defconst its-hangul-kijuhynbmlopOP - (its-make-class+back "[kijuhynbmlopOP]" -2)) - (defconst its-hangul-kijuhynbmlopP - (its-make-class+back "[kijuhynbmlopP]" -2)) - (defconst its-hangul-kjhynmlop - (its-make-class+back "[kjhynmlop]" -2)) - - (defmacro its-defrule-hangul-2 (seq out &rest exprs) - `(let ((next-state (its-goto-state ,seq nil t))) - (its-set-output next-state ,out) - (its-make-next-state next-state -1 ,seq ,out) - (its-defrule-otherwise next-state ,out) - (let ((kijuhynbmlopOP (its-make-otherwise ,out its-hangul-kijuhynbmlopOP)) - (kijuhynbmlopP (its-make-otherwise ,out its-hangul-kijuhynbmlopP)) - (kjhynmlop (its-make-otherwise ,out its-hangul-kjhynmlop)) - (next-state next-state)) - ,@exprs))) - - (defmacro its-define-hangul (seq out otherwise &rest exprs) - `(let ((next-state (its-make-next-state ',next-state - (aref ,seq (1- (length ,seq))) - ,seq ,out))) - (its-set-output next-state ,out) - (its-make-next-state next-state -1 ,seq ,out) - (its-define-otherwise next-state - (its-make-otherwise ,out its-otherwise-back-one)) - (its-define-otherwise next-state ,otherwise) - (if ',exprs - (let ((kijuhynbmlopOP (its-make-otherwise ,out its-hangul-kijuhynbmlopOP)) - (kijuhynbmlopP (its-make-otherwise ,out its-hangul-kijuhynbmlopP)) - (kjhynmlop (its-make-otherwise ,out its-hangul-kjhynmlop))) - ,@exprs)))) - - (defun its-defrule-hangul (seq output) - (let ((state (its-goto-state seq nil t))) - (its-set-output state output) - (its-make-next-state state -1 seq output) - - (its-defrule-otherwise state output)))) + (defconst its-hangul-key-alist nil) + (defconst its-hangul-successor-list nil) + + (defsubst its-hangul-sequence-to-key (seq) + (concat (mapcar (lambda (c) + (cdr (assq c its-hangul-key-alist))) + (string-to-list seq)))) + + (defsubst its-hangul-make-successor (init keyseq) + (concat (if init (substring init 0 (1- (length init))) "[") + (list (aref keyseq 1)) + "]"))) + +(eval-when-compile + (defun its-define-hangul-key (key output) + (let ((out (string-to-char output)) + (state (its-goto-state key nil t))) + (setq its-hangul-key-alist (cons (cons out (string-to-char key)) + its-hangul-key-alist)) + (its-set-output state output) + (its-make-next-state state -1 (its-get-keyseq state) output) + (its-defrule-otherwise state output))) + + (defun its-define-hangul-successor-list (keyseq) + (let ((pair (assq (aref keyseq 0) its-hangul-successor-list))) + (if (null pair) + (setq its-hangul-successor-list + (cons (cons (aref keyseq 0) + (its-hangul-make-successor nil keyseq)) + its-hangul-successor-list)) + (if (null (string-match (cdr pair) keyseq 1)) + (setcdr pair (its-hangul-make-successor (cdr pair) keyseq)))))) + + (defun its-defrule-hangul (input output) + (let ((state (its-get-start-state (symbol-value its-current-map))) + (len (length input)) (i 0) + keyseq key prev-out out pair) + (while (< i len) + (setq key (aref input i) + next-state (its-get-next-state state key) + i (1+ i)) + (if next-state + (setq prev-out out + out (its-get-output next-state) + state next-state) + (setq keyseq (substring input 0 i) + prev-out out + out (if (= i len) output (concat out (list key))) + state (its-make-next-state state key keyseq out)) + (its-make-next-state state -1 keyseq out) + (its-defrule-otherwise state out))) + (if (and (= (egg-chars-in-period prev-out 0 (length prev-out)) 1) + (> (string-to-char prev-out) ?\377) + (setq pair (assq (aref keyseq (1- len)) + its-hangul-successor-list))) + (its-defrule-otherwise state prev-out (cdr pair) -2)))) + + (defmacro its-define-hangul (&rest list) + (cons 'progn + (mapcar (lambda (l) + (let ((case-fold-search nil) + (keyseq (its-hangul-sequence-to-key (car l)))) + (if (eq (length keyseq) 2) + (its-define-hangul-successor-list keyseq)) + (list 'its-defrule-hangul keyseq (nth 1 l)))) + list)))) (define-its-state-machine its-hangul-map - "hangul" "$(CGQ(B" "Korean" + "hangul" "$(CGQ(B" 'Korean "Map for Hangul input. (Korean)" (defconst its-jeonkak-escape "Z") @@ -90,2777 +123,2773 @@ (its-defrule-select-mode-temporally "B" downcase) (its-defrule-select-mode-temporally "J" jeonkak-downcase) - (its-defrule-hangul "r" "$(C$!(B") - (its-defrule-hangul "s" "$(C$$(B") - (its-defrule-hangul "e" "$(C$'(B") - (its-defrule-hangul "f" "$(C$)(B") - (its-defrule-hangul "a" "$(C$1(B") - (its-defrule-hangul "q" "$(C$2(B") - (its-defrule-hangul "t" "$(C$5(B") - (its-defrule-hangul "d" "$(C$7(B") - (its-defrule-hangul "w" "$(C$8(B") - (its-defrule-hangul "c" "$(C$:(B") - (its-defrule-hangul "z" "$(C$;(B") - (its-defrule-hangul "x" "$(C$<(B") - (its-defrule-hangul "v" "$(C$=(B") - (its-defrule-hangul "g" "$(C$>(B") - (its-defrule-hangul "R" "$(C$"(B") - (its-defrule-hangul "E" "$(C$((B") - (its-defrule-hangul "Q" "$(C$3(B") - (its-defrule-hangul "T" "$(C$6(B") - (its-defrule-hangul "W" "$(C$9(B") - - (its-defrule-hangul "k" "$(C$?(B") - (its-defrule-hangul "i" "$(C$A(B") - (its-defrule-hangul "j" "$(C$C(B") - (its-defrule-hangul "u" "$(C$E(B") - (its-defrule-hangul "h" "$(C$G(B") - (its-defrule-hangul "y" "$(C$K(B") - (its-defrule-hangul "n" "$(C$L(B") - (its-defrule-hangul "b" "$(C$P(B") - (its-defrule-hangul "m" "$(C$Q(B") - (its-defrule-hangul "l" "$(C$S(B") - (its-defrule-hangul "o" "$(C$@(B") - (its-defrule-hangul "p" "$(C$D(B") - (its-defrule-hangul "O" "$(C$B(B") - (its-defrule-hangul "P" "$(C$F(B") - - (its-defrule-hangul-2 "rk" "$(C0!(B" - (its-define-hangul "rkr" "$(C0"(B" kijuhynbmlopOP) - (its-define-hangul "rks" "$(C0#(B" kijuhynbmlopP) - (its-define-hangul "rke" "$(C0$(B" kijuhynbmlopP) - (its-define-hangul "rkf" "$(C0%(B" kijuhynbmlopP - (its-define-hangul "rkfr" "$(C0&(B" kijuhynbmlopOP) - (its-define-hangul "rkfa" "$(C0'(B" kijuhynbmlopP)) - (its-define-hangul "rka" "$(C0((B" kijuhynbmlopP) - (its-define-hangul "rkq" "$(C0)(B" kijuhynbmlopP - (its-define-hangul "rkqt" "$(C0*(B" kijuhynbmlopOP)) - (its-define-hangul "rkt" "$(C0+(B" kijuhynbmlopOP) - (its-define-hangul "rkT" "$(C0,(B" kjhynmlop) - (its-define-hangul "rkd" "$(C0-(B" kijuhynbmlopOP) - (its-define-hangul "rkw" "$(C0.(B" kijuhynbmlopOP) - (its-define-hangul "rkc" "$(C0/(B" kijuhynbmlopP) - (its-define-hangul "rkx" "$(C00(B" kijuhynbmlopP) - (its-define-hangul "rkv" "$(C01(B" kijuhynbmlopP) - (its-define-hangul "rkg" "$(C02(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ro" "$(C03(B" - (its-define-hangul "ror" "$(C04(B" kijuhynbmlopOP) - (its-define-hangul "ros" "$(C05(B" kijuhynbmlopP) - (its-define-hangul "rof" "$(C06(B" kijuhynbmlopP) - (its-define-hangul "roa" "$(C07(B" kijuhynbmlopP) - (its-define-hangul "roq" "$(C08(B" kijuhynbmlopP) - (its-define-hangul "rot" "$(C09(B" kijuhynbmlopOP) - (its-define-hangul "roT" "$(C0:(B" kjhynmlop) - (its-define-hangul "rod" "$(C0;(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ri" "$(C0<(B" - (its-define-hangul "rir" "$(C0=(B" kijuhynbmlopOP) - (its-define-hangul "ris" "$(C0>(B" kijuhynbmlopP) - (its-define-hangul "rif" "$(C0?(B" kijuhynbmlopP) - (its-define-hangul "rit" "$(C0@(B" kijuhynbmlopOP) - (its-define-hangul "rid" "$(C0A(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rO" "$(C0B(B" - (its-define-hangul "rOs" "$(C0C(B" kijuhynbmlopP) - (its-define-hangul "rOf" "$(C0D(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "rj" "$(C0E(B" - (its-define-hangul "rjr" "$(C0F(B" kijuhynbmlopOP) - (its-define-hangul "rjs" "$(C0G(B" kijuhynbmlopP) - (its-define-hangul "rje" "$(C0H(B" kijuhynbmlopP) - (its-define-hangul "rjf" "$(C0I(B" kijuhynbmlopP - (its-define-hangul "rjfa" "$(C0J(B" kijuhynbmlopP)) - (its-define-hangul "rja" "$(C0K(B" kijuhynbmlopP) - (its-define-hangul "rjq" "$(C0L(B" kijuhynbmlopP) - (its-define-hangul "rjt" "$(C0M(B" kijuhynbmlopOP) - (its-define-hangul "rjT" "$(C0N(B" kjhynmlop) - (its-define-hangul "rjd" "$(C0O(B" kijuhynbmlopOP) - (its-define-hangul "rjw" "$(C0P(B" kijuhynbmlopOP) - (its-define-hangul "rjx" "$(C0Q(B" kijuhynbmlopP) - (its-define-hangul "rjv" "$(C0R(B" kijuhynbmlopP) - (its-define-hangul "rjg" "$(C0S(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "rp" "$(C0T(B" - (its-define-hangul "rps" "$(C0U(B" kijuhynbmlopP) - (its-define-hangul "rpf" "$(C0V(B" kijuhynbmlopP) - (its-define-hangul "rpa" "$(C0W(B" kijuhynbmlopP) - (its-define-hangul "rpq" "$(C0X(B" kijuhynbmlopP) - (its-define-hangul "rpt" "$(C0Y(B" kijuhynbmlopOP) - (its-define-hangul "rpT" "$(C0Z(B" kjhynmlop) - (its-define-hangul "rpd" "$(C0[(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ru" "$(C0\(B" - (its-define-hangul "rur" "$(C0](B" kijuhynbmlopOP) - (its-define-hangul "ruR" "$(C0^(B" kijuhynbmlopP) - (its-define-hangul "rus" "$(C0_(B" kijuhynbmlopP) - (its-define-hangul "rue" "$(C0`(B" kijuhynbmlopP) - (its-define-hangul "ruf" "$(C0a(B" kijuhynbmlopP) - (its-define-hangul "rua" "$(C0b(B" kijuhynbmlopP) - (its-define-hangul "ruq" "$(C0c(B" kijuhynbmlopP) - (its-define-hangul "rut" "$(C0d(B" kijuhynbmlopOP) - (its-define-hangul "ruT" "$(C0e(B" kjhynmlop) - (its-define-hangul "rud" "$(C0f(B" kijuhynbmlopOP) - (its-define-hangul "rux" "$(C0g(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "rP" "$(C0h(B" - (its-define-hangul "rPs" "$(C0i(B" kijuhynbmlopP) - (its-define-hangul "rPf" "$(C0j(B" kijuhynbmlopP) - (its-define-hangul "rPq" "$(C0k(B" kijuhynbmlopP) - (its-define-hangul "rPt" "$(C0l(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rh" "$(C0m(B" - (its-define-hangul "rhr" "$(C0n(B" kijuhynbmlopOP) - (its-define-hangul "rhs" "$(C0o(B" kijuhynbmlopP) - (its-define-hangul "rhe" "$(C0p(B" kijuhynbmlopP) - (its-define-hangul "rhf" "$(C0q(B" kijuhynbmlopP - (its-define-hangul "rhfa" "$(C0r(B" kijuhynbmlopP) - (its-define-hangul "rhft" "$(C0s(B" kijuhynbmlopOP) - (its-define-hangul "rhfg" "$(C0t(B" kijuhynbmlopP)) - (its-define-hangul "rha" "$(C0u(B" kijuhynbmlopP) - (its-define-hangul "rhq" "$(C0v(B" kijuhynbmlopP) - (its-define-hangul "rht" "$(C0w(B" kijuhynbmlopOP) - (its-define-hangul "rhd" "$(C0x(B" kijuhynbmlopOP) - (its-define-hangul "rhw" "$(C0y(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rhk" "$(C0z(B" - (its-define-hangul "rhkr" "$(C0{(B" kijuhynbmlopOP) - (its-define-hangul "rhks" "$(C0|(B" kijuhynbmlopP) - (its-define-hangul "rhkf" "$(C0}(B" kijuhynbmlopP - (its-define-hangul "rhkfa" "$(C0~(B" kijuhynbmlopP)) - (its-define-hangul "rhka" "$(C1!(B" kijuhynbmlopP) - (its-define-hangul "rhkq" "$(C1"(B" kijuhynbmlopP) - (its-define-hangul "rhkt" "$(C1#(B" kijuhynbmlopOP) - (its-define-hangul "rhkd" "$(C1$(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rho" "$(C1%(B" - (its-define-hangul "rhos" "$(C1&(B" kijuhynbmlopP) - (its-define-hangul "rhof" "$(C1'(B" kijuhynbmlopP) - (its-define-hangul "rhoq" "$(C1((B" kijuhynbmlopP) - (its-define-hangul "rhoT" "$(C1)(B" kjhynmlop) - (its-define-hangul "rhod" "$(C1*(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rhl" "$(C1+(B" - (its-define-hangul "rhlr" "$(C1,(B" kijuhynbmlopOP) - (its-define-hangul "rhls" "$(C1-(B" kijuhynbmlopP) - (its-define-hangul "rhlf" "$(C1.(B" kijuhynbmlopP) - (its-define-hangul "rhla" "$(C1/(B" kijuhynbmlopP) - (its-define-hangul "rhlq" "$(C10(B" kijuhynbmlopP) - (its-define-hangul "rhlt" "$(C11(B" kijuhynbmlopOP) - (its-define-hangul "rhld" "$(C12(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ry" "$(C13(B" - (its-define-hangul "rys" "$(C14(B" kijuhynbmlopP) - (its-define-hangul "ryf" "$(C15(B" kijuhynbmlopP) - (its-define-hangul "ryq" "$(C16(B" kijuhynbmlopP) - (its-define-hangul "ryt" "$(C17(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rn" "$(C18(B" - (its-define-hangul "rnr" "$(C19(B" kijuhynbmlopOP) - (its-define-hangul "rns" "$(C1:(B" kijuhynbmlopP) - (its-define-hangul "rne" "$(C1;(B" kijuhynbmlopP) - (its-define-hangul "rnf" "$(C1<(B" kijuhynbmlopP - (its-define-hangul "rnfr" "$(C1=(B" kijuhynbmlopOP) - (its-define-hangul "rnfa" "$(C1>(B" kijuhynbmlopP) - (its-define-hangul "rnfg" "$(C1?(B" kijuhynbmlopP)) - (its-define-hangul "rna" "$(C1@(B" kijuhynbmlopP) - (its-define-hangul "rnq" "$(C1A(B" kijuhynbmlopP) - (its-define-hangul "rnt" "$(C1B(B" kijuhynbmlopOP) - (its-define-hangul "rnd" "$(C1C(B" kijuhynbmlopOP) - (its-define-hangul "rnw" "$(C1D(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rnj" "$(C1E(B" - (its-define-hangul "rnjr" "$(C1F(B" kijuhynbmlopOP) - (its-define-hangul "rnjs" "$(C1G(B" kijuhynbmlopP) - (its-define-hangul "rnjf" "$(C1H(B" kijuhynbmlopP) - (its-define-hangul "rnjT" "$(C1I(B" kjhynmlop) - (its-define-hangul "rnjd" "$(C1J(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rnp" "$(C1K(B" - (its-define-hangul "rnpt" "$(C1L(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rnl" "$(C1M(B" - (its-define-hangul "rnlr" "$(C1N(B" kijuhynbmlopOP) - (its-define-hangul "rnls" "$(C1O(B" kijuhynbmlopP) - (its-define-hangul "rnlf" "$(C1P(B" kijuhynbmlopP) - (its-define-hangul "rnla" "$(C1Q(B" kijuhynbmlopP) - (its-define-hangul "rnlq" "$(C1R(B" kijuhynbmlopP) - (its-define-hangul "rnlt" "$(C1S(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "rb" "$(C1T(B" - (its-define-hangul "rbs" "$(C1U(B" kijuhynbmlopP) - (its-define-hangul "rbf" "$(C1V(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "rm" "$(C1W(B" - (its-define-hangul "rmr" "$(C1X(B" kijuhynbmlopOP) - (its-define-hangul "rms" "$(C1Y(B" kijuhynbmlopP) - (its-define-hangul "rme" "$(C1Z(B" kijuhynbmlopP) - (its-define-hangul "rmf" "$(C1[(B" kijuhynbmlopP - (its-define-hangul "rmfr" "$(C1\(B" kijuhynbmlopOP)) - (its-define-hangul "rma" "$(C1](B" kijuhynbmlopP) - (its-define-hangul "rmq" "$(C1^(B" kijuhynbmlopP) - (its-define-hangul "rmt" "$(C1_(B" kijuhynbmlopOP) - (its-define-hangul "rmd" "$(C1`(B" kijuhynbmlopOP)) - - (its-defrule-hangul "rml" "$(C1a(B") - - (its-defrule-hangul-2 "rl" "$(C1b(B" - (its-define-hangul "rlr" "$(C1c(B" kijuhynbmlopOP) - (its-define-hangul "rls" "$(C1d(B" kijuhynbmlopP) - (its-define-hangul "rle" "$(C1e(B" kijuhynbmlopP) - (its-define-hangul "rlf" "$(C1f(B" kijuhynbmlopP - (its-define-hangul "rlfa" "$(C1g(B" kijuhynbmlopP)) - (its-define-hangul "rla" "$(C1h(B" kijuhynbmlopP) - (its-define-hangul "rlq" "$(C1i(B" kijuhynbmlopP) - (its-define-hangul "rlt" "$(C1j(B" kijuhynbmlopOP) - (its-define-hangul "rld" "$(C1k(B" kijuhynbmlopOP) - (its-define-hangul "rlw" "$(C1l(B" kijuhynbmlopOP) - (its-define-hangul "rlv" "$(C1m(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Rk" "$(C1n(B" - (its-define-hangul "Rkr" "$(C1o(B" kijuhynbmlopOP) - (its-define-hangul "RkR" "$(C1p(B" kijuhynbmlopP) - (its-define-hangul "Rks" "$(C1q(B" kijuhynbmlopP) - (its-define-hangul "Rkf" "$(C1r(B" kijuhynbmlopP - (its-define-hangul "Rkfa" "$(C1s(B" kijuhynbmlopP)) - (its-define-hangul "Rka" "$(C1t(B" kijuhynbmlopP) - (its-define-hangul "Rkq" "$(C1u(B" kijuhynbmlopP) - (its-define-hangul "Rkt" "$(C1v(B" kijuhynbmlopOP) - (its-define-hangul "RkT" "$(C1w(B" kjhynmlop) - (its-define-hangul "Rkd" "$(C1x(B" kijuhynbmlopOP) - (its-define-hangul "Rkx" "$(C1y(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Ro" "$(C1z(B" - (its-define-hangul "Ror" "$(C1{(B" kijuhynbmlopOP) - (its-define-hangul "Ros" "$(C1|(B" kijuhynbmlopP) - (its-define-hangul "Rof" "$(C1}(B" kijuhynbmlopP) - (its-define-hangul "Roa" "$(C1~(B" kijuhynbmlopP) - (its-define-hangul "Roq" "$(C2!(B" kijuhynbmlopP) - (its-define-hangul "Rot" "$(C2"(B" kijuhynbmlopOP) - (its-define-hangul "RoT" "$(C2#(B" kjhynmlop) - (its-define-hangul "Rod" "$(C2$(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Ri" "$(C2%(B" - (its-define-hangul "Rir" "$(C2&(B" kijuhynbmlopOP) - (its-define-hangul "Rif" "$(C2'(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Rj" "$(C2((B" - (its-define-hangul "Rjr" "$(C2)(B" kijuhynbmlopOP) - (its-define-hangul "RjR" "$(C2*(B" kijuhynbmlopP) - (its-define-hangul "Rjs" "$(C2+(B" kijuhynbmlopP) - (its-define-hangul "Rjf" "$(C2,(B" kijuhynbmlopP) - (its-define-hangul "Rja" "$(C2-(B" kijuhynbmlopP) - (its-define-hangul "Rjq" "$(C2.(B" kijuhynbmlopP) - (its-define-hangul "Rjt" "$(C2/(B" kijuhynbmlopOP) - (its-define-hangul "RjT" "$(C20(B" kjhynmlop) - (its-define-hangul "Rjd" "$(C21(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Rp" "$(C22(B" - (its-define-hangul "Rpr" "$(C23(B" kijuhynbmlopOP) - (its-define-hangul "Rps" "$(C24(B" kijuhynbmlopP) - (its-define-hangul "Rpa" "$(C25(B" kijuhynbmlopP) - (its-define-hangul "Rpt" "$(C26(B" kijuhynbmlopOP) - (its-define-hangul "Rpd" "$(C27(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Ru" "$(C28(B" - (its-define-hangul "Rus" "$(C29(B" kijuhynbmlopP) - (its-define-hangul "Ruf" "$(C2:(B" kijuhynbmlopP) - (its-define-hangul "Rut" "$(C2;(B" kijuhynbmlopOP) - (its-define-hangul "RuT" "$(C2<(B" kjhynmlop) - (its-define-hangul "Rux" "$(C2=(B" kijuhynbmlopP)) - - (its-defrule-hangul "RP" "$(C2>(B") - - (its-defrule-hangul-2 "Rh" "$(C2?(B" - (its-define-hangul "Rhr" "$(C2@(B" kijuhynbmlopOP) - (its-define-hangul "Rhs" "$(C2A(B" kijuhynbmlopP - (its-define-hangul "Rhsg" "$(C2B(B" kijuhynbmlopP)) - (its-define-hangul "Rhf" "$(C2C(B" kijuhynbmlopP) - (its-define-hangul "Rha" "$(C2D(B" kijuhynbmlopP) - (its-define-hangul "Rhq" "$(C2E(B" kijuhynbmlopP) - (its-define-hangul "Rht" "$(C2F(B" kijuhynbmlopOP) - (its-define-hangul "Rhd" "$(C2G(B" kijuhynbmlopOP) - (its-define-hangul "Rhw" "$(C2H(B" kijuhynbmlopOP) - (its-define-hangul "Rhc" "$(C2I(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Rhk" "$(C2J(B" - (its-define-hangul "Rhkr" "$(C2K(B" kijuhynbmlopOP) - (its-define-hangul "Rhkf" "$(C2L(B" kijuhynbmlopP) - (its-define-hangul "RhkT" "$(C2M(B" kjhynmlop) - (its-define-hangul "Rhkd" "$(C2N(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Rho" "$(C2O(B" - (its-define-hangul "Rhor" "$(C2P(B" kijuhynbmlopOP) - (its-define-hangul "Rhod" "$(C2Q(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Rhl" "$(C2R(B" - (its-define-hangul "Rhls" "$(C2S(B" kijuhynbmlopP) - (its-define-hangul "Rhlf" "$(C2T(B" kijuhynbmlopP) - (its-define-hangul "Rhla" "$(C2U(B" kijuhynbmlopP) - (its-define-hangul "Rhlq" "$(C2V(B" kijuhynbmlopP) - (its-define-hangul "Rhld" "$(C2W(B" kijuhynbmlopOP)) - - (its-defrule-hangul "Ry" "$(C2X(B") - - (its-defrule-hangul-2 "Rn" "$(C2Y(B" - (its-define-hangul "Rnr" "$(C2Z(B" kijuhynbmlopOP) - (its-define-hangul "Rns" "$(C2[(B" kijuhynbmlopP) - (its-define-hangul "Rnf" "$(C2\(B" kijuhynbmlopP - (its-define-hangul "Rnfg" "$(C2](B" kijuhynbmlopP)) - (its-define-hangul "Rna" "$(C2^(B" kijuhynbmlopP) - (its-define-hangul "Rnq" "$(C2_(B" kijuhynbmlopP) - (its-define-hangul "Rnt" "$(C2`(B" kijuhynbmlopOP) - (its-define-hangul "Rnd" "$(C2a(B" kijuhynbmlopOP) - (its-define-hangul "Rnw" "$(C2b(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Rnj" "$(C2c(B" - (its-define-hangul "Rnjf" "$(C2d(B" kijuhynbmlopP) - (its-define-hangul "RnjT" "$(C2e(B" kjhynmlop) - (its-define-hangul "Rnjd" "$(C2f(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Rnp" "$(C2g(B" - (its-define-hangul "Rnpr" "$(C2h(B" kijuhynbmlopOP) - (its-define-hangul "Rnps" "$(C2i(B" kijuhynbmlopP) - (its-define-hangul "Rnpf" "$(C2j(B" kijuhynbmlopP) - (its-define-hangul "Rnpa" "$(C2k(B" kijuhynbmlopP) - (its-define-hangul "Rnpq" "$(C2l(B" kijuhynbmlopP) - (its-define-hangul "RnpT" "$(C2m(B" kjhynmlop)) - - (its-defrule-hangul-2 "Rnl" "$(C2n(B" - (its-define-hangul "Rnls" "$(C2o(B" kijuhynbmlopP) - (its-define-hangul "Rnlf" "$(C2p(B" kijuhynbmlopP) - (its-define-hangul "Rnla" "$(C2q(B" kijuhynbmlopP) - (its-define-hangul "Rnlq" "$(C2r(B" kijuhynbmlopP)) - - (its-defrule-hangul "Rb" "$(C2s(B") - - (its-defrule-hangul-2 "Rm" "$(C2t(B" - (its-define-hangul "Rmr" "$(C2u(B" kijuhynbmlopOP) - (its-define-hangul "Rms" "$(C2v(B" kijuhynbmlopP - (its-define-hangul "Rmsg" "$(C2w(B" kijuhynbmlopP)) - (its-define-hangul "Rmf" "$(C2x(B" kijuhynbmlopP - (its-define-hangul "Rmfa" "$(C2y(B" kijuhynbmlopP) - (its-define-hangul "Rmfg" "$(C2z(B" kijuhynbmlopP)) - (its-define-hangul "Rma" "$(C2{(B" kijuhynbmlopP) - (its-define-hangul "Rmq" "$(C2|(B" kijuhynbmlopP) - (its-define-hangul "Rmt" "$(C2}(B" kijuhynbmlopOP) - (its-define-hangul "Rmd" "$(C2~(B" kijuhynbmlopOP) - (its-define-hangul "Rmx" "$(C3!(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Rl" "$(C3"(B" - (its-define-hangul "Rlr" "$(C3#(B" kijuhynbmlopOP) - (its-define-hangul "Rls" "$(C3$(B" kijuhynbmlopP) - (its-define-hangul "Rlf" "$(C3%(B" kijuhynbmlopP) - (its-define-hangul "Rla" "$(C3&(B" kijuhynbmlopP) - (its-define-hangul "Rlq" "$(C3'(B" kijuhynbmlopP) - (its-define-hangul "Rlt" "$(C3((B" kijuhynbmlopOP) - (its-define-hangul "Rld" "$(C3)(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "sk" "$(C3*(B" - (its-define-hangul "skr" "$(C3+(B" kijuhynbmlopOP) - (its-define-hangul "skR" "$(C3,(B" kijuhynbmlopP) - (its-define-hangul "sks" "$(C3-(B" kijuhynbmlopP) - (its-define-hangul "ske" "$(C3.(B" kijuhynbmlopP) - (its-define-hangul "skf" "$(C3/(B" kijuhynbmlopP - (its-define-hangul "skfr" "$(C30(B" kijuhynbmlopOP) - (its-define-hangul "skfa" "$(C31(B" kijuhynbmlopP)) - (its-define-hangul "ska" "$(C32(B" kijuhynbmlopP) - (its-define-hangul "skq" "$(C33(B" kijuhynbmlopP) - (its-define-hangul "skt" "$(C34(B" kijuhynbmlopOP) - (its-define-hangul "skT" "$(C35(B" kjhynmlop) - (its-define-hangul "skd" "$(C36(B" kijuhynbmlopOP) - (its-define-hangul "skw" "$(C37(B" kijuhynbmlopOP) - (its-define-hangul "skc" "$(C38(B" kijuhynbmlopP) - (its-define-hangul "skx" "$(C39(B" kijuhynbmlopP) - (its-define-hangul "skg" "$(C3:(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "so" "$(C3;(B" - (its-define-hangul "sor" "$(C3<(B" kijuhynbmlopOP) - (its-define-hangul "sos" "$(C3=(B" kijuhynbmlopP) - (its-define-hangul "sof" "$(C3>(B" kijuhynbmlopP) - (its-define-hangul "soa" "$(C3?(B" kijuhynbmlopP) - (its-define-hangul "soq" "$(C3@(B" kijuhynbmlopP) - (its-define-hangul "sot" "$(C3A(B" kijuhynbmlopOP) - (its-define-hangul "soT" "$(C3B(B" kjhynmlop) - (its-define-hangul "sod" "$(C3C(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "si" "$(C3D(B" - (its-define-hangul "sir" "$(C3E(B" kijuhynbmlopOP) - (its-define-hangul "sis" "$(C3F(B" kijuhynbmlopP) - (its-define-hangul "sif" "$(C3G(B" kijuhynbmlopP) - (its-define-hangul "sia" "$(C3H(B" kijuhynbmlopP) - (its-define-hangul "sid" "$(C3I(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "sj" "$(C3J(B" - (its-define-hangul "sjr" "$(C3K(B" kijuhynbmlopOP - (its-define-hangul "sjrt" "$(C3L(B" kijuhynbmlopOP)) - (its-define-hangul "sjs" "$(C3M(B" kijuhynbmlopP) - (its-define-hangul "sjf" "$(C3N(B" kijuhynbmlopP - (its-define-hangul "sjfa" "$(C3O(B" kijuhynbmlopP) - (its-define-hangul "sjfq" "$(C3P(B" kijuhynbmlopP)) - (its-define-hangul "sja" "$(C3Q(B" kijuhynbmlopP) - (its-define-hangul "sjq" "$(C3R(B" kijuhynbmlopP) - (its-define-hangul "sjt" "$(C3S(B" kijuhynbmlopOP) - (its-define-hangul "sjT" "$(C3T(B" kjhynmlop) - (its-define-hangul "sjd" "$(C3U(B" kijuhynbmlopOP) - (its-define-hangul "sjg" "$(C3V(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "sp" "$(C3W(B" - (its-define-hangul "spr" "$(C3X(B" kijuhynbmlopOP) - (its-define-hangul "sps" "$(C3Y(B" kijuhynbmlopP) - (its-define-hangul "spf" "$(C3Z(B" kijuhynbmlopP) - (its-define-hangul "spa" "$(C3[(B" kijuhynbmlopP) - (its-define-hangul "spq" "$(C3\(B" kijuhynbmlopP) - (its-define-hangul "spt" "$(C3](B" kijuhynbmlopOP) - (its-define-hangul "spT" "$(C3^(B" kjhynmlop) - (its-define-hangul "spd" "$(C3_(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "su" "$(C3`(B" - (its-define-hangul "sur" "$(C3a(B" kijuhynbmlopOP) - (its-define-hangul "sus" "$(C3b(B" kijuhynbmlopP) - (its-define-hangul "suf" "$(C3c(B" kijuhynbmlopP) - (its-define-hangul "sua" "$(C3d(B" kijuhynbmlopP) - (its-define-hangul "suq" "$(C3e(B" kijuhynbmlopP) - (its-define-hangul "suT" "$(C3f(B" kjhynmlop) - (its-define-hangul "sud" "$(C3g(B" kijuhynbmlopOP) - (its-define-hangul "suz" "$(C3h(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "sP" "$(C3i(B" - (its-define-hangul "sPs" "$(C3j(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "sh" "$(C3k(B" - (its-define-hangul "shr" "$(C3l(B" kijuhynbmlopOP) - (its-define-hangul "shs" "$(C3m(B" kijuhynbmlopP) - (its-define-hangul "shf" "$(C3n(B" kijuhynbmlopP - (its-define-hangul "shfa" "$(C3o(B" kijuhynbmlopP)) - (its-define-hangul "sha" "$(C3p(B" kijuhynbmlopP) - (its-define-hangul "shq" "$(C3q(B" kijuhynbmlopP) - (its-define-hangul "sht" "$(C3r(B" kijuhynbmlopOP) - (its-define-hangul "shd" "$(C3s(B" kijuhynbmlopOP) - (its-define-hangul "shv" "$(C3t(B" kijuhynbmlopP) - (its-define-hangul "shg" "$(C3u(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "shk" "$(C3v(B" - (its-define-hangul "shks" "$(C3w(B" kijuhynbmlopP) - (its-define-hangul "shkf" "$(C3x(B" kijuhynbmlopP) - (its-define-hangul "shkT" "$(C3y(B" kjhynmlop)) - - (its-defrule-hangul-2 "shl" "$(C3z(B" - (its-define-hangul "shls" "$(C3{(B" kijuhynbmlopP) - (its-define-hangul "shlf" "$(C3|(B" kijuhynbmlopP) - (its-define-hangul "shla" "$(C3}(B" kijuhynbmlopP) - (its-define-hangul "shlq" "$(C3~(B" kijuhynbmlopP) - (its-define-hangul "shlt" "$(C4!(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "sy" "$(C4"(B" - (its-define-hangul "syr" "$(C4#(B" kijuhynbmlopOP) - (its-define-hangul "sys" "$(C4$(B" kijuhynbmlopP) - (its-define-hangul "syf" "$(C4%(B" kijuhynbmlopP) - (its-define-hangul "syq" "$(C4&(B" kijuhynbmlopP) - (its-define-hangul "syt" "$(C4'(B" kijuhynbmlopOP) - (its-define-hangul "syd" "$(C4((B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "sn" "$(C4)(B" - (its-define-hangul "snr" "$(C4*(B" kijuhynbmlopOP) - (its-define-hangul "sns" "$(C4+(B" kijuhynbmlopP) - (its-define-hangul "sne" "$(C4,(B" kijuhynbmlopP) - (its-define-hangul "snf" "$(C4-(B" kijuhynbmlopP) - (its-define-hangul "sna" "$(C4.(B" kijuhynbmlopP) - (its-define-hangul "snq" "$(C4/(B" kijuhynbmlopP) - (its-define-hangul "snt" "$(C40(B" kijuhynbmlopOP) - (its-define-hangul "snd" "$(C41(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "snj" "$(C42(B" - (its-define-hangul "snjT" "$(C43(B" kjhynmlop)) - - (its-defrule-hangul "snp" "$(C44(B") - - (its-defrule-hangul-2 "snl" "$(C45(B" - (its-define-hangul "snls" "$(C46(B" kijuhynbmlopP) - (its-define-hangul "snlf" "$(C47(B" kijuhynbmlopP) - (its-define-hangul "snla" "$(C48(B" kijuhynbmlopP) - (its-define-hangul "snlq" "$(C49(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "sb" "$(C4:(B" - (its-define-hangul "sbr" "$(C4;(B" kijuhynbmlopOP) - (its-define-hangul "sbf" "$(C4<(B" kijuhynbmlopP) - (its-define-hangul "sba" "$(C4=(B" kijuhynbmlopP) - (its-define-hangul "sbq" "$(C4>(B" kijuhynbmlopP) - (its-define-hangul "sbd" "$(C4?(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "sm" "$(C4@(B" - (its-define-hangul "smr" "$(C4A(B" kijuhynbmlopOP) - (its-define-hangul "sms" "$(C4B(B" kijuhynbmlopP) - (its-define-hangul "smf" "$(C4C(B" kijuhynbmlopP - (its-define-hangul "smfr" "$(C4D(B" kijuhynbmlopOP) - (its-define-hangul "smfa" "$(C4E(B" kijuhynbmlopP)) - (its-define-hangul "sma" "$(C4F(B" kijuhynbmlopP) - (its-define-hangul "smq" "$(C4G(B" kijuhynbmlopP) - (its-define-hangul "smt" "$(C4H(B" kijuhynbmlopOP) - (its-define-hangul "smd" "$(C4I(B" kijuhynbmlopOP) - (its-define-hangul "smw" "$(C4J(B" kijuhynbmlopOP) - (its-define-hangul "smv" "$(C4K(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "sml" "$(C4L(B" - (its-define-hangul "smls" "$(C4M(B" kijuhynbmlopP) - (its-define-hangul "smlf" "$(C4N(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "sl" "$(C4O(B" - (its-define-hangul "slr" "$(C4P(B" kijuhynbmlopOP) - (its-define-hangul "sls" "$(C4Q(B" kijuhynbmlopP) - (its-define-hangul "slf" "$(C4R(B" kijuhynbmlopP - (its-define-hangul "slfa" "$(C4S(B" kijuhynbmlopP)) - (its-define-hangul "sla" "$(C4T(B" kijuhynbmlopP) - (its-define-hangul "slq" "$(C4U(B" kijuhynbmlopP) - (its-define-hangul "slt" "$(C4V(B" kijuhynbmlopOP) - (its-define-hangul "sld" "$(C4W(B" kijuhynbmlopOP) - (its-define-hangul "slv" "$(C4X(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ek" "$(C4Y(B" - (its-define-hangul "ekr" "$(C4Z(B" kijuhynbmlopOP) - (its-define-hangul "ekR" "$(C4[(B" kijuhynbmlopP) - (its-define-hangul "eks" "$(C4\(B" kijuhynbmlopP) - (its-define-hangul "eke" "$(C4](B" kijuhynbmlopP) - (its-define-hangul "ekf" "$(C4^(B" kijuhynbmlopP - (its-define-hangul "ekfr" "$(C4_(B" kijuhynbmlopOP) - (its-define-hangul "ekfa" "$(C4`(B" kijuhynbmlopP) - (its-define-hangul "ekfq" "$(C4a(B" kijuhynbmlopP) - (its-define-hangul "ekfg" "$(C4b(B" kijuhynbmlopP)) - (its-define-hangul "eka" "$(C4c(B" kijuhynbmlopP) - (its-define-hangul "ekq" "$(C4d(B" kijuhynbmlopP) - (its-define-hangul "ekt" "$(C4e(B" kijuhynbmlopOP) - (its-define-hangul "ekT" "$(C4f(B" kjhynmlop) - (its-define-hangul "ekd" "$(C4g(B" kijuhynbmlopOP) - (its-define-hangul "ekw" "$(C4h(B" kijuhynbmlopOP) - (its-define-hangul "ekc" "$(C4i(B" kijuhynbmlopP) - (its-define-hangul "ekg" "$(C4j(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "eo" "$(C4k(B" - (its-define-hangul "eor" "$(C4l(B" kijuhynbmlopOP) - (its-define-hangul "eos" "$(C4m(B" kijuhynbmlopP) - (its-define-hangul "eof" "$(C4n(B" kijuhynbmlopP) - (its-define-hangul "eoa" "$(C4o(B" kijuhynbmlopP) - (its-define-hangul "eoq" "$(C4p(B" kijuhynbmlopP) - (its-define-hangul "eot" "$(C4q(B" kijuhynbmlopOP) - (its-define-hangul "eoT" "$(C4r(B" kjhynmlop) - (its-define-hangul "eod" "$(C4s(B" kijuhynbmlopOP)) - - (its-defrule-hangul "ei" "$(C4t(B") - - (its-defrule-hangul-2 "ej" "$(C4u(B" - (its-define-hangul "ejr" "$(C4v(B" kijuhynbmlopOP) - (its-define-hangul "ejR" "$(C4w(B" kijuhynbmlopP) - (its-define-hangul "ejs" "$(C4x(B" kijuhynbmlopP) - (its-define-hangul "eje" "$(C4y(B" kijuhynbmlopP) - (its-define-hangul "ejf" "$(C4z(B" kijuhynbmlopP - (its-define-hangul "ejfa" "$(C4{(B" kijuhynbmlopP) - (its-define-hangul "ejfq" "$(C4|(B" kijuhynbmlopP)) - (its-define-hangul "eja" "$(C4}(B" kijuhynbmlopP) - (its-define-hangul "ejq" "$(C4~(B" kijuhynbmlopP) - (its-define-hangul "ejt" "$(C5!(B" kijuhynbmlopOP) - (its-define-hangul "ejd" "$(C5"(B" kijuhynbmlopOP) - (its-define-hangul "ejc" "$(C5#(B" kijuhynbmlopP) - (its-define-hangul "ejv" "$(C5$(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ep" "$(C5%(B" - (its-define-hangul "epr" "$(C5&(B" kijuhynbmlopOP) - (its-define-hangul "eps" "$(C5'(B" kijuhynbmlopP) - (its-define-hangul "epf" "$(C5((B" kijuhynbmlopP) - (its-define-hangul "epa" "$(C5)(B" kijuhynbmlopP) - (its-define-hangul "epq" "$(C5*(B" kijuhynbmlopP) - (its-define-hangul "ept" "$(C5+(B" kijuhynbmlopOP) - (its-define-hangul "epT" "$(C5,(B" kjhynmlop) - (its-define-hangul "epd" "$(C5-(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "eu" "$(C5.(B" - (its-define-hangul "eus" "$(C5/(B" kijuhynbmlopP) - (its-define-hangul "euf" "$(C50(B" kijuhynbmlopP) - (its-define-hangul "euT" "$(C51(B" kjhynmlop) - (its-define-hangul "eud" "$(C52(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "eP" "$(C53(B" - (its-define-hangul "ePs" "$(C54(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "eh" "$(C55(B" - (its-define-hangul "ehr" "$(C56(B" kijuhynbmlopOP) - (its-define-hangul "ehs" "$(C57(B" kijuhynbmlopP) - (its-define-hangul "ehe" "$(C58(B" kijuhynbmlopP) - (its-define-hangul "ehf" "$(C59(B" kijuhynbmlopP - (its-define-hangul "ehfa" "$(C5:(B" kijuhynbmlopP) - (its-define-hangul "ehft" "$(C5;(B" kijuhynbmlopOP)) - (its-define-hangul "eha" "$(C5<(B" kijuhynbmlopP) - (its-define-hangul "ehq" "$(C5=(B" kijuhynbmlopP) - (its-define-hangul "eht" "$(C5>(B" kijuhynbmlopOP) - (its-define-hangul "ehd" "$(C5?(B" kijuhynbmlopOP) - (its-define-hangul "ehc" "$(C5@(B" kijuhynbmlopP) - (its-define-hangul "ehx" "$(C5A(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ehk" "$(C5B(B" - (its-define-hangul "ehks" "$(C5C(B" kijuhynbmlopP) - (its-define-hangul "ehkf" "$(C5D(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "eho" "$(C5E(B" - (its-define-hangul "ehoT" "$(C5F(B" kjhynmlop)) - - (its-defrule-hangul-2 "ehl" "$(C5G(B" - (its-define-hangul "ehls" "$(C5H(B" kijuhynbmlopP) - (its-define-hangul "ehlf" "$(C5I(B" kijuhynbmlopP) - (its-define-hangul "ehla" "$(C5J(B" kijuhynbmlopP) - (its-define-hangul "ehlq" "$(C5K(B" kijuhynbmlopP) - (its-define-hangul "ehlt" "$(C5L(B" kijuhynbmlopOP)) - - (its-defrule-hangul "ey" "$(C5M(B") - - (its-defrule-hangul-2 "en" "$(C5N(B" - (its-define-hangul "enr" "$(C5O(B" kijuhynbmlopOP) - (its-define-hangul "ens" "$(C5P(B" kijuhynbmlopP) - (its-define-hangul "enf" "$(C5Q(B" kijuhynbmlopP) - (its-define-hangul "ena" "$(C5R(B" kijuhynbmlopP) - (its-define-hangul "enq" "$(C5S(B" kijuhynbmlopP) - (its-define-hangul "ent" "$(C5T(B" kijuhynbmlopOP) - (its-define-hangul "end" "$(C5U(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "enj" "$(C5V(B" - (its-define-hangul "enjT" "$(C5W(B" kjhynmlop)) - - (its-defrule-hangul-2 "enp" "$(C5X(B" - (its-define-hangul "enpd" "$(C5Y(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "enl" "$(C5Z(B" - (its-define-hangul "enls" "$(C5[(B" kijuhynbmlopP) - (its-define-hangul "enlf" "$(C5\(B" kijuhynbmlopP) - (its-define-hangul "enlq" "$(C5](B" kijuhynbmlopP) - (its-define-hangul "enlt" "$(C5^(B" kijuhynbmlopOP) - (its-define-hangul "enld" "$(C5_(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "eb" "$(C5`(B" - (its-define-hangul "ebs" "$(C5a(B" kijuhynbmlopP) - (its-define-hangul "ebf" "$(C5b(B" kijuhynbmlopP) - (its-define-hangul "eba" "$(C5c(B" kijuhynbmlopP) - (its-define-hangul "ebd" "$(C5d(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "em" "$(C5e(B" - (its-define-hangul "emr" "$(C5f(B" kijuhynbmlopOP) - (its-define-hangul "ems" "$(C5g(B" kijuhynbmlopP) - (its-define-hangul "eme" "$(C5h(B" kijuhynbmlopP) - (its-define-hangul "emf" "$(C5i(B" kijuhynbmlopP - (its-define-hangul "emfa" "$(C5j(B" kijuhynbmlopP)) - (its-define-hangul "ema" "$(C5k(B" kijuhynbmlopP) - (its-define-hangul "emq" "$(C5l(B" kijuhynbmlopP) - (its-define-hangul "emt" "$(C5m(B" kijuhynbmlopOP) - (its-define-hangul "emd" "$(C5n(B" kijuhynbmlopOP)) - - (its-defrule-hangul "eml" "$(C5o(B") - - (its-defrule-hangul-2 "el" "$(C5p(B" - (its-define-hangul "elr" "$(C5q(B" kijuhynbmlopOP) - (its-define-hangul "els" "$(C5r(B" kijuhynbmlopP) - (its-define-hangul "ele" "$(C5s(B" kijuhynbmlopP) - (its-define-hangul "elf" "$(C5t(B" kijuhynbmlopP) - (its-define-hangul "ela" "$(C5u(B" kijuhynbmlopP) - (its-define-hangul "elq" "$(C5v(B" kijuhynbmlopP) - (its-define-hangul "elt" "$(C5w(B" kijuhynbmlopOP) - (its-define-hangul "elT" "$(C5x(B" kjhynmlop) - (its-define-hangul "eld" "$(C5y(B" kijuhynbmlopOP) - (its-define-hangul "elw" "$(C5z(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Ek" "$(C5{(B" - (its-define-hangul "Ekr" "$(C5|(B" kijuhynbmlopOP) - (its-define-hangul "Eks" "$(C5}(B" kijuhynbmlopP) - (its-define-hangul "Ekf" "$(C5~(B" kijuhynbmlopP) - (its-define-hangul "Eka" "$(C6!(B" kijuhynbmlopP) - (its-define-hangul "Ekq" "$(C6"(B" kijuhynbmlopP) - (its-define-hangul "Ekt" "$(C6#(B" kijuhynbmlopOP) - (its-define-hangul "EkT" "$(C6$(B" kjhynmlop) - (its-define-hangul "Ekd" "$(C6%(B" kijuhynbmlopOP) - (its-define-hangul "Ekg" "$(C6&(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Eo" "$(C6'(B" - (its-define-hangul "Eor" "$(C6((B" kijuhynbmlopOP) - (its-define-hangul "Eos" "$(C6)(B" kijuhynbmlopP) - (its-define-hangul "Eof" "$(C6*(B" kijuhynbmlopP) - (its-define-hangul "Eoa" "$(C6+(B" kijuhynbmlopP) - (its-define-hangul "Eoq" "$(C6,(B" kijuhynbmlopP) - (its-define-hangul "Eot" "$(C6-(B" kijuhynbmlopOP) - (its-define-hangul "EoT" "$(C6.(B" kjhynmlop) - (its-define-hangul "Eod" "$(C6/(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Ej" "$(C60(B" - (its-define-hangul "Ejr" "$(C61(B" kijuhynbmlopOP) - (its-define-hangul "Ejs" "$(C62(B" kijuhynbmlopP) - (its-define-hangul "Ejf" "$(C63(B" kijuhynbmlopP - (its-define-hangul "Ejfa" "$(C64(B" kijuhynbmlopP) - (its-define-hangul "Ejfq" "$(C65(B" kijuhynbmlopP)) - (its-define-hangul "Eja" "$(C66(B" kijuhynbmlopP) - (its-define-hangul "Ejq" "$(C67(B" kijuhynbmlopP) - (its-define-hangul "Ejt" "$(C68(B" kijuhynbmlopOP) - (its-define-hangul "EjT" "$(C69(B" kjhynmlop) - (its-define-hangul "Ejd" "$(C6:(B" kijuhynbmlopOP) - (its-define-hangul "Ejg" "$(C6;(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Ep" "$(C6<(B" - (its-define-hangul "Epr" "$(C6=(B" kijuhynbmlopOP) - (its-define-hangul "Eps" "$(C6>(B" kijuhynbmlopP) - (its-define-hangul "Epf" "$(C6?(B" kijuhynbmlopP) - (its-define-hangul "Epa" "$(C6@(B" kijuhynbmlopP) - (its-define-hangul "Epq" "$(C6A(B" kijuhynbmlopP) - (its-define-hangul "Ept" "$(C6B(B" kijuhynbmlopOP) - (its-define-hangul "EpT" "$(C6C(B" kjhynmlop) - (its-define-hangul "Epd" "$(C6D(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Eu" "$(C6E(B" - (its-define-hangul "EuT" "$(C6F(B" kjhynmlop)) - - (its-defrule-hangul-2 "Eh" "$(C6G(B" - (its-define-hangul "Ehr" "$(C6H(B" kijuhynbmlopOP) - (its-define-hangul "Ehs" "$(C6I(B" kijuhynbmlopP) - (its-define-hangul "Ehf" "$(C6J(B" kijuhynbmlopP) - (its-define-hangul "Ehd" "$(C6K(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Ehk" "$(C6L(B" - (its-define-hangul "Ehkf" "$(C6M(B" kijuhynbmlopP)) - - (its-defrule-hangul "Eho" "$(C6N(B") - - (its-defrule-hangul-2 "Ehl" "$(C6O(B" - (its-define-hangul "Ehls" "$(C6P(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "En" "$(C6Q(B" - (its-define-hangul "Enr" "$(C6R(B" kijuhynbmlopOP) - (its-define-hangul "Ens" "$(C6S(B" kijuhynbmlopP) - (its-define-hangul "Enf" "$(C6T(B" kijuhynbmlopP - (its-define-hangul "Enfg" "$(C6U(B" kijuhynbmlopP)) - (its-define-hangul "Ena" "$(C6V(B" kijuhynbmlopP) - (its-define-hangul "End" "$(C6W(B" kijuhynbmlopOP)) - - (its-defrule-hangul "Enp" "$(C6X(B") - - (its-defrule-hangul-2 "Enl" "$(C6Y(B" - (its-define-hangul "Enls" "$(C6Z(B" kijuhynbmlopP) - (its-define-hangul "Enlf" "$(C6[(B" kijuhynbmlopP) - (its-define-hangul "Enla" "$(C6\(B" kijuhynbmlopP) - (its-define-hangul "Enlq" "$(C6](B" kijuhynbmlopP) - (its-define-hangul "Enld" "$(C6^(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Em" "$(C6_(B" - (its-define-hangul "Emr" "$(C6`(B" kijuhynbmlopOP) - (its-define-hangul "Ems" "$(C6a(B" kijuhynbmlopP) - (its-define-hangul "Eme" "$(C6b(B" kijuhynbmlopP) - (its-define-hangul "Emf" "$(C6c(B" kijuhynbmlopP) - (its-define-hangul "Ema" "$(C6d(B" kijuhynbmlopP) - (its-define-hangul "Emq" "$(C6e(B" kijuhynbmlopP) - (its-define-hangul "Emt" "$(C6f(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Eml" "$(C6g(B" - (its-define-hangul "Emls" "$(C6h(B" kijuhynbmlopP) - (its-define-hangul "Emlf" "$(C6i(B" kijuhynbmlopP) - (its-define-hangul "Emla" "$(C6j(B" kijuhynbmlopP) - (its-define-hangul "Emlq" "$(C6k(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "El" "$(C6l(B" - (its-define-hangul "Els" "$(C6m(B" kijuhynbmlopP) - (its-define-hangul "Elf" "$(C6n(B" kijuhynbmlopP) - (its-define-hangul "Ela" "$(C6o(B" kijuhynbmlopP) - (its-define-hangul "Elq" "$(C6p(B" kijuhynbmlopP) - (its-define-hangul "Elt" "$(C6q(B" kijuhynbmlopOP) - (its-define-hangul "Eld" "$(C6r(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fk" "$(C6s(B" - (its-define-hangul "fkr" "$(C6t(B" kijuhynbmlopOP) - (its-define-hangul "fks" "$(C6u(B" kijuhynbmlopP) - (its-define-hangul "fkf" "$(C6v(B" kijuhynbmlopP) - (its-define-hangul "fka" "$(C6w(B" kijuhynbmlopP) - (its-define-hangul "fkq" "$(C6x(B" kijuhynbmlopP) - (its-define-hangul "fkt" "$(C6y(B" kijuhynbmlopOP) - (its-define-hangul "fkT" "$(C6z(B" kjhynmlop) - (its-define-hangul "fkd" "$(C6{(B" kijuhynbmlopOP) - (its-define-hangul "fkw" "$(C6|(B" kijuhynbmlopOP) - (its-define-hangul "fkv" "$(C6}(B" kijuhynbmlopP) - (its-define-hangul "fkg" "$(C6~(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "fo" "$(C7!(B" - (its-define-hangul "for" "$(C7"(B" kijuhynbmlopOP) - (its-define-hangul "fos" "$(C7#(B" kijuhynbmlopP) - (its-define-hangul "fof" "$(C7$(B" kijuhynbmlopP) - (its-define-hangul "foa" "$(C7%(B" kijuhynbmlopP) - (its-define-hangul "foq" "$(C7&(B" kijuhynbmlopP) - (its-define-hangul "fot" "$(C7'(B" kijuhynbmlopOP) - (its-define-hangul "foT" "$(C7((B" kjhynmlop) - (its-define-hangul "fod" "$(C7)(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fi" "$(C7*(B" - (its-define-hangul "fir" "$(C7+(B" kijuhynbmlopOP) - (its-define-hangul "fis" "$(C7,(B" kijuhynbmlopP) - (its-define-hangul "fit" "$(C7-(B" kijuhynbmlopOP) - (its-define-hangul "fid" "$(C7.(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fj" "$(C7/(B" - (its-define-hangul "fjr" "$(C70(B" kijuhynbmlopOP) - (its-define-hangul "fjs" "$(C71(B" kijuhynbmlopP) - (its-define-hangul "fjf" "$(C72(B" kijuhynbmlopP) - (its-define-hangul "fja" "$(C73(B" kijuhynbmlopP) - (its-define-hangul "fjq" "$(C74(B" kijuhynbmlopP) - (its-define-hangul "fjt" "$(C75(B" kijuhynbmlopOP) - (its-define-hangul "fjT" "$(C76(B" kjhynmlop) - (its-define-hangul "fjd" "$(C77(B" kijuhynbmlopOP) - (its-define-hangul "fjg" "$(C78(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "fp" "$(C79(B" - (its-define-hangul "fpr" "$(C7:(B" kijuhynbmlopOP) - (its-define-hangul "fps" "$(C7;(B" kijuhynbmlopP) - (its-define-hangul "fpf" "$(C7<(B" kijuhynbmlopP) - (its-define-hangul "fpa" "$(C7=(B" kijuhynbmlopP) - (its-define-hangul "fpq" "$(C7>(B" kijuhynbmlopP) - (its-define-hangul "fpt" "$(C7?(B" kijuhynbmlopOP) - (its-define-hangul "fpd" "$(C7@(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fu" "$(C7A(B" - (its-define-hangul "fur" "$(C7B(B" kijuhynbmlopOP) - (its-define-hangul "fus" "$(C7C(B" kijuhynbmlopP) - (its-define-hangul "fuf" "$(C7D(B" kijuhynbmlopP) - (its-define-hangul "fua" "$(C7E(B" kijuhynbmlopP) - (its-define-hangul "fuq" "$(C7F(B" kijuhynbmlopP) - (its-define-hangul "fut" "$(C7G(B" kijuhynbmlopOP) - (its-define-hangul "fuT" "$(C7H(B" kjhynmlop) - (its-define-hangul "fud" "$(C7I(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fP" "$(C7J(B" - (its-define-hangul "fPs" "$(C7K(B" kijuhynbmlopP) - (its-define-hangul "fPq" "$(C7L(B" kijuhynbmlopP) - (its-define-hangul "fPt" "$(C7M(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fh" "$(C7N(B" - (its-define-hangul "fhr" "$(C7O(B" kijuhynbmlopOP) - (its-define-hangul "fhs" "$(C7P(B" kijuhynbmlopP) - (its-define-hangul "fhf" "$(C7Q(B" kijuhynbmlopP) - (its-define-hangul "fha" "$(C7R(B" kijuhynbmlopP) - (its-define-hangul "fhq" "$(C7S(B" kijuhynbmlopP) - (its-define-hangul "fht" "$(C7T(B" kijuhynbmlopOP) - (its-define-hangul "fhd" "$(C7U(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fhk" "$(C7V(B" - (its-define-hangul "fhks" "$(C7W(B" kijuhynbmlopP) - (its-define-hangul "fhkd" "$(C7X(B" kijuhynbmlopOP)) - - (its-defrule-hangul "fho" "$(C7N(Bo") - (its-defrule-hangul "fhoT" "$(C7Y(B") - - (its-defrule-hangul-2 "fhl" "$(C7Z(B" - (its-define-hangul "fhls" "$(C7[(B" kijuhynbmlopP) - (its-define-hangul "fhlf" "$(C7\(B" kijuhynbmlopP) - (its-define-hangul "fhla" "$(C7](B" kijuhynbmlopP) - (its-define-hangul "fhlq" "$(C7^(B" kijuhynbmlopP) - (its-define-hangul "fhlt" "$(C7_(B" kijuhynbmlopOP) - (its-define-hangul "fhld" "$(C7`(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fy" "$(C7a(B" - (its-define-hangul "fys" "$(C7b(B" kijuhynbmlopP) - (its-define-hangul "fyf" "$(C7c(B" kijuhynbmlopP) - (its-define-hangul "fyq" "$(C7d(B" kijuhynbmlopP) - (its-define-hangul "fyt" "$(C7e(B" kijuhynbmlopOP) - (its-define-hangul "fyd" "$(C7f(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fn" "$(C7g(B" - (its-define-hangul "fnr" "$(C7h(B" kijuhynbmlopOP) - (its-define-hangul "fns" "$(C7i(B" kijuhynbmlopP) - (its-define-hangul "fnf" "$(C7j(B" kijuhynbmlopP) - (its-define-hangul "fna" "$(C7k(B" kijuhynbmlopP) - (its-define-hangul "fnq" "$(C7l(B" kijuhynbmlopP) - (its-define-hangul "fnt" "$(C7m(B" kijuhynbmlopOP) - (its-define-hangul "fnd" "$(C7n(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fnj" "$(C7o(B" - (its-define-hangul "fnjT" "$(C7p(B" kjhynmlop)) - - (its-defrule-hangul "fnp" "$(C7q(B") - - (its-defrule-hangul-2 "fnl" "$(C7r(B" - (its-define-hangul "fnlr" "$(C7s(B" kijuhynbmlopOP) - (its-define-hangul "fnls" "$(C7t(B" kijuhynbmlopP) - (its-define-hangul "fnlf" "$(C7u(B" kijuhynbmlopP) - (its-define-hangul "fnla" "$(C7v(B" kijuhynbmlopP) - (its-define-hangul "fnlt" "$(C7w(B" kijuhynbmlopOP) - (its-define-hangul "fnld" "$(C7x(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fb" "$(C7y(B" - (its-define-hangul "fbr" "$(C7z(B" kijuhynbmlopOP) - (its-define-hangul "fbs" "$(C7{(B" kijuhynbmlopP) - (its-define-hangul "fbf" "$(C7|(B" kijuhynbmlopP) - (its-define-hangul "fba" "$(C7}(B" kijuhynbmlopP) - (its-define-hangul "fbq" "$(C7~(B" kijuhynbmlopP) - (its-define-hangul "fbt" "$(C8!(B" kijuhynbmlopOP) - (its-define-hangul "fbd" "$(C8"(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "fm" "$(C8#(B" - (its-define-hangul "fmr" "$(C8$(B" kijuhynbmlopOP) - (its-define-hangul "fms" "$(C8%(B" kijuhynbmlopP) - (its-define-hangul "fmf" "$(C8&(B" kijuhynbmlopP) - (its-define-hangul "fma" "$(C8'(B" kijuhynbmlopP) - (its-define-hangul "fmq" "$(C8((B" kijuhynbmlopP) - (its-define-hangul "fmt" "$(C8)(B" kijuhynbmlopOP) - (its-define-hangul "fmd" "$(C8*(B" kijuhynbmlopOP) - (its-define-hangul "fmw" "$(C8+(B" kijuhynbmlopOP) - (its-define-hangul "fmx" "$(C8,(B" kijuhynbmlopP) - (its-define-hangul "fmv" "$(C8-(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "fl" "$(C8.(B" - (its-define-hangul "flr" "$(C8/(B" kijuhynbmlopOP) - (its-define-hangul "fls" "$(C80(B" kijuhynbmlopP) - (its-define-hangul "flf" "$(C81(B" kijuhynbmlopP) - (its-define-hangul "fla" "$(C82(B" kijuhynbmlopP) - (its-define-hangul "flq" "$(C83(B" kijuhynbmlopP) - (its-define-hangul "flt" "$(C84(B" kijuhynbmlopOP) - (its-define-hangul "fld" "$(C85(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ak" "$(C86(B" - (its-define-hangul "akr" "$(C87(B" kijuhynbmlopOP) - (its-define-hangul "aks" "$(C88(B" kijuhynbmlopP - (its-define-hangul "aksg" "$(C89(B" kijuhynbmlopP)) - (its-define-hangul "ake" "$(C8:(B" kijuhynbmlopP) - (its-define-hangul "akf" "$(C8;(B" kijuhynbmlopP - (its-define-hangul "akfr" "$(C8<(B" kijuhynbmlopOP) - (its-define-hangul "akfa" "$(C8=(B" kijuhynbmlopP)) - (its-define-hangul "aka" "$(C8>(B" kijuhynbmlopP) - (its-define-hangul "akq" "$(C8?(B" kijuhynbmlopP) - (its-define-hangul "akt" "$(C8@(B" kijuhynbmlopOP) - (its-define-hangul "akd" "$(C8A(B" kijuhynbmlopOP) - (its-define-hangul "akw" "$(C8B(B" kijuhynbmlopOP) - (its-define-hangul "akx" "$(C8C(B" kijuhynbmlopP) - (its-define-hangul "akg" "$(C8D(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ao" "$(C8E(B" - (its-define-hangul "aor" "$(C8F(B" kijuhynbmlopOP) - (its-define-hangul "aos" "$(C8G(B" kijuhynbmlopP) - (its-define-hangul "aof" "$(C8H(B" kijuhynbmlopP) - (its-define-hangul "aoa" "$(C8I(B" kijuhynbmlopP) - (its-define-hangul "aoq" "$(C8J(B" kijuhynbmlopP) - (its-define-hangul "aot" "$(C8K(B" kijuhynbmlopOP) - (its-define-hangul "aoT" "$(C8L(B" kjhynmlop) - (its-define-hangul "aod" "$(C8M(B" kijuhynbmlopOP) - (its-define-hangul "aow" "$(C8N(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ai" "$(C8O(B" - (its-define-hangul "air" "$(C8P(B" kijuhynbmlopOP) - (its-define-hangul "aif" "$(C8Q(B" kijuhynbmlopP) - (its-define-hangul "aid" "$(C8R(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "aj" "$(C8S(B" - (its-define-hangul "ajr" "$(C8T(B" kijuhynbmlopOP) - (its-define-hangul "ajs" "$(C8U(B" kijuhynbmlopP) - (its-define-hangul "ajf" "$(C8V(B" kijuhynbmlopP - (its-define-hangul "ajfa" "$(C8W(B" kijuhynbmlopP)) - (its-define-hangul "aja" "$(C8X(B" kijuhynbmlopP) - (its-define-hangul "ajq" "$(C8Y(B" kijuhynbmlopP) - (its-define-hangul "ajt" "$(C8Z(B" kijuhynbmlopOP) - (its-define-hangul "ajd" "$(C8[(B" kijuhynbmlopOP) - (its-define-hangul "ajw" "$(C8\(B" kijuhynbmlopOP) - (its-define-hangul "ajg" "$(C8](B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ap" "$(C8^(B" - (its-define-hangul "apr" "$(C8_(B" kijuhynbmlopOP) - (its-define-hangul "aps" "$(C8`(B" kijuhynbmlopP) - (its-define-hangul "apf" "$(C8a(B" kijuhynbmlopP) - (its-define-hangul "apa" "$(C8b(B" kijuhynbmlopP) - (its-define-hangul "apq" "$(C8c(B" kijuhynbmlopP) - (its-define-hangul "apt" "$(C8d(B" kijuhynbmlopOP) - (its-define-hangul "apT" "$(C8e(B" kjhynmlop) - (its-define-hangul "apd" "$(C8f(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "au" "$(C8g(B" - (its-define-hangul "aur" "$(C8h(B" kijuhynbmlopOP) - (its-define-hangul "aus" "$(C8i(B" kijuhynbmlopP) - (its-define-hangul "auf" "$(C8j(B" kijuhynbmlopP) - (its-define-hangul "aut" "$(C8k(B" kijuhynbmlopOP) - (its-define-hangul "auT" "$(C8l(B" kjhynmlop) - (its-define-hangul "aud" "$(C8m(B" kijuhynbmlopOP) - (its-define-hangul "auc" "$(C8n(B" kijuhynbmlopP)) - - (its-defrule-hangul "aP" "$(C8o(B") - - (its-defrule-hangul-2 "ah" "$(C8p(B" - (its-define-hangul "ahr" "$(C8q(B" kijuhynbmlopOP - (its-define-hangul "ahrt" "$(C8r(B" kijuhynbmlopOP)) - (its-define-hangul "ahs" "$(C8s(B" kijuhynbmlopP) - (its-define-hangul "ahf" "$(C8t(B" kijuhynbmlopP - (its-define-hangul "ahfa" "$(C8u(B" kijuhynbmlopP)) - (its-define-hangul "aha" "$(C8v(B" kijuhynbmlopP) - (its-define-hangul "ahq" "$(C8w(B" kijuhynbmlopP) - (its-define-hangul "aht" "$(C8x(B" kijuhynbmlopOP) - (its-define-hangul "ahd" "$(C8y(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ahk" "$(C8z(B" - (its-define-hangul "ahks" "$(C8{(B" kijuhynbmlopP) - (its-define-hangul "ahkT" "$(C8|(B" kjhynmlop) - (its-define-hangul "ahkd" "$(C8}(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ahl" "$(C8~(B" - (its-define-hangul "ahls" "$(C9!(B" kijuhynbmlopP) - (its-define-hangul "ahlf" "$(C9"(B" kijuhynbmlopP) - (its-define-hangul "ahlq" "$(C9#(B" kijuhynbmlopP) - (its-define-hangul "ahlt" "$(C9$(B" kijuhynbmlopOP) - (its-define-hangul "ahld" "$(C9%(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ay" "$(C9&(B" - (its-define-hangul "ays" "$(C9'(B" kijuhynbmlopP) - (its-define-hangul "ayf" "$(C9((B" kijuhynbmlopP) - (its-define-hangul "ayq" "$(C9)(B" kijuhynbmlopP) - (its-define-hangul "ayt" "$(C9*(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "an" "$(C9+(B" - (its-define-hangul "anr" "$(C9,(B" kijuhynbmlopOP) - (its-define-hangul "anR" "$(C9-(B" kijuhynbmlopP) - (its-define-hangul "ans" "$(C9.(B" kijuhynbmlopP) - (its-define-hangul "ane" "$(C9/(B" kijuhynbmlopP) - (its-define-hangul "anf" "$(C90(B" kijuhynbmlopP - (its-define-hangul "anfr" "$(C91(B" kijuhynbmlopOP) - (its-define-hangul "anfa" "$(C92(B" kijuhynbmlopP)) - (its-define-hangul "ana" "$(C93(B" kijuhynbmlopP) - (its-define-hangul "anq" "$(C94(B" kijuhynbmlopP) - (its-define-hangul "ant" "$(C95(B" kijuhynbmlopOP) - (its-define-hangul "and" "$(C96(B" kijuhynbmlopOP) - (its-define-hangul "anx" "$(C97(B" kijuhynbmlopP) - (its-define-hangul "ang" "$(C98(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "anj" "$(C99(B" - (its-define-hangul "anjs" "$(C9:(B" kijuhynbmlopP) - (its-define-hangul "anjf" "$(C9;(B" kijuhynbmlopP) - (its-define-hangul "anjq" "$(C9<(B" kijuhynbmlopP) - (its-define-hangul "anjt" "$(C9=(B" kijuhynbmlopOP)) - - (its-defrule-hangul "anp" "$(C9>(B") - - (its-defrule-hangul-2 "anl" "$(C9?(B" - (its-define-hangul "anls" "$(C9@(B" kijuhynbmlopP) - (its-define-hangul "anlf" "$(C9A(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ab" "$(C9B(B" - (its-define-hangul "abs" "$(C9C(B" kijuhynbmlopP) - (its-define-hangul "abf" "$(C9D(B" kijuhynbmlopP) - (its-define-hangul "aba" "$(C9E(B" kijuhynbmlopP) - (its-define-hangul "abt" "$(C9F(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "am" "$(C9G(B" - (its-define-hangul "ams" "$(C9H(B" kijuhynbmlopP) - (its-define-hangul "amf" "$(C9I(B" kijuhynbmlopP) - (its-define-hangul "ama" "$(C9J(B" kijuhynbmlopP) - (its-define-hangul "amt" "$(C9K(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "al" "$(C9L(B" - (its-define-hangul "alr" "$(C9M(B" kijuhynbmlopOP) - (its-define-hangul "als" "$(C9N(B" kijuhynbmlopP) - (its-define-hangul "ale" "$(C9O(B" kijuhynbmlopP) - (its-define-hangul "alf" "$(C9P(B" kijuhynbmlopP - (its-define-hangul "alfa" "$(C9Q(B" kijuhynbmlopP)) - (its-define-hangul "ala" "$(C9R(B" kijuhynbmlopP) - (its-define-hangul "alq" "$(C9S(B" kijuhynbmlopP) - (its-define-hangul "alt" "$(C9T(B" kijuhynbmlopOP) - (its-define-hangul "alT" "$(C9U(B" kjhynmlop) - (its-define-hangul "ald" "$(C9V(B" kijuhynbmlopOP) - (its-define-hangul "alc" "$(C9W(B" kijuhynbmlopP) - (its-define-hangul "alx" "$(C9X(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qk" "$(C9Y(B" - (its-define-hangul "qkr" "$(C9Z(B" kijuhynbmlopOP - (its-define-hangul "qkrt" "$(C9\(B" kijuhynbmlopOP)) - (its-define-hangul "qkR" "$(C9[(B" kijuhynbmlopP) - (its-define-hangul "qks" "$(C9](B" kijuhynbmlopP) - (its-define-hangul "qke" "$(C9^(B" kijuhynbmlopP) - (its-define-hangul "qkf" "$(C9_(B" kijuhynbmlopP - (its-define-hangul "qkfr" "$(C9`(B" kijuhynbmlopOP) - (its-define-hangul "qkfa" "$(C9a(B" kijuhynbmlopP) - (its-define-hangul "qkfq" "$(C9b(B" kijuhynbmlopP)) - (its-define-hangul "qka" "$(C9c(B" kijuhynbmlopP) - (its-define-hangul "qkq" "$(C9d(B" kijuhynbmlopP) - (its-define-hangul "qkt" "$(C9e(B" kijuhynbmlopOP) - (its-define-hangul "qkd" "$(C9f(B" kijuhynbmlopOP) - (its-define-hangul "qkx" "$(C9g(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qo" "$(C9h(B" - (its-define-hangul "qor" "$(C9i(B" kijuhynbmlopOP) - (its-define-hangul "qos" "$(C9j(B" kijuhynbmlopP) - (its-define-hangul "qof" "$(C9k(B" kijuhynbmlopP) - (its-define-hangul "qoa" "$(C9l(B" kijuhynbmlopP) - (its-define-hangul "qoq" "$(C9m(B" kijuhynbmlopP) - (its-define-hangul "qot" "$(C9n(B" kijuhynbmlopOP) - (its-define-hangul "qoT" "$(C9o(B" kjhynmlop) - (its-define-hangul "qod" "$(C9p(B" kijuhynbmlopOP) - (its-define-hangul "qox" "$(C9q(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qi" "$(C9r(B" - (its-define-hangul "qir" "$(C9s(B" kijuhynbmlopOP) - (its-define-hangul "qis" "$(C9t(B" kijuhynbmlopP) - (its-define-hangul "qiq" "$(C9u(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qj" "$(C9v(B" - (its-define-hangul "qjr" "$(C9w(B" kijuhynbmlopOP) - (its-define-hangul "qjs" "$(C9x(B" kijuhynbmlopP) - (its-define-hangul "qje" "$(C9y(B" kijuhynbmlopP) - (its-define-hangul "qjf" "$(C9z(B" kijuhynbmlopP - (its-define-hangul "qjfa" "$(C9{(B" kijuhynbmlopP)) - (its-define-hangul "qja" "$(C9|(B" kijuhynbmlopP) - (its-define-hangul "qjq" "$(C9}(B" kijuhynbmlopP) - (its-define-hangul "qjt" "$(C9~(B" kijuhynbmlopOP) - (its-define-hangul "qjd" "$(C:!(B" kijuhynbmlopOP) - (its-define-hangul "qjw" "$(C:"(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "qp" "$(C:#(B" - (its-define-hangul "qpr" "$(C:$(B" kijuhynbmlopOP) - (its-define-hangul "qps" "$(C:%(B" kijuhynbmlopP) - (its-define-hangul "qpe" "$(C:&(B" kijuhynbmlopP) - (its-define-hangul "qpf" "$(C:'(B" kijuhynbmlopP) - (its-define-hangul "qpa" "$(C:((B" kijuhynbmlopP) - (its-define-hangul "qpq" "$(C:)(B" kijuhynbmlopP) - (its-define-hangul "qpt" "$(C:*(B" kijuhynbmlopOP) - (its-define-hangul "qpT" "$(C:+(B" kjhynmlop) - (its-define-hangul "qpd" "$(C:,(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "qu" "$(C:-(B" - (its-define-hangul "qur" "$(C:.(B" kijuhynbmlopOP) - (its-define-hangul "qus" "$(C:/(B" kijuhynbmlopP) - (its-define-hangul "quf" "$(C:0(B" kijuhynbmlopP) - (its-define-hangul "quq" "$(C:1(B" kijuhynbmlopP) - (its-define-hangul "qut" "$(C:2(B" kijuhynbmlopOP) - (its-define-hangul "quT" "$(C:3(B" kjhynmlop) - (its-define-hangul "qud" "$(C:4(B" kijuhynbmlopOP) - (its-define-hangul "qux" "$(C:5(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qP" "$(C:6(B" - (its-define-hangul "qPs" "$(C:7(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qh" "$(C:8(B" - (its-define-hangul "qhr" "$(C:9(B" kijuhynbmlopOP) - (its-define-hangul "qhR" "$(C::(B" kijuhynbmlopP) - (its-define-hangul "qhs" "$(C:;(B" kijuhynbmlopP) - (its-define-hangul "qhf" "$(C:<(B" kijuhynbmlopP) - (its-define-hangul "qha" "$(C:=(B" kijuhynbmlopP) - (its-define-hangul "qhq" "$(C:>(B" kijuhynbmlopP) - (its-define-hangul "qht" "$(C:?(B" kijuhynbmlopOP) - (its-define-hangul "qhd" "$(C:@(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "qhk" "$(C:A(B" - (its-define-hangul "qhks" "$(C:B(B" kijuhynbmlopP) - (its-define-hangul "qhkT" "$(C:C(B" kjhynmlop)) - - (its-defrule-hangul-2 "qho" "$(C:D(B" - (its-define-hangul "qhoT" "$(C:E(B" kjhynmlop)) - - (its-defrule-hangul-2 "qhl" "$(C:F(B" - (its-define-hangul "qhlr" "$(C:G(B" kijuhynbmlopOP) - (its-define-hangul "qhls" "$(C:H(B" kijuhynbmlopP) - (its-define-hangul "qhlf" "$(C:I(B" kijuhynbmlopP) - (its-define-hangul "qhla" "$(C:J(B" kijuhynbmlopP) - (its-define-hangul "qhlq" "$(C:K(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qy" "$(C:L(B" - (its-define-hangul "qys" "$(C:M(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qn" "$(C:N(B" - (its-define-hangul "qnr" "$(C:O(B" kijuhynbmlopOP) - (its-define-hangul "qns" "$(C:P(B" kijuhynbmlopP) - (its-define-hangul "qne" "$(C:Q(B" kijuhynbmlopP) - (its-define-hangul "qnf" "$(C:R(B" kijuhynbmlopP - (its-define-hangul "qnfr" "$(C:S(B" kijuhynbmlopOP) - (its-define-hangul "qnfa" "$(C:T(B" kijuhynbmlopP)) - (its-define-hangul "qna" "$(C:U(B" kijuhynbmlopP) - (its-define-hangul "qnq" "$(C:V(B" kijuhynbmlopP) - (its-define-hangul "qnt" "$(C:W(B" kijuhynbmlopOP) - (its-define-hangul "qnd" "$(C:X(B" kijuhynbmlopOP) - (its-define-hangul "qnx" "$(C:Y(B" kijuhynbmlopP) - (its-define-hangul "qnv" "$(C:Z(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "qnj" "$(C:[(B" - (its-define-hangul "qnjf" "$(C:\(B" kijuhynbmlopP) - (its-define-hangul "qnjT" "$(C:](B" kjhynmlop)) - - (its-defrule-hangul "qnp" "$(C:^(B") - - (its-defrule-hangul-2 "qnl" "$(C:_(B" - (its-define-hangul "qnlr" "$(C:`(B" kijuhynbmlopOP) - (its-define-hangul "qnls" "$(C:a(B" kijuhynbmlopP) - (its-define-hangul "qnlf" "$(C:b(B" kijuhynbmlopP) - (its-define-hangul "qnld" "$(C:c(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "qb" "$(C:d(B" - (its-define-hangul "qbs" "$(C:e(B" kijuhynbmlopP) - (its-define-hangul "qbf" "$(C:f(B" kijuhynbmlopP) - (its-define-hangul "qba" "$(C:g(B" kijuhynbmlopP) - (its-define-hangul "qbt" "$(C:h(B" kijuhynbmlopOP) - (its-define-hangul "qbd" "$(C:i(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "qm" "$(C:j(B" - (its-define-hangul "qmr" "$(C:k(B" kijuhynbmlopOP) - (its-define-hangul "qms" "$(C:l(B" kijuhynbmlopP) - (its-define-hangul "qmf" "$(C:m(B" kijuhynbmlopP) - (its-define-hangul "qma" "$(C:n(B" kijuhynbmlopP) - (its-define-hangul "qmq" "$(C:o(B" kijuhynbmlopP) - (its-define-hangul "qmt" "$(C:p(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ql" "$(C:q(B" - (its-define-hangul "qlr" "$(C:r(B" kijuhynbmlopOP) - (its-define-hangul "qls" "$(C:s(B" kijuhynbmlopP) - (its-define-hangul "qlf" "$(C:t(B" kijuhynbmlopP - (its-define-hangul "qlfa" "$(C:u(B" kijuhynbmlopP)) - (its-define-hangul "qla" "$(C:v(B" kijuhynbmlopP) - (its-define-hangul "qlq" "$(C:w(B" kijuhynbmlopP) - (its-define-hangul "qlt" "$(C:x(B" kijuhynbmlopOP) - (its-define-hangul "qld" "$(C:y(B" kijuhynbmlopOP) - (its-define-hangul "qlw" "$(C:z(B" kijuhynbmlopOP) - (its-define-hangul "qlc" "$(C:{(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Qk" "$(C:|(B" - (its-define-hangul "Qkr" "$(C:}(B" kijuhynbmlopOP) - (its-define-hangul "Qks" "$(C:~(B" kijuhynbmlopP) - (its-define-hangul "Qkf" "$(C;!(B" kijuhynbmlopP - (its-define-hangul "Qkfa" "$(C;"(B" kijuhynbmlopP)) - (its-define-hangul "Qka" "$(C;#(B" kijuhynbmlopP) - (its-define-hangul "Qkq" "$(C;$(B" kijuhynbmlopP) - (its-define-hangul "Qkt" "$(C;%(B" kijuhynbmlopOP) - (its-define-hangul "QkT" "$(C;&(B" kjhynmlop) - (its-define-hangul "Qkd" "$(C;'(B" kijuhynbmlopOP) - (its-define-hangul "Qkg" "$(C;((B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Qo" "$(C;)(B" - (its-define-hangul "Qor" "$(C;*(B" kijuhynbmlopOP) - (its-define-hangul "Qos" "$(C;+(B" kijuhynbmlopP) - (its-define-hangul "Qof" "$(C;,(B" kijuhynbmlopP) - (its-define-hangul "Qoa" "$(C;-(B" kijuhynbmlopP) - (its-define-hangul "Qoq" "$(C;.(B" kijuhynbmlopP) - (its-define-hangul "Qot" "$(C;/(B" kijuhynbmlopOP) - (its-define-hangul "QoT" "$(C;0(B" kjhynmlop) - (its-define-hangul "Qod" "$(C;1(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qi" "$(C;2(B" - (its-define-hangul "Qir" "$(C;3(B" kijuhynbmlopOP) - (its-define-hangul "Qia" "$(C;4(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Qj" "$(C;5(B" - (its-define-hangul "Qjr" "$(C;6(B" kijuhynbmlopOP) - (its-define-hangul "Qjs" "$(C;7(B" kijuhynbmlopP) - (its-define-hangul "Qje" "$(C;8(B" kijuhynbmlopP) - (its-define-hangul "Qjf" "$(C;9(B" kijuhynbmlopP) - (its-define-hangul "Qja" "$(C;:(B" kijuhynbmlopP) - (its-define-hangul "Qjt" "$(C;;(B" kijuhynbmlopOP) - (its-define-hangul "QjT" "$(C;<(B" kjhynmlop) - (its-define-hangul "Qjd" "$(C;=(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qp" "$(C;>(B" - (its-define-hangul "Qpd" "$(C;?(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qu" "$(C;@(B" - (its-define-hangul "Qur" "$(C;A(B" kijuhynbmlopOP) - (its-define-hangul "Qua" "$(C;B(B" kijuhynbmlopP) - (its-define-hangul "Quq" "$(C;C(B" kijuhynbmlopP) - (its-define-hangul "Qut" "$(C;D(B" kijuhynbmlopOP) - (its-define-hangul "QuT" "$(C;E(B" kjhynmlop) - (its-define-hangul "Qud" "$(C;F(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qh" "$(C;G(B" - (its-define-hangul "Qhr" "$(C;H(B" kijuhynbmlopOP) - (its-define-hangul "Qhs" "$(C;I(B" kijuhynbmlopP) - (its-define-hangul "Qhf" "$(C;J(B" kijuhynbmlopP) - (its-define-hangul "Qha" "$(C;K(B" kijuhynbmlopP) - (its-define-hangul "Qhq" "$(C;L(B" kijuhynbmlopP) - (its-define-hangul "Qhd" "$(C;M(B" kijuhynbmlopOP)) - - (its-defrule-hangul "Qhl" "$(C;N(B") - - (its-defrule-hangul-2 "Qy" "$(C;O(B" - (its-define-hangul "Qyd" "$(C;P(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qn" "$(C;Q(B" - (its-define-hangul "Qnr" "$(C;R(B" kijuhynbmlopOP) - (its-define-hangul "Qns" "$(C;S(B" kijuhynbmlopP) - (its-define-hangul "Qnf" "$(C;T(B" kijuhynbmlopP) - (its-define-hangul "Qna" "$(C;U(B" kijuhynbmlopP) - (its-define-hangul "Qnt" "$(C;V(B" kijuhynbmlopOP) - (its-define-hangul "Qnd" "$(C;W(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qb" "$(C;X(B" - (its-define-hangul "Qbd" "$(C;Y(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Qm" "$(C;Z(B" - (its-define-hangul "Qms" "$(C;[(B" kijuhynbmlopP) - (its-define-hangul "Qmf" "$(C;\(B" kijuhynbmlopP) - (its-define-hangul "Qma" "$(C;](B" kijuhynbmlopP) - (its-define-hangul "Qmq" "$(C;^(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Ql" "$(C;_(B" - (its-define-hangul "Qlr" "$(C;`(B" kijuhynbmlopOP) - (its-define-hangul "Qls" "$(C;a(B" kijuhynbmlopP) - (its-define-hangul "Qlf" "$(C;b(B" kijuhynbmlopP) - (its-define-hangul "Qla" "$(C;c(B" kijuhynbmlopP) - (its-define-hangul "Qlq" "$(C;d(B" kijuhynbmlopP) - (its-define-hangul "Qlt" "$(C;e(B" kijuhynbmlopOP) - (its-define-hangul "Qld" "$(C;f(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "tk" "$(C;g(B" - (its-define-hangul "tkr" "$(C;h(B" kijuhynbmlopOP - (its-define-hangul "tkrt" "$(C;i(B" kijuhynbmlopOP)) - (its-define-hangul "tks" "$(C;j(B" kijuhynbmlopP) - (its-define-hangul "tke" "$(C;k(B" kijuhynbmlopP) - (its-define-hangul "tkf" "$(C;l(B" kijuhynbmlopP - (its-define-hangul "tkfr" "$(C;m(B" kijuhynbmlopOP) - (its-define-hangul "tkfa" "$(C;n(B" kijuhynbmlopP)) - (its-define-hangul "tka" "$(C;o(B" kijuhynbmlopP) - (its-define-hangul "tkq" "$(C;p(B" kijuhynbmlopP) - (its-define-hangul "tkt" "$(C;q(B" kijuhynbmlopOP - (its-define-hangul "tktT" "$(C;r(B" kjhynmlop)) - (its-define-hangul "tkd" "$(C;s(B" kijuhynbmlopOP) - (its-define-hangul "tkx" "$(C;t(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "to" "$(C;u(B" - (its-define-hangul "tor" "$(C;v(B" kijuhynbmlopOP) - (its-define-hangul "tos" "$(C;w(B" kijuhynbmlopP) - (its-define-hangul "tof" "$(C;x(B" kijuhynbmlopP) - (its-define-hangul "toa" "$(C;y(B" kijuhynbmlopP) - (its-define-hangul "toq" "$(C;z(B" kijuhynbmlopP) - (its-define-hangul "tot" "$(C;{(B" kijuhynbmlopOP) - (its-define-hangul "toT" "$(C;|(B" kjhynmlop) - (its-define-hangul "tod" "$(C;}(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ti" "$(C;~(B" - (its-define-hangul "tir" "$(C(B" kijuhynbmlopP) - (its-define-hangul "tpf" "$(C(B" kijuhynbmlopOP)) - (its-define-hangul "tma" "$(C=?(B" kijuhynbmlopP) - (its-define-hangul "tmq" "$(C=@(B" kijuhynbmlopP) - (its-define-hangul "tmt" "$(C=A(B" kijuhynbmlopOP) - (its-define-hangul "tmd" "$(C=B(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "tl" "$(C=C(B" - (its-define-hangul "tlr" "$(C=D(B" kijuhynbmlopOP) - (its-define-hangul "tls" "$(C=E(B" kijuhynbmlopP) - (its-define-hangul "tle" "$(C=F(B" kijuhynbmlopP) - (its-define-hangul "tlf" "$(C=G(B" kijuhynbmlopP - (its-define-hangul "tlfg" "$(C=H(B" kijuhynbmlopP)) - (its-define-hangul "tla" "$(C=I(B" kijuhynbmlopP) - (its-define-hangul "tlq" "$(C=J(B" kijuhynbmlopP) - (its-define-hangul "tlt" "$(C=K(B" kijuhynbmlopOP) - (its-define-hangul "tld" "$(C=L(B" kijuhynbmlopOP) - (its-define-hangul "tlv" "$(C=M(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Tk" "$(C=N(B" - (its-define-hangul "Tkr" "$(C=O(B" kijuhynbmlopOP - (its-define-hangul "Tkrt" "$(C=P(B" kijuhynbmlopOP)) - (its-define-hangul "Tks" "$(C=Q(B" kijuhynbmlopP) - (its-define-hangul "Tkf" "$(C=R(B" kijuhynbmlopP) - (its-define-hangul "Tka" "$(C=S(B" kijuhynbmlopP) - (its-define-hangul "Tkq" "$(C=T(B" kijuhynbmlopP) - (its-define-hangul "TkT" "$(C=U(B" kjhynmlop) - (its-define-hangul "Tkd" "$(C=V(B" kijuhynbmlopOP) - (its-define-hangul "Tkg" "$(C=W(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "To" "$(C=X(B" - (its-define-hangul "Tor" "$(C=Y(B" kijuhynbmlopOP) - (its-define-hangul "Tos" "$(C=Z(B" kijuhynbmlopP) - (its-define-hangul "Tof" "$(C=[(B" kijuhynbmlopP) - (its-define-hangul "Toa" "$(C=\(B" kijuhynbmlopP) - (its-define-hangul "Toq" "$(C=](B" kijuhynbmlopP) - (its-define-hangul "ToT" "$(C=^(B" kjhynmlop) - (its-define-hangul "Tod" "$(C=_(B" kijuhynbmlopOP)) - - (its-defrule-hangul "Ti" "$(C$6(Bi") - (its-defrule-hangul "Tid" "$(C=`(B") - - (its-defrule-hangul-2 "Tj" "$(C=a(B" - (its-define-hangul "Tjr" "$(C=b(B" kijuhynbmlopOP) - (its-define-hangul "Tjs" "$(C=c(B" kijuhynbmlopP) - (its-define-hangul "Tjf" "$(C=d(B" kijuhynbmlopP - (its-define-hangul "Tjfq" "$(C=e(B" kijuhynbmlopP)) - (its-define-hangul "Tja" "$(C=f(B" kijuhynbmlopP) - (its-define-hangul "Tjq" "$(C=g(B" kijuhynbmlopP) - (its-define-hangul "TjT" "$(C=h(B" kjhynmlop) - (its-define-hangul "Tjd" "$(C=i(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Tp" "$(C=j(B" - (its-define-hangul "Tps" "$(C=k(B" kijuhynbmlopP) - (its-define-hangul "Tpf" "$(C=l(B" kijuhynbmlopP)) - - (its-defrule-hangul "TP" "$(C$6(BP") - (its-defrule-hangul "TPs" "$(C=m(B") - - (its-defrule-hangul-2 "Th" "$(C=n(B" - (its-define-hangul "Thr" "$(C=o(B" kijuhynbmlopOP) - (its-define-hangul "Ths" "$(C=p(B" kijuhynbmlopP) - (its-define-hangul "The" "$(C=q(B" kijuhynbmlopP) - (its-define-hangul "Thf" "$(C=r(B" kijuhynbmlopP - (its-define-hangul "Thfa" "$(C=s(B" kijuhynbmlopP)) - (its-define-hangul "Tha" "$(C=t(B" kijuhynbmlopP) - (its-define-hangul "Thq" "$(C=u(B" kijuhynbmlopP) - (its-define-hangul "Thd" "$(C=v(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Thk" "$(C=w(B" - (its-define-hangul "Thkr" "$(C=x(B" kijuhynbmlopOP) - (its-define-hangul "Thks" "$(C=y(B" kijuhynbmlopP) - (its-define-hangul "ThkT" "$(C=z(B" kjhynmlop)) - - (its-defrule-hangul-2 "Tho" "$(C={(B" - (its-define-hangul "ThoT" "$(C=|(B" kjhynmlop)) - - (its-defrule-hangul-2 "Thl" "$(C=}(B" - (its-define-hangul "Thls" "$(C=~(B" kijuhynbmlopP) - (its-define-hangul "Thlf" "$(C>!(B" kijuhynbmlopP) - (its-define-hangul "Thla" "$(C>"(B" kijuhynbmlopP) - (its-define-hangul "Thlq" "$(C>#(B" kijuhynbmlopP)) - - (its-defrule-hangul "Ty" "$(C>$(B") - - (its-defrule-hangul-2 "Tn" "$(C>%(B" - (its-define-hangul "Tnr" "$(C>&(B" kijuhynbmlopOP) - (its-define-hangul "Tns" "$(C>'(B" kijuhynbmlopP) - (its-define-hangul "Tnf" "$(C>((B" kijuhynbmlopP) - (its-define-hangul "Tna" "$(C>)(B" kijuhynbmlopP) - (its-define-hangul "Tnq" "$(C>*(B" kijuhynbmlopP) - (its-define-hangul "Tnd" "$(C>+(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Tnj" "$(C>,(B" - (its-define-hangul "TnjT" "$(C>-(B" kjhynmlop)) - - (its-defrule-hangul "Tnjp" "$(C>.(B") - - (its-defrule-hangul-2 "Tnl" "$(C>/(B" - (its-define-hangul "Tnls" "$(C>0(B" kijuhynbmlopP)) - - (its-defrule-hangul "Tb" "$(C$6(Bd") - (its-defrule-hangul "Tbd" "$(C>1(B") - - (its-defrule-hangul-2 "Tm" "$(C>2(B" - (its-define-hangul "Tmr" "$(C>3(B" kijuhynbmlopOP) - (its-define-hangul "Tms" "$(C>4(B" kijuhynbmlopP) - (its-define-hangul "Tmf" "$(C>5(B" kijuhynbmlopP - (its-define-hangul "Tmfa" "$(C>6(B" kijuhynbmlopP) - (its-define-hangul "Tmfg" "$(C>7(B" kijuhynbmlopP)) - (its-define-hangul "Tma" "$(C>8(B" kijuhynbmlopP) - (its-define-hangul "Tmq" "$(C>9(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Tml" "$(C>:(B" - (its-define-hangul "Tmls" "$(C>;(B" kijuhynbmlopP) - (its-define-hangul "Tmlf" "$(C><(B" kijuhynbmlopP) - (its-define-hangul "Tmla" "$(C>=(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Tl" "$(C>>(B" - (its-define-hangul "Tlr" "$(C>?(B" kijuhynbmlopOP) - (its-define-hangul "Tls" "$(C>@(B" kijuhynbmlopP) - (its-define-hangul "Tlf" "$(C>A(B" kijuhynbmlopP) - (its-define-hangul "Tla" "$(C>B(B" kijuhynbmlopP) - (its-define-hangul "Tlq" "$(C>C(B" kijuhynbmlopP) - (its-define-hangul "Tlt" "$(C>D(B" kijuhynbmlopOP) - (its-define-hangul "Tld" "$(C>E(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dk" "$(C>F(B" - (its-define-hangul "dkr" "$(C>G(B" kijuhynbmlopOP) - (its-define-hangul "dks" "$(C>H(B" kijuhynbmlopP - (its-define-hangul "dksw" "$(C>I(B" kijuhynbmlopOP) - (its-define-hangul "dksg" "$(C>J(B" kijuhynbmlopP)) - (its-define-hangul "dkf" "$(C>K(B" kijuhynbmlopP - (its-define-hangul "dkfr" "$(C>L(B" kijuhynbmlopOP) - (its-define-hangul "dkfa" "$(C>M(B" kijuhynbmlopP) - (its-define-hangul "dkfg" "$(C>N(B" kijuhynbmlopP)) - (its-define-hangul "dka" "$(C>O(B" kijuhynbmlopP) - (its-define-hangul "dkq" "$(C>P(B" kijuhynbmlopP) - (its-define-hangul "dkt" "$(C>Q(B" kijuhynbmlopOP) - (its-define-hangul "dkT" "$(C>R(B" kjhynmlop) - (its-define-hangul "dkd" "$(C>S(B" kijuhynbmlopOP) - (its-define-hangul "dkx" "$(C>T(B" kijuhynbmlopP) - (its-define-hangul "dkv" "$(C>U(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "do" "$(C>V(B" - (its-define-hangul "dor" "$(C>W(B" kijuhynbmlopOP) - (its-define-hangul "dos" "$(C>X(B" kijuhynbmlopP) - (its-define-hangul "dof" "$(C>Y(B" kijuhynbmlopP) - (its-define-hangul "doa" "$(C>Z(B" kijuhynbmlopP) - (its-define-hangul "doq" "$(C>[(B" kijuhynbmlopP) - (its-define-hangul "dot" "$(C>\(B" kijuhynbmlopOP) - (its-define-hangul "doT" "$(C>](B" kjhynmlop) - (its-define-hangul "dod" "$(C>^(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "di" "$(C>_(B" - (its-define-hangul "dir" "$(C>`(B" kijuhynbmlopOP) - (its-define-hangul "dis" "$(C>a(B" kijuhynbmlopP) - (its-define-hangul "dif" "$(C>b(B" kijuhynbmlopP - (its-define-hangul "difq" "$(C>c(B" kijuhynbmlopP)) - (its-define-hangul "dia" "$(C>d(B" kijuhynbmlopP) - (its-define-hangul "diq" "$(C>e(B" kijuhynbmlopP) - (its-define-hangul "dit" "$(C>f(B" kijuhynbmlopOP) - (its-define-hangul "did" "$(C>g(B" kijuhynbmlopOP) - (its-define-hangul "dix" "$(C>h(B" kijuhynbmlopP) - (its-define-hangul "dig" "$(C>i(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dO" "$(C>j(B" - (its-define-hangul "dOs" "$(C>k(B" kijuhynbmlopP) - (its-define-hangul "dOf" "$(C>l(B" kijuhynbmlopP) - (its-define-hangul "dOq" "$(C>m(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dj" "$(C>n(B" - (its-define-hangul "djr" "$(C>o(B" kijuhynbmlopOP) - (its-define-hangul "djs" "$(C>p(B" kijuhynbmlopP - (its-define-hangul "djsw" "$(C>q(B" kijuhynbmlopOP)) - (its-define-hangul "dje" "$(C>r(B" kijuhynbmlopP) - (its-define-hangul "djf" "$(C>s(B" kijuhynbmlopP - (its-define-hangul "djfr" "$(C>t(B" kijuhynbmlopOP) - (its-define-hangul "djfa" "$(C>u(B" kijuhynbmlopP)) - (its-define-hangul "dja" "$(C>v(B" kijuhynbmlopP) - (its-define-hangul "djq" "$(C>w(B" kijuhynbmlopP - (its-define-hangul "djqt" "$(C>x(B" kijuhynbmlopOP)) - (its-define-hangul "djt" "$(C>y(B" kijuhynbmlopOP) - (its-define-hangul "djT" "$(C>z(B" kjhynmlop) - (its-define-hangul "djd" "$(C>{(B" kijuhynbmlopOP) - (its-define-hangul "djw" "$(C>|(B" kijuhynbmlopOP) - (its-define-hangul "djz" "$(C>}(B" kijuhynbmlopP) - (its-define-hangul "djv" "$(C>~(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dp" "$(C?!(B" - (its-define-hangul "dpr" "$(C?"(B" kijuhynbmlopOP) - (its-define-hangul "dps" "$(C?#(B" kijuhynbmlopP) - (its-define-hangul "dpf" "$(C?$(B" kijuhynbmlopP) - (its-define-hangul "dpa" "$(C?%(B" kijuhynbmlopP) - (its-define-hangul "dpq" "$(C?&(B" kijuhynbmlopP) - (its-define-hangul "dpt" "$(C?'(B" kijuhynbmlopOP) - (its-define-hangul "dpd" "$(C?((B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "du" "$(C?)(B" - (its-define-hangul "dur" "$(C?*(B" kijuhynbmlopOP) - (its-define-hangul "duR" "$(C?+(B" kijuhynbmlopP) - (its-define-hangul "dus" "$(C?,(B" kijuhynbmlopP) - (its-define-hangul "duf" "$(C?-(B" kijuhynbmlopP - (its-define-hangul "dufa" "$(C?.(B" kijuhynbmlopP) - (its-define-hangul "dufq" "$(C?/(B" kijuhynbmlopP)) - (its-define-hangul "dua" "$(C?0(B" kijuhynbmlopP) - (its-define-hangul "duq" "$(C?1(B" kijuhynbmlopP - (its-define-hangul "duqt" "$(C?2(B" kijuhynbmlopOP)) - (its-define-hangul "dut" "$(C?3(B" kijuhynbmlopOP) - (its-define-hangul "duT" "$(C?4(B" kjhynmlop) - (its-define-hangul "dud" "$(C?5(B" kijuhynbmlopOP) - (its-define-hangul "dux" "$(C?6(B" kijuhynbmlopP) - (its-define-hangul "duv" "$(C?7(B" kijuhynbmlopP) - (its-define-hangul "dug" "$(C?8(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dP" "$(C?9(B" - (its-define-hangul "dPs" "$(C?:(B" kijuhynbmlopP) - (its-define-hangul "dPf" "$(C?;(B" kijuhynbmlopP) - (its-define-hangul "dPa" "$(C?<(B" kijuhynbmlopP) - (its-define-hangul "dPq" "$(C?=(B" kijuhynbmlopP) - (its-define-hangul "dPt" "$(C?>(B" kijuhynbmlopOP) - (its-define-hangul "dPT" "$(C??(B" kjhynmlop)) - - (its-defrule-hangul-2 "dh" "$(C?@(B" - (its-define-hangul "dhr" "$(C?A(B" kijuhynbmlopOP) - (its-define-hangul "dhs" "$(C?B(B" kijuhynbmlopP) - (its-define-hangul "dhf" "$(C?C(B" kijuhynbmlopP - (its-define-hangul "dhfr" "$(C?D(B" kijuhynbmlopOP) - (its-define-hangul "dhfa" "$(C?E(B" kijuhynbmlopP) - (its-define-hangul "dhft" "$(C?F(B" kijuhynbmlopOP) - (its-define-hangul "dhfg" "$(C?G(B" kijuhynbmlopP)) - (its-define-hangul "dha" "$(C?H(B" kijuhynbmlopP) - (its-define-hangul "dhq" "$(C?I(B" kijuhynbmlopP) - (its-define-hangul "dht" "$(C?J(B" kijuhynbmlopOP) - (its-define-hangul "dhd" "$(C?K(B" kijuhynbmlopOP) - (its-define-hangul "dhc" "$(C?L(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dhk" "$(C?M(B" - (its-define-hangul "dhkr" "$(C?N(B" kijuhynbmlopOP) - (its-define-hangul "dhks" "$(C?O(B" kijuhynbmlopP) - (its-define-hangul "dhkf" "$(C?P(B" kijuhynbmlopP) - (its-define-hangul "dhka" "$(C?Q(B" kijuhynbmlopP) - (its-define-hangul "dhkq" "$(C?R(B" kijuhynbmlopP) - (its-define-hangul "dhkt" "$(C?S(B" kijuhynbmlopOP) - (its-define-hangul "dhkT" "$(C?T(B" kjhynmlop) - (its-define-hangul "dhkd" "$(C?U(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dho" "$(C?V(B" - (its-define-hangul "dhor" "$(C?W(B" kijuhynbmlopOP) - (its-define-hangul "dhos" "$(C?X(B" kijuhynbmlopP) - (its-define-hangul "dhoa" "$(C?Y(B" kijuhynbmlopP) - (its-define-hangul "dhot" "$(C?Z(B" kijuhynbmlopOP) - (its-define-hangul "dhod" "$(C?[(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dhl" "$(C?\(B" - (its-define-hangul "dhlr" "$(C?](B" kijuhynbmlopOP) - (its-define-hangul "dhls" "$(C?^(B" kijuhynbmlopP) - (its-define-hangul "dhlf" "$(C?_(B" kijuhynbmlopP) - (its-define-hangul "dhla" "$(C?`(B" kijuhynbmlopP) - (its-define-hangul "dhlq" "$(C?a(B" kijuhynbmlopP) - (its-define-hangul "dhlt" "$(C?b(B" kijuhynbmlopOP) - (its-define-hangul "dhld" "$(C?c(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dy" "$(C?d(B" - (its-define-hangul "dyr" "$(C?e(B" kijuhynbmlopOP) - (its-define-hangul "dys" "$(C?f(B" kijuhynbmlopP) - (its-define-hangul "dyf" "$(C?g(B" kijuhynbmlopP) - (its-define-hangul "dya" "$(C?h(B" kijuhynbmlopP) - (its-define-hangul "dyq" "$(C?i(B" kijuhynbmlopP) - (its-define-hangul "dyt" "$(C?j(B" kijuhynbmlopOP) - (its-define-hangul "dyd" "$(C?k(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dn" "$(C?l(B" - (its-define-hangul "dnr" "$(C?m(B" kijuhynbmlopOP) - (its-define-hangul "dns" "$(C?n(B" kijuhynbmlopP) - (its-define-hangul "dnf" "$(C?o(B" kijuhynbmlopP - (its-define-hangul "dnfr" "$(C?p(B" kijuhynbmlopOP) - (its-define-hangul "dnfa" "$(C?q(B" kijuhynbmlopP)) - (its-define-hangul "dna" "$(C?r(B" kijuhynbmlopP) - (its-define-hangul "dnq" "$(C?s(B" kijuhynbmlopP) - (its-define-hangul "dnt" "$(C?t(B" kijuhynbmlopOP) - (its-define-hangul "dnd" "$(C?u(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dnj" "$(C?v(B" - (its-define-hangul "dnjr" "$(C?w(B" kijuhynbmlopOP) - (its-define-hangul "dnjs" "$(C?x(B" kijuhynbmlopP) - (its-define-hangul "dnjf" "$(C?y(B" kijuhynbmlopP) - (its-define-hangul "dnja" "$(C?z(B" kijuhynbmlopP) - (its-define-hangul "dnjq" "$(C?{(B" kijuhynbmlopP) - (its-define-hangul "dnjT" "$(C?|(B" kjhynmlop) - (its-define-hangul "dnjd" "$(C?}(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dnp" "$(C?~(B" - (its-define-hangul "dnpr" "$(C@!(B" kijuhynbmlopOP) - (its-define-hangul "dnps" "$(C@"(B" kijuhynbmlopP) - (its-define-hangul "dnpf" "$(C@#(B" kijuhynbmlopP) - (its-define-hangul "dnpa" "$(C@$(B" kijuhynbmlopP) - (its-define-hangul "dnpq" "$(C@%(B" kijuhynbmlopP) - (its-define-hangul "dnpd" "$(C@&(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dnl" "$(C@'(B" - (its-define-hangul "dnlr" "$(C@((B" kijuhynbmlopOP) - (its-define-hangul "dnls" "$(C@)(B" kijuhynbmlopP) - (its-define-hangul "dnlf" "$(C@*(B" kijuhynbmlopP) - (its-define-hangul "dnla" "$(C@+(B" kijuhynbmlopP) - (its-define-hangul "dnlq" "$(C@,(B" kijuhynbmlopP) - (its-define-hangul "dnlt" "$(C@-(B" kijuhynbmlopOP) - (its-define-hangul "dnld" "$(C@.(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "db" "$(C@/(B" - (its-define-hangul "dbr" "$(C@0(B" kijuhynbmlopOP) - (its-define-hangul "dbs" "$(C@1(B" kijuhynbmlopP) - (its-define-hangul "dbf" "$(C@2(B" kijuhynbmlopP) - (its-define-hangul "dba" "$(C@3(B" kijuhynbmlopP) - (its-define-hangul "dbq" "$(C@4(B" kijuhynbmlopP) - (its-define-hangul "dbt" "$(C@5(B" kijuhynbmlopOP) - (its-define-hangul "dbd" "$(C@6(B" kijuhynbmlopOP) - (its-define-hangul "dbc" "$(C@7(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dm" "$(C@8(B" - (its-define-hangul "dmr" "$(C@9(B" kijuhynbmlopOP) - (its-define-hangul "dms" "$(C@:(B" kijuhynbmlopP) - (its-define-hangul "dmf" "$(C@;(B" kijuhynbmlopP - (its-define-hangul "dmfv" "$(C@<(B" kijuhynbmlopP)) - (its-define-hangul "dma" "$(C@=(B" kijuhynbmlopP) - (its-define-hangul "dmq" "$(C@>(B" kijuhynbmlopP) - (its-define-hangul "dmt" "$(C@?(B" kijuhynbmlopOP) - (its-define-hangul "dmd" "$(C@@(B" kijuhynbmlopOP) - (its-define-hangul "dmw" "$(C@A(B" kijuhynbmlopOP) - (its-define-hangul "dmc" "$(C@B(B" kijuhynbmlopP) - (its-define-hangul "dmz" "$(C@C(B" kijuhynbmlopP) - (its-define-hangul "dmx" "$(C@D(B" kijuhynbmlopP) - (its-define-hangul "dmv" "$(C@E(B" kijuhynbmlopP) - (its-define-hangul "dmg" "$(C@F(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "dml" "$(C@G(B" - (its-define-hangul "dmls" "$(C@H(B" kijuhynbmlopP) - (its-define-hangul "dmlf" "$(C@I(B" kijuhynbmlopP) - (its-define-hangul "dmla" "$(C@J(B" kijuhynbmlopP) - (its-define-hangul "dmlt" "$(C@K(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "dl" "$(C@L(B" - (its-define-hangul "dlr" "$(C@M(B" kijuhynbmlopOP) - (its-define-hangul "dls" "$(C@N(B" kijuhynbmlopP) - (its-define-hangul "dlf" "$(C@O(B" kijuhynbmlopP - (its-define-hangul "dlfr" "$(C@P(B" kijuhynbmlopOP) - (its-define-hangul "dlfa" "$(C@Q(B" kijuhynbmlopP) - (its-define-hangul "dlfg" "$(C@R(B" kijuhynbmlopP)) - (its-define-hangul "dla" "$(C@S(B" kijuhynbmlopP) - (its-define-hangul "dlq" "$(C@T(B" kijuhynbmlopP) - (its-define-hangul "dlt" "$(C@U(B" kijuhynbmlopOP) - (its-define-hangul "dlT" "$(C@V(B" kjhynmlop) - (its-define-hangul "dld" "$(C@W(B" kijuhynbmlopOP) - (its-define-hangul "dlw" "$(C@X(B" kijuhynbmlopOP) - (its-define-hangul "dlv" "$(C@Y(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "wk" "$(C@Z(B" - (its-define-hangul "wkr" "$(C@[(B" kijuhynbmlopOP) - (its-define-hangul "wks" "$(C@\(B" kijuhynbmlopP - (its-define-hangul "wksg" "$(C@](B" kijuhynbmlopP)) - (its-define-hangul "wke" "$(C@^(B" kijuhynbmlopP) - (its-define-hangul "wkf" "$(C@_(B" kijuhynbmlopP - (its-define-hangul "wkfa" "$(C@`(B" kijuhynbmlopP)) - (its-define-hangul "wka" "$(C@a(B" kijuhynbmlopP) - (its-define-hangul "wkq" "$(C@b(B" kijuhynbmlopP) - (its-define-hangul "wkt" "$(C@c(B" kijuhynbmlopOP) - (its-define-hangul "wkT" "$(C@d(B" kjhynmlop) - (its-define-hangul "wkd" "$(C@e(B" kijuhynbmlopOP) - (its-define-hangul "wkw" "$(C@f(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wo" "$(C@g(B" - (its-define-hangul "wor" "$(C@h(B" kijuhynbmlopOP) - (its-define-hangul "wos" "$(C@i(B" kijuhynbmlopP) - (its-define-hangul "wof" "$(C@j(B" kijuhynbmlopP) - (its-define-hangul "woa" "$(C@k(B" kijuhynbmlopP) - (its-define-hangul "woq" "$(C@l(B" kijuhynbmlopP) - (its-define-hangul "wot" "$(C@m(B" kijuhynbmlopOP) - (its-define-hangul "woT" "$(C@n(B" kjhynmlop) - (its-define-hangul "wod" "$(C@o(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wi" "$(C@p(B" - (its-define-hangul "wir" "$(C@q(B" kijuhynbmlopOP) - (its-define-hangul "wis" "$(C@r(B" kijuhynbmlopP - (its-define-hangul "wisg" "$(C@s(B" kijuhynbmlopP)) - (its-define-hangul "wif" "$(C@t(B" kijuhynbmlopP) - (its-define-hangul "wia" "$(C@u(B" kijuhynbmlopP) - (its-define-hangul "wid" "$(C@v(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wO" "$(C@w(B" - (its-define-hangul "wOs" "$(C@x(B" kijuhynbmlopP) - (its-define-hangul "wOf" "$(C@y(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "wj" "$(C@z(B" - (its-define-hangul "wjr" "$(C@{(B" kijuhynbmlopOP) - (its-define-hangul "wjs" "$(C@|(B" kijuhynbmlopP) - (its-define-hangul "wjf" "$(C@}(B" kijuhynbmlopP - (its-define-hangul "wjfa" "$(C@~(B" kijuhynbmlopP)) - (its-define-hangul "wja" "$(CA!(B" kijuhynbmlopP) - (its-define-hangul "wjq" "$(CA"(B" kijuhynbmlopP) - (its-define-hangul "wjt" "$(CA#(B" kijuhynbmlopOP) - (its-define-hangul "wjd" "$(CA$(B" kijuhynbmlopOP) - (its-define-hangul "wjw" "$(CA%(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wp" "$(CA&(B" - (its-define-hangul "wpr" "$(CA'(B" kijuhynbmlopOP) - (its-define-hangul "wps" "$(CA((B" kijuhynbmlopP) - (its-define-hangul "wpf" "$(CA)(B" kijuhynbmlopP) - (its-define-hangul "wpa" "$(CA*(B" kijuhynbmlopP) - (its-define-hangul "wpq" "$(CA+(B" kijuhynbmlopP) - (its-define-hangul "wpt" "$(CA,(B" kijuhynbmlopOP) - (its-define-hangul "wpd" "$(CA-(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wu" "$(CA.(B" - (its-define-hangul "wus" "$(CA/(B" kijuhynbmlopP) - (its-define-hangul "wuf" "$(CA0(B" kijuhynbmlopP) - (its-define-hangul "wua" "$(CA1(B" kijuhynbmlopP) - (its-define-hangul "wuq" "$(CA2(B" kijuhynbmlopP) - (its-define-hangul "wuT" "$(CA3(B" kjhynmlop) - (its-define-hangul "wud" "$(CA4(B" kijuhynbmlopOP)) - - (its-defrule-hangul "wP" "$(CA5(B") - - (its-defrule-hangul-2 "wh" "$(CA6(B" - (its-define-hangul "whr" "$(CA7(B" kijuhynbmlopOP) - (its-define-hangul "whs" "$(CA8(B" kijuhynbmlopP) - (its-define-hangul "whf" "$(CA9(B" kijuhynbmlopP - (its-define-hangul "whfa" "$(CA:(B" kijuhynbmlopP)) - (its-define-hangul "wha" "$(CA;(B" kijuhynbmlopP) - (its-define-hangul "whq" "$(CA<(B" kijuhynbmlopP) - (its-define-hangul "wht" "$(CA=(B" kijuhynbmlopOP) - (its-define-hangul "whd" "$(CA>(B" kijuhynbmlopOP) - (its-define-hangul "whw" "$(CA?(B" kijuhynbmlopOP) - (its-define-hangul "whc" "$(CA@(B" kijuhynbmlopP) - (its-define-hangul "whg" "$(CAA(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "whk" "$(CAB(B" - (its-define-hangul "whkr" "$(CAC(B" kijuhynbmlopOP) - (its-define-hangul "whkf" "$(CAD(B" kijuhynbmlopP) - (its-define-hangul "whkq" "$(CAE(B" kijuhynbmlopP) - (its-define-hangul "whkt" "$(CAF(B" kijuhynbmlopOP) - (its-define-hangul "whkd" "$(CAG(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "who" "$(CAH(B" - (its-define-hangul "whoT" "$(CAI(B" kjhynmlop) - (its-define-hangul "whod" "$(CAJ(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "whl" "$(CAK(B" - (its-define-hangul "whls" "$(CAL(B" kijuhynbmlopP) - (its-define-hangul "whlf" "$(CAM(B" kijuhynbmlopP) - (its-define-hangul "whla" "$(CAN(B" kijuhynbmlopP) - (its-define-hangul "whlq" "$(CAO(B" kijuhynbmlopP) - (its-define-hangul "whlt" "$(CAP(B" kijuhynbmlopOP) - (its-define-hangul "whld" "$(CAQ(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wy" "$(CAR(B" - (its-define-hangul "wyr" "$(CAS(B" kijuhynbmlopOP) - (its-define-hangul "wys" "$(CAT(B" kijuhynbmlopP) - (its-define-hangul "wyd" "$(CAU(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wn" "$(CAV(B" - (its-define-hangul "wnr" "$(CAW(B" kijuhynbmlopOP) - (its-define-hangul "wns" "$(CAX(B" kijuhynbmlopP) - (its-define-hangul "wnf" "$(CAY(B" kijuhynbmlopP - (its-define-hangul "wnfr" "$(CAZ(B" kijuhynbmlopOP) - (its-define-hangul "wnfa" "$(CA[(B" kijuhynbmlopP)) - (its-define-hangul "wna" "$(CA\(B" kijuhynbmlopP) - (its-define-hangul "wnq" "$(CA](B" kijuhynbmlopP) - (its-define-hangul "wnt" "$(CA^(B" kijuhynbmlopOP) - (its-define-hangul "wnd" "$(CA_(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wnj" "$(CA`(B" - (its-define-hangul "wnjT" "$(CAa(B" kjhynmlop)) - - (its-defrule-hangul "wnp" "$(CAb(B") - - (its-defrule-hangul-2 "wnl" "$(CAc(B" - (its-define-hangul "wnlr" "$(CAd(B" kijuhynbmlopOP) - (its-define-hangul "wnls" "$(CAe(B" kijuhynbmlopP) - (its-define-hangul "wnlf" "$(CAf(B" kijuhynbmlopP) - (its-define-hangul "wnla" "$(CAg(B" kijuhynbmlopP) - (its-define-hangul "wnlq" "$(CAh(B" kijuhynbmlopP) - (its-define-hangul "wnlt" "$(CAi(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wb" "$(CAj(B" - (its-define-hangul "wbs" "$(CAk(B" kijuhynbmlopP) - (its-define-hangul "wbf" "$(CAl(B" kijuhynbmlopP) - (its-define-hangul "wba" "$(CAm(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "wm" "$(CAn(B" - (its-define-hangul "wmr" "$(CAo(B" kijuhynbmlopOP) - (its-define-hangul "wms" "$(CAp(B" kijuhynbmlopP) - (its-define-hangul "wmf" "$(CAq(B" kijuhynbmlopP) - (its-define-hangul "wma" "$(CAr(B" kijuhynbmlopP) - (its-define-hangul "wmq" "$(CAs(B" kijuhynbmlopP) - (its-define-hangul "wmt" "$(CAt(B" kijuhynbmlopOP) - (its-define-hangul "wmd" "$(CAu(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "wl" "$(CAv(B" - (its-define-hangul "wlr" "$(CAw(B" kijuhynbmlopOP) - (its-define-hangul "wls" "$(CAx(B" kijuhynbmlopP) - (its-define-hangul "wle" "$(CAy(B" kijuhynbmlopP) - (its-define-hangul "wlf" "$(CAz(B" kijuhynbmlopP - (its-define-hangul "wlfa" "$(CA{(B" kijuhynbmlopP)) - (its-define-hangul "wla" "$(CA|(B" kijuhynbmlopP) - (its-define-hangul "wlq" "$(CA}(B" kijuhynbmlopP) - (its-define-hangul "wlt" "$(CA~(B" kijuhynbmlopOP) - (its-define-hangul "wld" "$(CB!(B" kijuhynbmlopOP) - (its-define-hangul "wlw" "$(CB"(B" kijuhynbmlopOP) - (its-define-hangul "wlx" "$(CB#(B" kijuhynbmlopP) - (its-define-hangul "wlv" "$(CB$(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Wk" "$(CB%(B" - (its-define-hangul "Wkr" "$(CB&(B" kijuhynbmlopOP) - (its-define-hangul "Wks" "$(CB'(B" kijuhynbmlopP - (its-define-hangul "Wksg" "$(CB((B" kijuhynbmlopP)) - (its-define-hangul "Wkf" "$(CB)(B" kijuhynbmlopP - (its-define-hangul "Wkfq" "$(CB*(B" kijuhynbmlopP)) - (its-define-hangul "Wka" "$(CB+(B" kijuhynbmlopP) - (its-define-hangul "Wkq" "$(CB,(B" kijuhynbmlopP) - (its-define-hangul "Wkt" "$(CB-(B" kijuhynbmlopOP) - (its-define-hangul "WkT" "$(CB.(B" kjhynmlop) - (its-define-hangul "Wkd" "$(CB/(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wo" "$(CB0(B" - (its-define-hangul "Wor" "$(CB1(B" kijuhynbmlopOP) - (its-define-hangul "Wos" "$(CB2(B" kijuhynbmlopP) - (its-define-hangul "Wof" "$(CB3(B" kijuhynbmlopP) - (its-define-hangul "Woa" "$(CB4(B" kijuhynbmlopP) - (its-define-hangul "Woq" "$(CB5(B" kijuhynbmlopP) - (its-define-hangul "Wot" "$(CB6(B" kijuhynbmlopOP) - (its-define-hangul "WoT" "$(CB7(B" kjhynmlop) - (its-define-hangul "Wod" "$(CB8(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wi" "$(CB9(B" - (its-define-hangul "Wis" "$(CB:(B" kijuhynbmlopP) - (its-define-hangul "Wid" "$(CB;(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wj" "$(CB<(B" - (its-define-hangul "Wjr" "$(CB=(B" kijuhynbmlopOP) - (its-define-hangul "Wjs" "$(CB>(B" kijuhynbmlopP) - (its-define-hangul "Wjf" "$(CB?(B" kijuhynbmlopP) - (its-define-hangul "Wja" "$(CB@(B" kijuhynbmlopP) - (its-define-hangul "Wjq" "$(CBA(B" kijuhynbmlopP) - (its-define-hangul "Wjt" "$(CBB(B" kijuhynbmlopOP) - (its-define-hangul "WjT" "$(CBC(B" kjhynmlop) - (its-define-hangul "Wjd" "$(CBD(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wp" "$(CBE(B" - (its-define-hangul "Wpd" "$(CBF(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wu" "$(CBG(B" - (its-define-hangul "WuT" "$(CBH(B" kjhynmlop)) - - (its-defrule-hangul-2 "Wh" "$(CBI(B" - (its-define-hangul "Whr" "$(CBJ(B" kijuhynbmlopOP) - (its-define-hangul "Whs" "$(CBK(B" kijuhynbmlopP) - (its-define-hangul "Whf" "$(CBL(B" kijuhynbmlopP) - (its-define-hangul "Wha" "$(CBM(B" kijuhynbmlopP) - (its-define-hangul "Whq" "$(CBN(B" kijuhynbmlopP) - (its-define-hangul "Wht" "$(CBO(B" kijuhynbmlopOP) - (its-define-hangul "Whd" "$(CBP(B" kijuhynbmlopOP) - (its-define-hangul "Whc" "$(CBQ(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "Whk" "$(CBR(B" - (its-define-hangul "Whkr" "$(CBS(B" kijuhynbmlopOP) - (its-define-hangul "Whkf" "$(CBT(B" kijuhynbmlopP) - (its-define-hangul "WhkT" "$(CBU(B" kjhynmlop)) - - (its-defrule-hangul-2 "Who" "$(CBV(B" - (its-define-hangul "WhoT" "$(CBW(B" kjhynmlop)) - - (its-defrule-hangul-2 "Whl" "$(CBX(B" - (its-define-hangul "Whls" "$(CBY(B" kijuhynbmlopP) - (its-define-hangul "Whlf" "$(CBZ(B" kijuhynbmlopP) - (its-define-hangul "Whla" "$(CB[(B" kijuhynbmlopP) - (its-define-hangul "Whlq" "$(CB\(B" kijuhynbmlopP)) - - (its-defrule-hangul "Wy" "$(C$9(By") - (its-defrule-hangul "Wyd" "$(CB](B") - - (its-defrule-hangul-2 "Wn" "$(CB^(B" - (its-define-hangul "Wnr" "$(CB_(B" kijuhynbmlopOP) - (its-define-hangul "Wns" "$(CB`(B" kijuhynbmlopP) - (its-define-hangul "Wnf" "$(CBa(B" kijuhynbmlopP) - (its-define-hangul "Wna" "$(CBb(B" kijuhynbmlopP) - (its-define-hangul "Wnq" "$(CBc(B" kijuhynbmlopP) - (its-define-hangul "Wnd" "$(CBd(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wnj" "$(CBe(B" - (its-define-hangul "WnjT" "$(CBf(B" kjhynmlop) - (its-define-hangul "Wnjd" "$(CBg(B" kijuhynbmlopOP)) - - (its-defrule-hangul "Wnl" "$(CBh(B") - - (its-defrule-hangul "Wb" "$(CBi(B") - - (its-defrule-hangul-2 "Wm" "$(CBj(B" - (its-define-hangul "Wma" "$(CBk(B" kijuhynbmlopP) - (its-define-hangul "Wmt" "$(CBl(B" kijuhynbmlopOP) - (its-define-hangul "Wmd" "$(CBm(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "Wl" "$(CBn(B" - (its-define-hangul "Wlr" "$(CBo(B" kijuhynbmlopOP) - (its-define-hangul "Wls" "$(CBp(B" kijuhynbmlopP) - (its-define-hangul "Wlf" "$(CBq(B" kijuhynbmlopP) - (its-define-hangul "Wla" "$(CBr(B" kijuhynbmlopP) - (its-define-hangul "Wlq" "$(CBs(B" kijuhynbmlopP) - (its-define-hangul "Wld" "$(CBt(B" kijuhynbmlopOP) - (its-define-hangul "Wlw" "$(CBu(B" kijuhynbmlopOP) - (its-define-hangul "Wlg" "$(CBv(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ck" "$(CBw(B" - (its-define-hangul "ckr" "$(CBx(B" kijuhynbmlopOP) - (its-define-hangul "cks" "$(CBy(B" kijuhynbmlopP - (its-define-hangul "cksg" "$(CBz(B" kijuhynbmlopP)) - (its-define-hangul "ckf" "$(CB{(B" kijuhynbmlopP) - (its-define-hangul "cka" "$(CB|(B" kijuhynbmlopP) - (its-define-hangul "ckq" "$(CB}(B" kijuhynbmlopP) - (its-define-hangul "ckt" "$(CB~(B" kijuhynbmlopOP) - (its-define-hangul "ckT" "$(CC!(B" kjhynmlop) - (its-define-hangul "ckd" "$(CC"(B" kijuhynbmlopOP) - (its-define-hangul "ckw" "$(CC#(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "co" "$(CC$(B" - (its-define-hangul "cor" "$(CC%(B" kijuhynbmlopOP) - (its-define-hangul "cos" "$(CC&(B" kijuhynbmlopP) - (its-define-hangul "cof" "$(CC'(B" kijuhynbmlopP) - (its-define-hangul "coa" "$(CC((B" kijuhynbmlopP) - (its-define-hangul "coq" "$(CC)(B" kijuhynbmlopP) - (its-define-hangul "cot" "$(CC*(B" kijuhynbmlopOP) - (its-define-hangul "coT" "$(CC+(B" kjhynmlop) - (its-define-hangul "cod" "$(CC,(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ci" "$(CC-(B" - (its-define-hangul "cis" "$(CC.(B" kijuhynbmlopP - (its-define-hangul "cisg" "$(CC/(B" kijuhynbmlopP)) - (its-define-hangul "cif" "$(CC0(B" kijuhynbmlopP) - (its-define-hangul "cia" "$(CC1(B" kijuhynbmlopP) - (its-define-hangul "cid" "$(CC2(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cj" "$(CC3(B" - (its-define-hangul "cjr" "$(CC4(B" kijuhynbmlopOP) - (its-define-hangul "cjs" "$(CC5(B" kijuhynbmlopP) - (its-define-hangul "cjf" "$(CC6(B" kijuhynbmlopP) - (its-define-hangul "cja" "$(CC7(B" kijuhynbmlopP) - (its-define-hangul "cjq" "$(CC8(B" kijuhynbmlopP) - (its-define-hangul "cjt" "$(CC9(B" kijuhynbmlopOP) - (its-define-hangul "cjT" "$(CC:(B" kjhynmlop) - (its-define-hangul "cjd" "$(CC;(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cp" "$(CC<(B" - (its-define-hangul "cpr" "$(CC=(B" kijuhynbmlopOP) - (its-define-hangul "cps" "$(CC>(B" kijuhynbmlopP) - (its-define-hangul "cpf" "$(CC?(B" kijuhynbmlopP) - (its-define-hangul "cpa" "$(CC@(B" kijuhynbmlopP) - (its-define-hangul "cpq" "$(CCA(B" kijuhynbmlopP) - (its-define-hangul "cpt" "$(CCB(B" kijuhynbmlopOP) - (its-define-hangul "cpd" "$(CCC(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cu" "$(CCD(B" - (its-define-hangul "cus" "$(CCE(B" kijuhynbmlopP) - (its-define-hangul "cuT" "$(CCF(B" kjhynmlop)) - - (its-defrule-hangul-2 "cP" "$(CCG(B" - (its-define-hangul "cPs" "$(CCH(B" kijuhynbmlopP) - (its-define-hangul "cPd" "$(CCI(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ch" "$(CCJ(B" - (its-define-hangul "chr" "$(CCK(B" kijuhynbmlopOP) - (its-define-hangul "chs" "$(CCL(B" kijuhynbmlopP) - (its-define-hangul "chf" "$(CCM(B" kijuhynbmlopP) - (its-define-hangul "cha" "$(CCN(B" kijuhynbmlopP) - (its-define-hangul "chq" "$(CCO(B" kijuhynbmlopP) - (its-define-hangul "cht" "$(CCP(B" kijuhynbmlopOP) - (its-define-hangul "chd" "$(CCQ(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "chk" "$(CCR(B" - (its-define-hangul "chks" "$(CCS(B" kijuhynbmlopP) - (its-define-hangul "chkf" "$(CCT(B" kijuhynbmlopP) - (its-define-hangul "chkd" "$(CCU(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "chl" "$(CCV(B" - (its-define-hangul "chls" "$(CCW(B" kijuhynbmlopP) - (its-define-hangul "chlf" "$(CCX(B" kijuhynbmlopP) - (its-define-hangul "chla" "$(CCY(B" kijuhynbmlopP) - (its-define-hangul "chlq" "$(CCZ(B" kijuhynbmlopP) - (its-define-hangul "chlt" "$(CC[(B" kijuhynbmlopOP) - (its-define-hangul "chld" "$(CC\(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cy" "$(CC](B" - (its-define-hangul "cya" "$(CC^(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "cn" "$(CC_(B" - (its-define-hangul "cnr" "$(CC`(B" kijuhynbmlopOP) - (its-define-hangul "cns" "$(CCa(B" kijuhynbmlopP) - (its-define-hangul "cnf" "$(CCb(B" kijuhynbmlopP) - (its-define-hangul "cna" "$(CCc(B" kijuhynbmlopP) - (its-define-hangul "cnq" "$(CCd(B" kijuhynbmlopP) - (its-define-hangul "cnt" "$(CCe(B" kijuhynbmlopOP) - (its-define-hangul "cnd" "$(CCf(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cnj" "$(CCg(B" - (its-define-hangul "cnjT" "$(CCh(B" kjhynmlop)) - - (its-defrule-hangul-2 "cnp" "$(CCi(B" - (its-define-hangul "cnps" "$(CCj(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "cnl" "$(CCk(B" - (its-define-hangul "cnls" "$(CCl(B" kijuhynbmlopP) - (its-define-hangul "cnlf" "$(CCm(B" kijuhynbmlopP) - (its-define-hangul "cnla" "$(CCn(B" kijuhynbmlopP) - (its-define-hangul "cnlq" "$(CCo(B" kijuhynbmlopP) - (its-define-hangul "cnlt" "$(CCp(B" kijuhynbmlopOP) - (its-define-hangul "cnld" "$(CCq(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cb" "$(CCr(B" - (its-define-hangul "cbs" "$(CCs(B" kijuhynbmlopP) - (its-define-hangul "cbf" "$(CCt(B" kijuhynbmlopP) - (its-define-hangul "cba" "$(CCu(B" kijuhynbmlopP) - (its-define-hangul "cbd" "$(CCv(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cm" "$(CCw(B" - (its-define-hangul "cmr" "$(CCx(B" kijuhynbmlopOP) - (its-define-hangul "cms" "$(CCy(B" kijuhynbmlopP) - (its-define-hangul "cmf" "$(CCz(B" kijuhynbmlopP) - (its-define-hangul "cma" "$(CC{(B" kijuhynbmlopP) - (its-define-hangul "cmq" "$(CC|(B" kijuhynbmlopP) - (its-define-hangul "cmt" "$(CC}(B" kijuhynbmlopOP) - (its-define-hangul "cmd" "$(CC~(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "cl" "$(CD!(B" - (its-define-hangul "clr" "$(CD"(B" kijuhynbmlopOP) - (its-define-hangul "cls" "$(CD#(B" kijuhynbmlopP) - (its-define-hangul "cle" "$(CD$(B" kijuhynbmlopP) - (its-define-hangul "clf" "$(CD%(B" kijuhynbmlopP - (its-define-hangul "clfr" "$(CD&(B" kijuhynbmlopOP)) - (its-define-hangul "cla" "$(CD'(B" kijuhynbmlopP) - (its-define-hangul "clq" "$(CD((B" kijuhynbmlopP) - (its-define-hangul "clt" "$(CD)(B" kijuhynbmlopOP) - (its-define-hangul "cld" "$(CD*(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zk" "$(CD+(B" - (its-define-hangul "zkr" "$(CD,(B" kijuhynbmlopOP) - (its-define-hangul "zks" "$(CD-(B" kijuhynbmlopP) - (its-define-hangul "zkf" "$(CD.(B" kijuhynbmlopP) - (its-define-hangul "zka" "$(CD/(B" kijuhynbmlopP) - (its-define-hangul "zkq" "$(CD0(B" kijuhynbmlopP) - (its-define-hangul "zkt" "$(CD1(B" kijuhynbmlopOP) - (its-define-hangul "zkd" "$(CD2(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zo" "$(CD3(B" - (its-define-hangul "zor" "$(CD4(B" kijuhynbmlopOP) - (its-define-hangul "zos" "$(CD5(B" kijuhynbmlopP) - (its-define-hangul "zof" "$(CD6(B" kijuhynbmlopP) - (its-define-hangul "zoa" "$(CD7(B" kijuhynbmlopP) - (its-define-hangul "zoq" "$(CD8(B" kijuhynbmlopP) - (its-define-hangul "zot" "$(CD9(B" kijuhynbmlopOP) - (its-define-hangul "zoT" "$(CD:(B" kjhynmlop) - (its-define-hangul "zod" "$(CD;(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zi" "$(CD<(B" - (its-define-hangul "zir" "$(CD=(B" kijuhynbmlopOP) - (its-define-hangul "zid" "$(CD>(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zj" "$(CD?(B" - (its-define-hangul "zjr" "$(CD@(B" kijuhynbmlopOP) - (its-define-hangul "zjs" "$(CDA(B" kijuhynbmlopP) - (its-define-hangul "zje" "$(CDB(B" kijuhynbmlopP) - (its-define-hangul "zjf" "$(CDC(B" kijuhynbmlopP) - (its-define-hangul "zja" "$(CDD(B" kijuhynbmlopP) - (its-define-hangul "zjq" "$(CDE(B" kijuhynbmlopP) - (its-define-hangul "zjt" "$(CDF(B" kijuhynbmlopOP) - (its-define-hangul "zjT" "$(CDG(B" kjhynmlop) - (its-define-hangul "zjd" "$(CDH(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zp" "$(CDI(B" - (its-define-hangul "zpr" "$(CDJ(B" kijuhynbmlopOP) - (its-define-hangul "zps" "$(CDK(B" kijuhynbmlopP) - (its-define-hangul "zpf" "$(CDL(B" kijuhynbmlopP) - (its-define-hangul "zpa" "$(CDM(B" kijuhynbmlopP) - (its-define-hangul "zpq" "$(CDN(B" kijuhynbmlopP) - (its-define-hangul "zpt" "$(CDO(B" kijuhynbmlopOP) - (its-define-hangul "zpd" "$(CDP(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zu" "$(CDQ(B" - (its-define-hangul "zus" "$(CDR(B" kijuhynbmlopP) - (its-define-hangul "zuf" "$(CDS(B" kijuhynbmlopP) - (its-define-hangul "zua" "$(CDT(B" kijuhynbmlopP) - (its-define-hangul "zuq" "$(CDU(B" kijuhynbmlopP) - (its-define-hangul "zut" "$(CDV(B" kijuhynbmlopOP) - (its-define-hangul "zuT" "$(CDW(B" kjhynmlop) - (its-define-hangul "zud" "$(CDX(B" kijuhynbmlopOP)) - - (its-defrule-hangul "zP" "$(CDY(B") - - (its-defrule-hangul-2 "zh" "$(CDZ(B" - (its-define-hangul "zhr" "$(CD[(B" kijuhynbmlopOP) - (its-define-hangul "zhs" "$(CD\(B" kijuhynbmlopP) - (its-define-hangul "zhf" "$(CD](B" kijuhynbmlopP) - (its-define-hangul "zha" "$(CD^(B" kijuhynbmlopP) - (its-define-hangul "zhq" "$(CD_(B" kijuhynbmlopP) - (its-define-hangul "zht" "$(CD`(B" kijuhynbmlopOP) - (its-define-hangul "zhd" "$(CDa(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zhk" "$(CDb(B" - (its-define-hangul "zhkr" "$(CDc(B" kijuhynbmlopOP) - (its-define-hangul "zhks" "$(CDd(B" kijuhynbmlopP) - (its-define-hangul "zhkf" "$(CDe(B" kijuhynbmlopP) - (its-define-hangul "zhka" "$(CDf(B" kijuhynbmlopP) - (its-define-hangul "zhkd" "$(CDg(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zho" "$(CDh(B" - (its-define-hangul "zhod" "$(CDi(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zhl" "$(CDj(B" - (its-define-hangul "zhlf" "$(CDk(B" kijuhynbmlopP)) - - (its-defrule-hangul "zy" "$(CDl(B") - - (its-defrule-hangul-2 "zn" "$(CDm(B" - (its-define-hangul "znr" "$(CDn(B" kijuhynbmlopOP) - (its-define-hangul "znf" "$(CDp(B" kijuhynbmlopP) - (its-define-hangul "zna" "$(CDq(B" kijuhynbmlopP) - (its-define-hangul "znq" "$(CDr(B" kijuhynbmlopP) - (its-define-hangul "znt" "$(CDs(B" kijuhynbmlopOP) - (its-define-hangul "znd" "$(CDt(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "znj" "$(CDu(B" - (its-define-hangul "znjs" "$(CDv(B" kijuhynbmlopP) - (its-define-hangul "znjf" "$(CDw(B" kijuhynbmlopP) - (its-define-hangul "znjd" "$(CDx(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "znp" "$(CDy(B" - (its-define-hangul "znpd" "$(CDz(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "znl" "$(CD{(B" - (its-define-hangul "znlr" "$(CD|(B" kijuhynbmlopOP) - (its-define-hangul "znls" "$(CD}(B" kijuhynbmlopP) - (its-define-hangul "znlf" "$(CD~(B" kijuhynbmlopP) - (its-define-hangul "znla" "$(CE!(B" kijuhynbmlopP) - (its-define-hangul "znlq" "$(CE"(B" kijuhynbmlopP) - (its-define-hangul "znlt" "$(CE#(B" kijuhynbmlopOP) - (its-define-hangul "znld" "$(CE$(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zb" "$(CE%(B" - (its-define-hangul "zbs" "$(CE&(B" kijuhynbmlopP) - (its-define-hangul "zbf" "$(CE'(B" kijuhynbmlopP) - (its-define-hangul "zba" "$(CE((B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "zm" "$(CE)(B" - (its-define-hangul "zmr" "$(CE*(B" kijuhynbmlopOP) - (its-define-hangul "zms" "$(CE+(B" kijuhynbmlopP) - (its-define-hangul "zmf" "$(CE,(B" kijuhynbmlopP) - (its-define-hangul "zma" "$(CE-(B" kijuhynbmlopP) - (its-define-hangul "zmq" "$(CE.(B" kijuhynbmlopP) - (its-define-hangul "zmd" "$(CE/(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "zl" "$(CE0(B" - (its-define-hangul "zlr" "$(CE1(B" kijuhynbmlopOP) - (its-define-hangul "zls" "$(CE2(B" kijuhynbmlopP) - (its-define-hangul "zlf" "$(CE3(B" kijuhynbmlopP) - (its-define-hangul "zla" "$(CE4(B" kijuhynbmlopP) - (its-define-hangul "zlq" "$(CE5(B" kijuhynbmlopP) - (its-define-hangul "zlt" "$(CE6(B" kijuhynbmlopOP) - (its-define-hangul "zld" "$(CE7(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xk" "$(CE8(B" - (its-define-hangul "xkr" "$(CE9(B" kijuhynbmlopOP) - (its-define-hangul "xks" "$(CE:(B" kijuhynbmlopP) - (its-define-hangul "xkf" "$(CE;(B" kijuhynbmlopP - (its-define-hangul "xkfr" "$(CE<(B" kijuhynbmlopOP)) - (its-define-hangul "xka" "$(CE=(B" kijuhynbmlopP) - (its-define-hangul "xkq" "$(CE>(B" kijuhynbmlopP) - (its-define-hangul "xkt" "$(CE?(B" kijuhynbmlopOP) - (its-define-hangul "xkT" "$(CE@(B" kjhynmlop) - (its-define-hangul "xkd" "$(CEA(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xo" "$(CEB(B" - (its-define-hangul "xor" "$(CEC(B" kijuhynbmlopOP) - (its-define-hangul "xos" "$(CED(B" kijuhynbmlopP) - (its-define-hangul "xof" "$(CEE(B" kijuhynbmlopP) - (its-define-hangul "xoa" "$(CEF(B" kijuhynbmlopP) - (its-define-hangul "xoq" "$(CEG(B" kijuhynbmlopP) - (its-define-hangul "xot" "$(CEH(B" kijuhynbmlopOP) - (its-define-hangul "xoT" "$(CEI(B" kjhynmlop) - (its-define-hangul "xod" "$(CEJ(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xi" "$(CEK(B" - (its-define-hangul "xid" "$(CEL(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xj" "$(CEM(B" - (its-define-hangul "xjr" "$(CEN(B" kijuhynbmlopOP) - (its-define-hangul "xjs" "$(CEO(B" kijuhynbmlopP) - (its-define-hangul "xjf" "$(CEP(B" kijuhynbmlopP - (its-define-hangul "xjfa" "$(CEQ(B" kijuhynbmlopP)) - (its-define-hangul "xja" "$(CER(B" kijuhynbmlopP) - (its-define-hangul "xjq" "$(CES(B" kijuhynbmlopP) - (its-define-hangul "xjt" "$(CET(B" kijuhynbmlopOP) - (its-define-hangul "xjT" "$(CEU(B" kjhynmlop) - (its-define-hangul "xjd" "$(CEV(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xp" "$(CEW(B" - (its-define-hangul "xpr" "$(CEX(B" kijuhynbmlopOP) - (its-define-hangul "xps" "$(CEY(B" kijuhynbmlopP) - (its-define-hangul "xpf" "$(CEZ(B" kijuhynbmlopP) - (its-define-hangul "xpa" "$(CE[(B" kijuhynbmlopP) - (its-define-hangul "xpq" "$(CE\(B" kijuhynbmlopP) - (its-define-hangul "xpt" "$(CE](B" kijuhynbmlopOP) - (its-define-hangul "xpd" "$(CE^(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xu" "$(CE_(B" - (its-define-hangul "xus" "$(CE`(B" kijuhynbmlopP) - (its-define-hangul "xuT" "$(CEa(B" kjhynmlop)) - - (its-defrule-hangul-2 "xP" "$(CEb(B" - (its-define-hangul "xPs" "$(CEc(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "xh" "$(CEd(B" - (its-define-hangul "xhr" "$(CEe(B" kijuhynbmlopOP) - (its-define-hangul "xhs" "$(CEf(B" kijuhynbmlopP) - (its-define-hangul "xhf" "$(CEg(B" kijuhynbmlopP) - (its-define-hangul "xha" "$(CEh(B" kijuhynbmlopP) - (its-define-hangul "xhq" "$(CEi(B" kijuhynbmlopP) - (its-define-hangul "xht" "$(CEj(B" kijuhynbmlopOP) - (its-define-hangul "xhd" "$(CEk(B" kijuhynbmlopOP) - (its-define-hangul "xhv" "$(CEl(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "xhk" "$(CEm(B" - (its-define-hangul "xhks" "$(CEn(B" kijuhynbmlopP)) - - (its-defrule-hangul "xho" "$(CEo(B") - - (its-defrule-hangul-2 "xhl" "$(CEp(B" - (its-define-hangul "xhls" "$(CEq(B" kijuhynbmlopP) - (its-define-hangul "xhlt" "$(CEr(B" kijuhynbmlopOP) - (its-define-hangul "xhld" "$(CEs(B" kijuhynbmlopOP)) - - (its-defrule-hangul "xy" "$(CEt(B") - - (its-defrule-hangul-2 "xn" "$(CEu(B" - (its-define-hangul "xnr" "$(CEv(B" kijuhynbmlopOP) - (its-define-hangul "xns" "$(CEw(B" kijuhynbmlopP) - (its-define-hangul "xnf" "$(CEx(B" kijuhynbmlopP) - (its-define-hangul "xna" "$(CEy(B" kijuhynbmlopP) - (its-define-hangul "xnq" "$(CEz(B" kijuhynbmlopP) - (its-define-hangul "xnt" "$(CE{(B" kijuhynbmlopOP) - (its-define-hangul "xnd" "$(CE|(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xnj" "$(CE}(B" - (its-define-hangul "xnjT" "$(CE~(B" kjhynmlop)) - - (its-defrule-hangul "xnp" "$(CF!(B") - - (its-defrule-hangul-2 "xnl" "$(CF"(B" - (its-define-hangul "xnlr" "$(CF#(B" kijuhynbmlopOP) - (its-define-hangul "xnls" "$(CF$(B" kijuhynbmlopP) - (its-define-hangul "xnlf" "$(CF%(B" kijuhynbmlopP) - (its-define-hangul "xnla" "$(CF&(B" kijuhynbmlopP) - (its-define-hangul "xnlq" "$(CF'(B" kijuhynbmlopP) - (its-define-hangul "xnld" "$(CF((B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xb" "$(CF)(B" - (its-define-hangul "xbs" "$(CF*(B" kijuhynbmlopP) - (its-define-hangul "xbf" "$(CF+(B" kijuhynbmlopP) - (its-define-hangul "xba" "$(CF,(B" kijuhynbmlopP) - (its-define-hangul "xbd" "$(CF-(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xm" "$(CF.(B" - (its-define-hangul "xmr" "$(CF/(B" kijuhynbmlopOP) - (its-define-hangul "xms" "$(CF0(B" kijuhynbmlopP) - (its-define-hangul "xme" "$(CF1(B" kijuhynbmlopP) - (its-define-hangul "xmf" "$(CF2(B" kijuhynbmlopP - (its-define-hangul "xmfa" "$(CF3(B" kijuhynbmlopP)) - (its-define-hangul "xma" "$(CF4(B" kijuhynbmlopP) - (its-define-hangul "xmq" "$(CF5(B" kijuhynbmlopP) - (its-define-hangul "xmt" "$(CF6(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "xml" "$(CF7(B" - (its-define-hangul "xmls" "$(CF8(B" kijuhynbmlopP) - (its-define-hangul "xmlf" "$(CF9(B" kijuhynbmlopP) - (its-define-hangul "xmla" "$(CF:(B" kijuhynbmlopP) - (its-define-hangul "xmlq" "$(CF;(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "xl" "$(CF<(B" - (its-define-hangul "xlr" "$(CF=(B" kijuhynbmlopOP) - (its-define-hangul "xls" "$(CF>(B" kijuhynbmlopP) - (its-define-hangul "xlf" "$(CF?(B" kijuhynbmlopP) - (its-define-hangul "xla" "$(CF@(B" kijuhynbmlopP) - (its-define-hangul "xlq" "$(CFA(B" kijuhynbmlopP) - (its-define-hangul "xlt" "$(CFB(B" kijuhynbmlopOP) - (its-define-hangul "xld" "$(CFC(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vk" "$(CFD(B" - (its-define-hangul "vkr" "$(CFE(B" kijuhynbmlopOP) - (its-define-hangul "vkR" "$(CFF(B" kijuhynbmlopP) - (its-define-hangul "vks" "$(CFG(B" kijuhynbmlopP) - (its-define-hangul "vkf" "$(CFH(B" kijuhynbmlopP - (its-define-hangul "vkfa" "$(CFI(B" kijuhynbmlopP)) - (its-define-hangul "vka" "$(CFJ(B" kijuhynbmlopP) - (its-define-hangul "vkq" "$(CFK(B" kijuhynbmlopP) - (its-define-hangul "vkt" "$(CFL(B" kijuhynbmlopOP) - (its-define-hangul "vkT" "$(CFM(B" kjhynmlop) - (its-define-hangul "vkd" "$(CFN(B" kijuhynbmlopOP) - (its-define-hangul "vkx" "$(CFO(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "vo" "$(CFP(B" - (its-define-hangul "vor" "$(CFQ(B" kijuhynbmlopOP) - (its-define-hangul "vos" "$(CFR(B" kijuhynbmlopP) - (its-define-hangul "vof" "$(CFS(B" kijuhynbmlopP) - (its-define-hangul "voa" "$(CFT(B" kijuhynbmlopP) - (its-define-hangul "voq" "$(CFU(B" kijuhynbmlopP) - (its-define-hangul "vot" "$(CFV(B" kijuhynbmlopOP) - (its-define-hangul "voT" "$(CFW(B" kjhynmlop) - (its-define-hangul "vod" "$(CFX(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vi" "$(CFY(B" - (its-define-hangul "vir" "$(CFZ(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vj" "$(CF[(B" - (its-define-hangul "vjr" "$(CF\(B" kijuhynbmlopOP) - (its-define-hangul "vjs" "$(CF](B" kijuhynbmlopP) - (its-define-hangul "vja" "$(CF_(B" kijuhynbmlopP) - (its-define-hangul "vjq" "$(CF`(B" kijuhynbmlopP) - (its-define-hangul "vjt" "$(CFa(B" kijuhynbmlopOP) - (its-define-hangul "vjT" "$(CFb(B" kjhynmlop) - (its-define-hangul "vjd" "$(CFc(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vp" "$(CFd(B" - (its-define-hangul "vpr" "$(CFe(B" kijuhynbmlopOP) - (its-define-hangul "vps" "$(CFf(B" kijuhynbmlopP) - (its-define-hangul "vpf" "$(CFg(B" kijuhynbmlopP) - (its-define-hangul "vpa" "$(CFh(B" kijuhynbmlopP) - (its-define-hangul "vpq" "$(CFi(B" kijuhynbmlopP) - (its-define-hangul "vpt" "$(CFj(B" kijuhynbmlopOP) - (its-define-hangul "vpd" "$(CFk(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vu" "$(CFl(B" - (its-define-hangul "vus" "$(CFm(B" kijuhynbmlopP) - (its-define-hangul "vuf" "$(CFn(B" kijuhynbmlopP) - (its-define-hangul "vua" "$(CFo(B" kijuhynbmlopP) - (its-define-hangul "vuq" "$(CFp(B" kijuhynbmlopP) - (its-define-hangul "vuT" "$(CFq(B" kjhynmlop) - (its-define-hangul "vud" "$(CFr(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vP" "$(CFs(B" - (its-define-hangul "vPf" "$(CFt(B" kijuhynbmlopP) - (its-define-hangul "vPq" "$(CFu(B" kijuhynbmlopP) - (its-define-hangul "vPt" "$(CFv(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vh" "$(CFw(B" - (its-define-hangul "vhr" "$(CFx(B" kijuhynbmlopOP) - (its-define-hangul "vhs" "$(CFy(B" kijuhynbmlopP) - (its-define-hangul "vhf" "$(CFz(B" kijuhynbmlopP) - (its-define-hangul "vha" "$(CF{(B" kijuhynbmlopP) - (its-define-hangul "vhq" "$(CF|(B" kijuhynbmlopP) - (its-define-hangul "vht" "$(CF}(B" kijuhynbmlopOP) - (its-define-hangul "vhd" "$(CF~(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vhk" "$(CG!(B" - (its-define-hangul "vhkd" "$(CG"(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vhl" "$(CG#(B" - (its-define-hangul "vhls" "$(CG$(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "vy" "$(CG%(B" - (its-define-hangul "vys" "$(CG&(B" kijuhynbmlopP) - (its-define-hangul "vyf" "$(CG'(B" kijuhynbmlopP) - (its-define-hangul "vyq" "$(CG((B" kijuhynbmlopP) - (its-define-hangul "vyt" "$(CG)(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vn" "$(CG*(B" - (its-define-hangul "vnr" "$(CG+(B" kijuhynbmlopOP) - (its-define-hangul "vns" "$(CG,(B" kijuhynbmlopP) - (its-define-hangul "vne" "$(CG-(B" kijuhynbmlopP) - (its-define-hangul "vnf" "$(CG.(B" kijuhynbmlopP - (its-define-hangul "vnfa" "$(CG/(B" kijuhynbmlopP)) - (its-define-hangul "vna" "$(CG0(B" kijuhynbmlopP) - (its-define-hangul "vnq" "$(CG1(B" kijuhynbmlopP) - (its-define-hangul "vnt" "$(CG2(B" kijuhynbmlopOP) - (its-define-hangul "vnd" "$(CG3(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vnj" "$(CG4(B" - (its-define-hangul "vnjd" "$(CG5(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vnl" "$(CG6(B" - (its-define-hangul "vnls" "$(CG7(B" kijuhynbmlopP) - (its-define-hangul "vnlf" "$(CG8(B" kijuhynbmlopP) - (its-define-hangul "vnla" "$(CG9(B" kijuhynbmlopP) - (its-define-hangul "vnlt" "$(CG:(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vb" "$(CG;(B" - (its-define-hangul "vbs" "$(CG<(B" kijuhynbmlopP) - (its-define-hangul "vbf" "$(CG=(B" kijuhynbmlopP) - (its-define-hangul "vba" "$(CG>(B" kijuhynbmlopP) - (its-define-hangul "vbt" "$(CG?(B" kijuhynbmlopOP) - (its-define-hangul "vbd" "$(CG@(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vm" "$(CGA(B" - (its-define-hangul "vms" "$(CGB(B" kijuhynbmlopP) - (its-define-hangul "vmf" "$(CGC(B" kijuhynbmlopP) - (its-define-hangul "vma" "$(CGD(B" kijuhynbmlopP) - (its-define-hangul "vmq" "$(CGE(B" kijuhynbmlopP) - (its-define-hangul "vmt" "$(CGF(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "vl" "$(CGG(B" - (its-define-hangul "vlr" "$(CGH(B" kijuhynbmlopOP) - (its-define-hangul "vls" "$(CGI(B" kijuhynbmlopP) - (its-define-hangul "vlf" "$(CGJ(B" kijuhynbmlopP) - (its-define-hangul "vla" "$(CGK(B" kijuhynbmlopP) - (its-define-hangul "vlq" "$(CGL(B" kijuhynbmlopP) - (its-define-hangul "vlt" "$(CGM(B" kijuhynbmlopOP) - (its-define-hangul "vld" "$(CGN(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gk" "$(CGO(B" - (its-define-hangul "gkr" "$(CGP(B" kijuhynbmlopOP) - (its-define-hangul "gks" "$(CGQ(B" kijuhynbmlopP) - (its-define-hangul "gkf" "$(CGR(B" kijuhynbmlopP - (its-define-hangul "gkfx" "$(CGS(B" kijuhynbmlopP)) - (its-define-hangul "gka" "$(CGT(B" kijuhynbmlopP) - (its-define-hangul "gkq" "$(CGU(B" kijuhynbmlopP) - (its-define-hangul "gkt" "$(CGV(B" kijuhynbmlopOP) - (its-define-hangul "gkd" "$(CGW(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "go" "$(CGX(B" - (its-define-hangul "gor" "$(CGY(B" kijuhynbmlopOP) - (its-define-hangul "gos" "$(CGZ(B" kijuhynbmlopP) - (its-define-hangul "gof" "$(CG[(B" kijuhynbmlopP) - (its-define-hangul "goa" "$(CG\(B" kijuhynbmlopP) - (its-define-hangul "goq" "$(CG](B" kijuhynbmlopP) - (its-define-hangul "got" "$(CG^(B" kijuhynbmlopOP) - (its-define-hangul "goT" "$(CG_(B" kjhynmlop) - (its-define-hangul "god" "$(CG`(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gi" "$(CGa(B" - (its-define-hangul "gid" "$(CGb(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gj" "$(CGc(B" - (its-define-hangul "gjr" "$(CGd(B" kijuhynbmlopOP) - (its-define-hangul "gjs" "$(CGe(B" kijuhynbmlopP) - (its-define-hangul "gjf" "$(CGf(B" kijuhynbmlopP - (its-define-hangul "gjfa" "$(CGg(B" kijuhynbmlopP)) - (its-define-hangul "gja" "$(CGh(B" kijuhynbmlopP) - (its-define-hangul "gjq" "$(CGi(B" kijuhynbmlopP) - (its-define-hangul "gjt" "$(CGj(B" kijuhynbmlopOP) - (its-define-hangul "gjd" "$(CGk(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gp" "$(CGl(B" - (its-define-hangul "gpr" "$(CGm(B" kijuhynbmlopOP) - (its-define-hangul "gps" "$(CGn(B" kijuhynbmlopP) - (its-define-hangul "gpf" "$(CGo(B" kijuhynbmlopP) - (its-define-hangul "gpa" "$(CGp(B" kijuhynbmlopP) - (its-define-hangul "gpq" "$(CGq(B" kijuhynbmlopP) - (its-define-hangul "gpt" "$(CGr(B" kijuhynbmlopOP) - (its-define-hangul "gpd" "$(CGs(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gu" "$(CGt(B" - (its-define-hangul "gur" "$(CGu(B" kijuhynbmlopOP) - (its-define-hangul "gus" "$(CGv(B" kijuhynbmlopP) - (its-define-hangul "guf" "$(CGw(B" kijuhynbmlopP) - (its-define-hangul "gua" "$(CGx(B" kijuhynbmlopP) - (its-define-hangul "guq" "$(CGy(B" kijuhynbmlopP) - (its-define-hangul "gut" "$(CGz(B" kijuhynbmlopOP) - (its-define-hangul "guT" "$(CG{(B" kjhynmlop) - (its-define-hangul "gud" "$(CG|(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gP" "$(CG}(B" - (its-define-hangul "gPs" "$(CG~(B" kijuhynbmlopP) - (its-define-hangul "gPf" "$(CH!(B" kijuhynbmlopP) - (its-define-hangul "gPq" "$(CH"(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "gh" "$(CH#(B" - (its-define-hangul "ghr" "$(CH$(B" kijuhynbmlopOP) - (its-define-hangul "ghs" "$(CH%(B" kijuhynbmlopP) - (its-define-hangul "ghf" "$(CH&(B" kijuhynbmlopP - (its-define-hangul "ghfx" "$(CH'(B" kijuhynbmlopP)) - (its-define-hangul "gha" "$(CH((B" kijuhynbmlopP) - (its-define-hangul "ghq" "$(CH)(B" kijuhynbmlopP) - (its-define-hangul "ght" "$(CH*(B" kijuhynbmlopOP) - (its-define-hangul "ghd" "$(CH+(B" kijuhynbmlopOP) - (its-define-hangul "ghx" "$(CH,(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "ghk" "$(CH-(B" - (its-define-hangul "ghkr" "$(CH.(B" kijuhynbmlopOP) - (its-define-hangul "ghks" "$(CH/(B" kijuhynbmlopP) - (its-define-hangul "ghkf" "$(CH0(B" kijuhynbmlopP) - (its-define-hangul "ghkt" "$(CH1(B" kijuhynbmlopOP) - (its-define-hangul "ghkd" "$(CH2(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gho" "$(CH3(B" - (its-define-hangul "ghor" "$(CH4(B" kijuhynbmlopOP) - (its-define-hangul "ghos" "$(CH5(B" kijuhynbmlopP) - (its-define-hangul "ghot" "$(CH6(B" kijuhynbmlopOP) - (its-define-hangul "ghod" "$(CH7(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "ghl" "$(CH8(B" - (its-define-hangul "ghlr" "$(CH9(B" kijuhynbmlopOP) - (its-define-hangul "ghls" "$(CH:(B" kijuhynbmlopP) - (its-define-hangul "ghlf" "$(CH;(B" kijuhynbmlopP) - (its-define-hangul "ghlq" "$(CH<(B" kijuhynbmlopP) - (its-define-hangul "ghlt" "$(CH=(B" kijuhynbmlopOP) - (its-define-hangul "ghld" "$(CH>(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gy" "$(CH?(B" - (its-define-hangul "gys" "$(CH@(B" kijuhynbmlopP) - (its-define-hangul "gyf" "$(CHA(B" kijuhynbmlopP) - (its-define-hangul "gyq" "$(CHB(B" kijuhynbmlopP) - (its-define-hangul "gyt" "$(CHC(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gn" "$(CHD(B" - (its-define-hangul "gnr" "$(CHE(B" kijuhynbmlopOP) - (its-define-hangul "gns" "$(CHF(B" kijuhynbmlopP) - (its-define-hangul "gnf" "$(CHG(B" kijuhynbmlopP - (its-define-hangul "gnfx" "$(CHH(B" kijuhynbmlopP)) - (its-define-hangul "gna" "$(CHI(B" kijuhynbmlopP) - (its-define-hangul "gnt" "$(CHJ(B" kijuhynbmlopOP) - (its-define-hangul "gnd" "$(CHK(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gnj" "$(CHL(B" - (its-define-hangul "gnjs" "$(CHM(B" kijuhynbmlopP) - (its-define-hangul "gnjf" "$(CHN(B" kijuhynbmlopP) - (its-define-hangul "gnja" "$(CHO(B" kijuhynbmlopP) - (its-define-hangul "gnjd" "$(CHP(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gnp" "$(CHQ(B" - (its-define-hangul "gnpr" "$(CHR(B" kijuhynbmlopOP) - (its-define-hangul "gnps" "$(CHS(B" kijuhynbmlopP) - (its-define-hangul "gnpf" "$(CHT(B" kijuhynbmlopP) - (its-define-hangul "gnpd" "$(CHU(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gnl" "$(CHV(B" - (its-define-hangul "gnlr" "$(CHW(B" kijuhynbmlopOP) - (its-define-hangul "gnls" "$(CHX(B" kijuhynbmlopP) - (its-define-hangul "gnlf" "$(CHY(B" kijuhynbmlopP) - (its-define-hangul "gnla" "$(CHZ(B" kijuhynbmlopP) - (its-define-hangul "gnlq" "$(CH[(B" kijuhynbmlopP) - (its-define-hangul "gnlt" "$(CH\(B" kijuhynbmlopOP) - (its-define-hangul "gnld" "$(CH](B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gb" "$(CH^(B" - (its-define-hangul "gbr" "$(CH_(B" kijuhynbmlopOP) - (its-define-hangul "gbs" "$(CH`(B" kijuhynbmlopP) - (its-define-hangul "gbf" "$(CHa(B" kijuhynbmlopP) - (its-define-hangul "gba" "$(CHb(B" kijuhynbmlopP) - (its-define-hangul "gbt" "$(CHc(B" kijuhynbmlopOP) - (its-define-hangul "gbd" "$(CHd(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gm" "$(CHe(B" - (its-define-hangul "gmr" "$(CHf(B" kijuhynbmlopOP) - (its-define-hangul "gms" "$(CHg(B" kijuhynbmlopP - (its-define-hangul "gmsg" "$(CHh(B" kijuhynbmlopP)) - (its-define-hangul "gme" "$(CHi(B" kijuhynbmlopP) - (its-define-hangul "gmf" "$(CHj(B" kijuhynbmlopP - (its-define-hangul "gmfr" "$(CHk(B" kijuhynbmlopOP)) - (its-define-hangul "gma" "$(CHl(B" kijuhynbmlopP) - (its-define-hangul "gmq" "$(CHm(B" kijuhynbmlopP) - (its-define-hangul "gmt" "$(CHn(B" kijuhynbmlopOP) - (its-define-hangul "gmd" "$(CHo(B" kijuhynbmlopOP) - (its-define-hangul "gmx" "$(CHp(B" kijuhynbmlopP)) - - (its-defrule-hangul-2 "gml" "$(CHq(B" - (its-define-hangul "gmls" "$(CHr(B" kijuhynbmlopP) - (its-define-hangul "gmlf" "$(CHs(B" kijuhynbmlopP) - (its-define-hangul "gmla" "$(CHt(B" kijuhynbmlopP) - (its-define-hangul "gmlq" "$(CHu(B" kijuhynbmlopP) - (its-define-hangul "gmld" "$(CHv(B" kijuhynbmlopOP)) - - (its-defrule-hangul-2 "gl" "$(CHw(B" - (its-define-hangul "glr" "$(CHx(B" kijuhynbmlopOP) - (its-define-hangul "gls" "$(CHy(B" kijuhynbmlopP) - (its-define-hangul "glf" "$(CHz(B" kijuhynbmlopP) - (its-define-hangul "gla" "$(CH{(B" kijuhynbmlopP) - (its-define-hangul "glq" "$(CH|(B" kijuhynbmlopP) - (its-define-hangul "glt" "$(CH}(B" kijuhynbmlopOP) - (its-define-hangul "gld" "$(CH~(B" kijuhynbmlopOP)) + (its-define-hangul-key "r" "$(C$!(B") + (its-define-hangul-key "s" "$(C$$(B") + (its-define-hangul-key "e" "$(C$'(B") + (its-define-hangul-key "f" "$(C$)(B") + (its-define-hangul-key "a" "$(C$1(B") + (its-define-hangul-key "q" "$(C$2(B") + (its-define-hangul-key "t" "$(C$5(B") + (its-define-hangul-key "d" "$(C$7(B") + (its-define-hangul-key "w" "$(C$8(B") + (its-define-hangul-key "c" "$(C$:(B") + (its-define-hangul-key "z" "$(C$;(B") + (its-define-hangul-key "x" "$(C$<(B") + (its-define-hangul-key "v" "$(C$=(B") + (its-define-hangul-key "g" "$(C$>(B") + (its-define-hangul-key "R" "$(C$"(B") + (its-define-hangul-key "E" "$(C$((B") + (its-define-hangul-key "Q" "$(C$3(B") + (its-define-hangul-key "T" "$(C$6(B") + (its-define-hangul-key "W" "$(C$9(B") + + (its-define-hangul-key "k" "$(C$?(B") + (its-define-hangul-key "i" "$(C$A(B") + (its-define-hangul-key "j" "$(C$C(B") + (its-define-hangul-key "u" "$(C$E(B") + (its-define-hangul-key "h" "$(C$G(B") + (its-define-hangul-key "y" "$(C$K(B") + (its-define-hangul-key "n" "$(C$L(B") + (its-define-hangul-key "b" "$(C$P(B") + (its-define-hangul-key "m" "$(C$Q(B") + (its-define-hangul-key "l" "$(C$S(B") + (its-define-hangul-key "o" "$(C$@(B") + (its-define-hangul-key "p" "$(C$D(B") + (its-define-hangul-key "O" "$(C$B(B") + (its-define-hangul-key "P" "$(C$F(B") + + (its-define-hangul + ("$(C$!$?(B" "$(C0!(B") + ("$(C$!$?$!(B" "$(C0"(B") + ("$(C$!$?$$(B" "$(C0#(B") + ("$(C$!$?$'(B" "$(C0$(B") + ("$(C$!$?$)(B" "$(C0%(B") + ("$(C$!$?$)$!(B" "$(C0&(B") + ("$(C$!$?$)$1(B" "$(C0'(B") + ("$(C$!$?$1(B" "$(C0((B") + ("$(C$!$?$2(B" "$(C0)(B") + ("$(C$!$?$2$5(B" "$(C0*(B") + ("$(C$!$?$5(B" "$(C0+(B") + ("$(C$!$?$6(B" "$(C0,(B") + ("$(C$!$?$7(B" "$(C0-(B") + ("$(C$!$?$8(B" "$(C0.(B") + ("$(C$!$?$:(B" "$(C0/(B") + ("$(C$!$?$<(B" "$(C00(B") + ("$(C$!$?$=(B" "$(C01(B") + ("$(C$!$?$>(B" "$(C02(B") + + ("$(C$!$@(B" "$(C03(B") + ("$(C$!$@$!(B" "$(C04(B") + ("$(C$!$@$$(B" "$(C05(B") + ("$(C$!$@$)(B" "$(C06(B") + ("$(C$!$@$1(B" "$(C07(B") + ("$(C$!$@$2(B" "$(C08(B") + ("$(C$!$@$5(B" "$(C09(B") + ("$(C$!$@$6(B" "$(C0:(B") + ("$(C$!$@$7(B" "$(C0;(B") + + ("$(C$!$A(B" "$(C0<(B") + ("$(C$!$A$!(B" "$(C0=(B") + ("$(C$!$A$$(B" "$(C0>(B") + ("$(C$!$A$)(B" "$(C0?(B") + ("$(C$!$A$5(B" "$(C0@(B") + ("$(C$!$A$7(B" "$(C0A(B") + + ("$(C$!$B(B" "$(C0B(B") + ("$(C$!$B$$(B" "$(C0C(B") + ("$(C$!$B$)(B" "$(C0D(B") + + ("$(C$!$C(B" "$(C0E(B") + ("$(C$!$C$!(B" "$(C0F(B") + ("$(C$!$C$$(B" "$(C0G(B") + ("$(C$!$C$'(B" "$(C0H(B") + ("$(C$!$C$)(B" "$(C0I(B") + ("$(C$!$C$)$1(B" "$(C0J(B") + ("$(C$!$C$1(B" "$(C0K(B") + ("$(C$!$C$2(B" "$(C0L(B") + ("$(C$!$C$5(B" "$(C0M(B") + ("$(C$!$C$6(B" "$(C0N(B") + ("$(C$!$C$7(B" "$(C0O(B") + ("$(C$!$C$8(B" "$(C0P(B") + ("$(C$!$C$<(B" "$(C0Q(B") + ("$(C$!$C$=(B" "$(C0R(B") + ("$(C$!$C$>(B" "$(C0S(B") + + ("$(C$!$D(B" "$(C0T(B") + ("$(C$!$D$$(B" "$(C0U(B") + ("$(C$!$D$)(B" "$(C0V(B") + ("$(C$!$D$1(B" "$(C0W(B") + ("$(C$!$D$2(B" "$(C0X(B") + ("$(C$!$D$5(B" "$(C0Y(B") + ("$(C$!$D$6(B" "$(C0Z(B") + ("$(C$!$D$7(B" "$(C0[(B") + + ("$(C$!$E(B" "$(C0\(B") + ("$(C$!$E$!(B" "$(C0](B") + ("$(C$!$E$"(B" "$(C0^(B") + ("$(C$!$E$$(B" "$(C0_(B") + ("$(C$!$E$'(B" "$(C0`(B") + ("$(C$!$E$)(B" "$(C0a(B") + ("$(C$!$E$1(B" "$(C0b(B") + ("$(C$!$E$2(B" "$(C0c(B") + ("$(C$!$E$5(B" "$(C0d(B") + ("$(C$!$E$6(B" "$(C0e(B") + ("$(C$!$E$7(B" "$(C0f(B") + ("$(C$!$E$<(B" "$(C0g(B") + + ("$(C$!$F(B" "$(C0h(B") + ("$(C$!$F$$(B" "$(C0i(B") + ("$(C$!$F$)(B" "$(C0j(B") + ("$(C$!$F$2(B" "$(C0k(B") + ("$(C$!$F$5(B" "$(C0l(B") + + ("$(C$!$G(B" "$(C0m(B") + ("$(C$!$G$!(B" "$(C0n(B") + ("$(C$!$G$$(B" "$(C0o(B") + ("$(C$!$G$'(B" "$(C0p(B") + ("$(C$!$G$)(B" "$(C0q(B") + ("$(C$!$G$)$1(B" "$(C0r(B") + ("$(C$!$G$)$5(B" "$(C0s(B") + ("$(C$!$G$)$>(B" "$(C0t(B") + ("$(C$!$G$1(B" "$(C0u(B") + ("$(C$!$G$2(B" "$(C0v(B") + ("$(C$!$G$5(B" "$(C0w(B") + ("$(C$!$G$7(B" "$(C0x(B") + ("$(C$!$G$8(B" "$(C0y(B") + + ("$(C$!$G$?(B" "$(C0z(B") + ("$(C$!$G$?$!(B" "$(C0{(B") + ("$(C$!$G$?$$(B" "$(C0|(B") + ("$(C$!$G$?$)(B" "$(C0}(B") + ("$(C$!$G$?$)$1(B" "$(C0~(B") + ("$(C$!$G$?$1(B" "$(C1!(B") + ("$(C$!$G$?$2(B" "$(C1"(B") + ("$(C$!$G$?$5(B" "$(C1#(B") + ("$(C$!$G$?$7(B" "$(C1$(B") + + ("$(C$!$G$@(B" "$(C1%(B") + ("$(C$!$G$@$$(B" "$(C1&(B") + ("$(C$!$G$@$)(B" "$(C1'(B") + ("$(C$!$G$@$2(B" "$(C1((B") + ("$(C$!$G$@$6(B" "$(C1)(B") + ("$(C$!$G$@$7(B" "$(C1*(B") + + ("$(C$!$G$S(B" "$(C1+(B") + ("$(C$!$G$S$!(B" "$(C1,(B") + ("$(C$!$G$S$$(B" "$(C1-(B") + ("$(C$!$G$S$)(B" "$(C1.(B") + ("$(C$!$G$S$1(B" "$(C1/(B") + ("$(C$!$G$S$2(B" "$(C10(B") + ("$(C$!$G$S$5(B" "$(C11(B") + ("$(C$!$G$S$7(B" "$(C12(B") + + ("$(C$!$K(B" "$(C13(B") + ("$(C$!$K$$(B" "$(C14(B") + ("$(C$!$K$)(B" "$(C15(B") + ("$(C$!$K$2(B" "$(C16(B") + ("$(C$!$K$5(B" "$(C17(B") + + ("$(C$!$L(B" "$(C18(B") + ("$(C$!$L$!(B" "$(C19(B") + ("$(C$!$L$$(B" "$(C1:(B") + ("$(C$!$L$'(B" "$(C1;(B") + ("$(C$!$L$)(B" "$(C1<(B") + ("$(C$!$L$)$!(B" "$(C1=(B") + ("$(C$!$L$)$1(B" "$(C1>(B") + ("$(C$!$L$)$>(B" "$(C1?(B") + ("$(C$!$L$1(B" "$(C1@(B") + ("$(C$!$L$2(B" "$(C1A(B") + ("$(C$!$L$5(B" "$(C1B(B") + ("$(C$!$L$7(B" "$(C1C(B") + ("$(C$!$L$8(B" "$(C1D(B") + + ("$(C$!$L$C(B" "$(C1E(B") + ("$(C$!$L$C$!(B" "$(C1F(B") + ("$(C$!$L$C$$(B" "$(C1G(B") + ("$(C$!$L$C$)(B" "$(C1H(B") + ("$(C$!$L$C$6(B" "$(C1I(B") + ("$(C$!$L$C$7(B" "$(C1J(B") + + ("$(C$!$L$D(B" "$(C1K(B") + ("$(C$!$L$D$5(B" "$(C1L(B") + + ("$(C$!$L$S(B" "$(C1M(B") + ("$(C$!$L$S$!(B" "$(C1N(B") + ("$(C$!$L$S$$(B" "$(C1O(B") + ("$(C$!$L$S$)(B" "$(C1P(B") + ("$(C$!$L$S$1(B" "$(C1Q(B") + ("$(C$!$L$S$2(B" "$(C1R(B") + ("$(C$!$L$S$5(B" "$(C1S(B") + + ("$(C$!$P(B" "$(C1T(B") + ("$(C$!$P$$(B" "$(C1U(B") + ("$(C$!$P$)(B" "$(C1V(B") + + ("$(C$!$Q(B" "$(C1W(B") + ("$(C$!$Q$!(B" "$(C1X(B") + ("$(C$!$Q$$(B" "$(C1Y(B") + ("$(C$!$Q$'(B" "$(C1Z(B") + ("$(C$!$Q$)(B" "$(C1[(B") + ("$(C$!$Q$)$!(B" "$(C1\(B") + ("$(C$!$Q$1(B" "$(C1](B") + ("$(C$!$Q$2(B" "$(C1^(B") + ("$(C$!$Q$5(B" "$(C1_(B") + ("$(C$!$Q$7(B" "$(C1`(B") + + ("$(C$!$Q$S(B" "$(C1a(B") + + ("$(C$!$S(B" "$(C1b(B") + ("$(C$!$S$!(B" "$(C1c(B") + ("$(C$!$S$$(B" "$(C1d(B") + ("$(C$!$S$'(B" "$(C1e(B") + ("$(C$!$S$)(B" "$(C1f(B") + ("$(C$!$S$)$1(B" "$(C1g(B") + ("$(C$!$S$1(B" "$(C1h(B") + ("$(C$!$S$2(B" "$(C1i(B") + ("$(C$!$S$5(B" "$(C1j(B") + ("$(C$!$S$7(B" "$(C1k(B") + ("$(C$!$S$8(B" "$(C1l(B") + ("$(C$!$S$=(B" "$(C1m(B") + + ("$(C$"$?(B" "$(C1n(B") + ("$(C$"$?$!(B" "$(C1o(B") + ("$(C$"$?$"(B" "$(C1p(B") + ("$(C$"$?$$(B" "$(C1q(B") + ("$(C$"$?$)(B" "$(C1r(B") + ("$(C$"$?$)$1(B" "$(C1s(B") + ("$(C$"$?$1(B" "$(C1t(B") + ("$(C$"$?$2(B" "$(C1u(B") + ("$(C$"$?$5(B" "$(C1v(B") + ("$(C$"$?$6(B" "$(C1w(B") + ("$(C$"$?$7(B" "$(C1x(B") + ("$(C$"$?$<(B" "$(C1y(B") + + ("$(C$"$@(B" "$(C1z(B") + ("$(C$"$@$!(B" "$(C1{(B") + ("$(C$"$@$$(B" "$(C1|(B") + ("$(C$"$@$)(B" "$(C1}(B") + ("$(C$"$@$1(B" "$(C1~(B") + ("$(C$"$@$2(B" "$(C2!(B") + ("$(C$"$@$5(B" "$(C2"(B") + ("$(C$"$@$6(B" "$(C2#(B") + ("$(C$"$@$7(B" "$(C2$(B") + + ("$(C$"$A(B" "$(C2%(B") + ("$(C$"$A$!(B" "$(C2&(B") + ("$(C$"$A$)(B" "$(C2'(B") + + ("$(C$"$C(B" "$(C2((B") + ("$(C$"$C$!(B" "$(C2)(B") + ("$(C$"$C$"(B" "$(C2*(B") + ("$(C$"$C$$(B" "$(C2+(B") + ("$(C$"$C$)(B" "$(C2,(B") + ("$(C$"$C$1(B" "$(C2-(B") + ("$(C$"$C$2(B" "$(C2.(B") + ("$(C$"$C$5(B" "$(C2/(B") + ("$(C$"$C$6(B" "$(C20(B") + ("$(C$"$C$7(B" "$(C21(B") + + ("$(C$"$D(B" "$(C22(B") + ("$(C$"$D$!(B" "$(C23(B") + ("$(C$"$D$$(B" "$(C24(B") + ("$(C$"$D$1(B" "$(C25(B") + ("$(C$"$D$5(B" "$(C26(B") + ("$(C$"$D$7(B" "$(C27(B") + + ("$(C$"$E(B" "$(C28(B") + ("$(C$"$E$$(B" "$(C29(B") + ("$(C$"$E$)(B" "$(C2:(B") + ("$(C$"$E$5(B" "$(C2;(B") + ("$(C$"$E$6(B" "$(C2<(B") + ("$(C$"$E$<(B" "$(C2=(B") + + ("$(C$"$F(B" "$(C2>(B") + + ("$(C$"$G(B" "$(C2?(B") + ("$(C$"$G$!(B" "$(C2@(B") + ("$(C$"$G$$(B" "$(C2A(B") + ("$(C$"$G$$$>(B" "$(C2B(B") + ("$(C$"$G$)(B" "$(C2C(B") + ("$(C$"$G$1(B" "$(C2D(B") + ("$(C$"$G$2(B" "$(C2E(B") + ("$(C$"$G$5(B" "$(C2F(B") + ("$(C$"$G$7(B" "$(C2G(B") + ("$(C$"$G$8(B" "$(C2H(B") + ("$(C$"$G$:(B" "$(C2I(B") + + ("$(C$"$G$?(B" "$(C2J(B") + ("$(C$"$G$?$!(B" "$(C2K(B") + ("$(C$"$G$?$)(B" "$(C2L(B") + ("$(C$"$G$?$6(B" "$(C2M(B") + ("$(C$"$G$?$7(B" "$(C2N(B") + + ("$(C$"$G$@(B" "$(C2O(B") + ("$(C$"$G$@$!(B" "$(C2P(B") + ("$(C$"$G$@$7(B" "$(C2Q(B") + + ("$(C$"$G$S(B" "$(C2R(B") + ("$(C$"$G$S$$(B" "$(C2S(B") + ("$(C$"$G$S$)(B" "$(C2T(B") + ("$(C$"$G$S$1(B" "$(C2U(B") + ("$(C$"$G$S$2(B" "$(C2V(B") + ("$(C$"$G$S$7(B" "$(C2W(B") + + ("$(C$"$K(B" "$(C2X(B") + + ("$(C$"$L(B" "$(C2Y(B") + ("$(C$"$L$!(B" "$(C2Z(B") + ("$(C$"$L$$(B" "$(C2[(B") + ("$(C$"$L$)(B" "$(C2\(B") + ("$(C$"$L$)$>(B" "$(C2](B") + ("$(C$"$L$1(B" "$(C2^(B") + ("$(C$"$L$2(B" "$(C2_(B") + ("$(C$"$L$5(B" "$(C2`(B") + ("$(C$"$L$7(B" "$(C2a(B") + ("$(C$"$L$8(B" "$(C2b(B") + + ("$(C$"$L$C(B" "$(C2c(B") + ("$(C$"$L$C$)(B" "$(C2d(B") + ("$(C$"$L$C$6(B" "$(C2e(B") + ("$(C$"$L$C$7(B" "$(C2f(B") + + ("$(C$"$L$D(B" "$(C2g(B") + ("$(C$"$L$D$!(B" "$(C2h(B") + ("$(C$"$L$D$$(B" "$(C2i(B") + ("$(C$"$L$D$)(B" "$(C2j(B") + ("$(C$"$L$D$1(B" "$(C2k(B") + ("$(C$"$L$D$2(B" "$(C2l(B") + ("$(C$"$L$D$6(B" "$(C2m(B") + + ("$(C$"$L$S(B" "$(C2n(B") + ("$(C$"$L$S$$(B" "$(C2o(B") + ("$(C$"$L$S$)(B" "$(C2p(B") + ("$(C$"$L$S$1(B" "$(C2q(B") + ("$(C$"$L$S$2(B" "$(C2r(B") + + ("$(C$"$P(B" "$(C2s(B") + + ("$(C$"$Q(B" "$(C2t(B") + ("$(C$"$Q$!(B" "$(C2u(B") + ("$(C$"$Q$$(B" "$(C2v(B") + ("$(C$"$Q$$$>(B" "$(C2w(B") + ("$(C$"$Q$)(B" "$(C2x(B") + ("$(C$"$Q$)$1(B" "$(C2y(B") + ("$(C$"$Q$)$>(B" "$(C2z(B") + ("$(C$"$Q$1(B" "$(C2{(B") + ("$(C$"$Q$2(B" "$(C2|(B") + ("$(C$"$Q$5(B" "$(C2}(B") + ("$(C$"$Q$7(B" "$(C2~(B") + ("$(C$"$Q$<(B" "$(C3!(B") + + ("$(C$"$S(B" "$(C3"(B") + ("$(C$"$S$!(B" "$(C3#(B") + ("$(C$"$S$$(B" "$(C3$(B") + ("$(C$"$S$)(B" "$(C3%(B") + ("$(C$"$S$1(B" "$(C3&(B") + ("$(C$"$S$2(B" "$(C3'(B") + ("$(C$"$S$5(B" "$(C3((B") + ("$(C$"$S$7(B" "$(C3)(B") + + ("$(C$$$?(B" "$(C3*(B") + ("$(C$$$?$!(B" "$(C3+(B") + ("$(C$$$?$"(B" "$(C3,(B") + ("$(C$$$?$$(B" "$(C3-(B") + ("$(C$$$?$'(B" "$(C3.(B") + ("$(C$$$?$)(B" "$(C3/(B") + ("$(C$$$?$)$!(B" "$(C30(B") + ("$(C$$$?$)$1(B" "$(C31(B") + ("$(C$$$?$1(B" "$(C32(B") + ("$(C$$$?$2(B" "$(C33(B") + ("$(C$$$?$5(B" "$(C34(B") + ("$(C$$$?$6(B" "$(C35(B") + ("$(C$$$?$7(B" "$(C36(B") + ("$(C$$$?$8(B" "$(C37(B") + ("$(C$$$?$:(B" "$(C38(B") + ("$(C$$$?$<(B" "$(C39(B") + ("$(C$$$?$>(B" "$(C3:(B") + + ("$(C$$$@(B" "$(C3;(B") + ("$(C$$$@$!(B" "$(C3<(B") + ("$(C$$$@$$(B" "$(C3=(B") + ("$(C$$$@$)(B" "$(C3>(B") + ("$(C$$$@$1(B" "$(C3?(B") + ("$(C$$$@$2(B" "$(C3@(B") + ("$(C$$$@$5(B" "$(C3A(B") + ("$(C$$$@$6(B" "$(C3B(B") + ("$(C$$$@$7(B" "$(C3C(B") + + ("$(C$$$A(B" "$(C3D(B") + ("$(C$$$A$!(B" "$(C3E(B") + ("$(C$$$A$$(B" "$(C3F(B") + ("$(C$$$A$)(B" "$(C3G(B") + ("$(C$$$A$1(B" "$(C3H(B") + ("$(C$$$A$7(B" "$(C3I(B") + + ("$(C$$$C(B" "$(C3J(B") + ("$(C$$$C$!(B" "$(C3K(B") + ("$(C$$$C$!$5(B" "$(C3L(B") + ("$(C$$$C$$(B" "$(C3M(B") + ("$(C$$$C$)(B" "$(C3N(B") + ("$(C$$$C$)$1(B" "$(C3O(B") + ("$(C$$$C$)$2(B" "$(C3P(B") + ("$(C$$$C$1(B" "$(C3Q(B") + ("$(C$$$C$2(B" "$(C3R(B") + ("$(C$$$C$5(B" "$(C3S(B") + ("$(C$$$C$6(B" "$(C3T(B") + ("$(C$$$C$7(B" "$(C3U(B") + ("$(C$$$C$>(B" "$(C3V(B") + + ("$(C$$$D(B" "$(C3W(B") + ("$(C$$$D$!(B" "$(C3X(B") + ("$(C$$$D$$(B" "$(C3Y(B") + ("$(C$$$D$)(B" "$(C3Z(B") + ("$(C$$$D$1(B" "$(C3[(B") + ("$(C$$$D$2(B" "$(C3\(B") + ("$(C$$$D$5(B" "$(C3](B") + ("$(C$$$D$6(B" "$(C3^(B") + ("$(C$$$D$7(B" "$(C3_(B") + + ("$(C$$$E(B" "$(C3`(B") + ("$(C$$$E$!(B" "$(C3a(B") + ("$(C$$$E$$(B" "$(C3b(B") + ("$(C$$$E$)(B" "$(C3c(B") + ("$(C$$$E$1(B" "$(C3d(B") + ("$(C$$$E$2(B" "$(C3e(B") + ("$(C$$$E$6(B" "$(C3f(B") + ("$(C$$$E$7(B" "$(C3g(B") + ("$(C$$$E$;(B" "$(C3h(B") + + ("$(C$$$F(B" "$(C3i(B") + ("$(C$$$F$$(B" "$(C3j(B") + + ("$(C$$$G(B" "$(C3k(B") + ("$(C$$$G$!(B" "$(C3l(B") + ("$(C$$$G$$(B" "$(C3m(B") + ("$(C$$$G$)(B" "$(C3n(B") + ("$(C$$$G$)$1(B" "$(C3o(B") + ("$(C$$$G$1(B" "$(C3p(B") + ("$(C$$$G$2(B" "$(C3q(B") + ("$(C$$$G$5(B" "$(C3r(B") + ("$(C$$$G$7(B" "$(C3s(B") + ("$(C$$$G$=(B" "$(C3t(B") + ("$(C$$$G$>(B" "$(C3u(B") + + ("$(C$$$G$?(B" "$(C3v(B") + ("$(C$$$G$?$$(B" "$(C3w(B") + ("$(C$$$G$?$)(B" "$(C3x(B") + ("$(C$$$G$?$6(B" "$(C3y(B") + + ("$(C$$$G$S(B" "$(C3z(B") + ("$(C$$$G$S$$(B" "$(C3{(B") + ("$(C$$$G$S$)(B" "$(C3|(B") + ("$(C$$$G$S$1(B" "$(C3}(B") + ("$(C$$$G$S$2(B" "$(C3~(B") + ("$(C$$$G$S$5(B" "$(C4!(B") + + ("$(C$$$K(B" "$(C4"(B") + ("$(C$$$K$!(B" "$(C4#(B") + ("$(C$$$K$$(B" "$(C4$(B") + ("$(C$$$K$)(B" "$(C4%(B") + ("$(C$$$K$2(B" "$(C4&(B") + ("$(C$$$K$5(B" "$(C4'(B") + ("$(C$$$K$7(B" "$(C4((B") + + ("$(C$$$L(B" "$(C4)(B") + ("$(C$$$L$!(B" "$(C4*(B") + ("$(C$$$L$$(B" "$(C4+(B") + ("$(C$$$L$'(B" "$(C4,(B") + ("$(C$$$L$)(B" "$(C4-(B") + ("$(C$$$L$1(B" "$(C4.(B") + ("$(C$$$L$2(B" "$(C4/(B") + ("$(C$$$L$5(B" "$(C40(B") + ("$(C$$$L$7(B" "$(C41(B") + + ("$(C$$$L$C(B" "$(C42(B") + ("$(C$$$L$C$6(B" "$(C43(B") + + ("$(C$$$L$D(B" "$(C44(B") + + ("$(C$$$L$S(B" "$(C45(B") + ("$(C$$$L$S$$(B" "$(C46(B") + ("$(C$$$L$S$)(B" "$(C47(B") + ("$(C$$$L$S$1(B" "$(C48(B") + ("$(C$$$L$S$2(B" "$(C49(B") + + ("$(C$$$P(B" "$(C4:(B") + ("$(C$$$P$!(B" "$(C4;(B") + ("$(C$$$P$)(B" "$(C4<(B") + ("$(C$$$P$1(B" "$(C4=(B") + ("$(C$$$P$2(B" "$(C4>(B") + ("$(C$$$P$7(B" "$(C4?(B") + + ("$(C$$$Q(B" "$(C4@(B") + ("$(C$$$Q$!(B" "$(C4A(B") + ("$(C$$$Q$$(B" "$(C4B(B") + ("$(C$$$Q$)(B" "$(C4C(B") + ("$(C$$$Q$)$!(B" "$(C4D(B") + ("$(C$$$Q$)$1(B" "$(C4E(B") + ("$(C$$$Q$1(B" "$(C4F(B") + ("$(C$$$Q$2(B" "$(C4G(B") + ("$(C$$$Q$5(B" "$(C4H(B") + ("$(C$$$Q$7(B" "$(C4I(B") + ("$(C$$$Q$8(B" "$(C4J(B") + ("$(C$$$Q$=(B" "$(C4K(B") + + ("$(C$$$Q$S(B" "$(C4L(B") + ("$(C$$$Q$S$$(B" "$(C4M(B") + ("$(C$$$Q$S$)(B" "$(C4N(B") + + ("$(C$$$S(B" "$(C4O(B") + ("$(C$$$S$!(B" "$(C4P(B") + ("$(C$$$S$$(B" "$(C4Q(B") + ("$(C$$$S$)(B" "$(C4R(B") + ("$(C$$$S$)$1(B" "$(C4S(B") + ("$(C$$$S$1(B" "$(C4T(B") + ("$(C$$$S$2(B" "$(C4U(B") + ("$(C$$$S$5(B" "$(C4V(B") + ("$(C$$$S$7(B" "$(C4W(B") + ("$(C$$$S$=(B" "$(C4X(B") + + ("$(C$'$?(B" "$(C4Y(B") + ("$(C$'$?$!(B" "$(C4Z(B") + ("$(C$'$?$"(B" "$(C4[(B") + ("$(C$'$?$$(B" "$(C4\(B") + ("$(C$'$?$'(B" "$(C4](B") + ("$(C$'$?$)(B" "$(C4^(B") + ("$(C$'$?$)$!(B" "$(C4_(B") + ("$(C$'$?$)$1(B" "$(C4`(B") + ("$(C$'$?$)$2(B" "$(C4a(B") + ("$(C$'$?$)$>(B" "$(C4b(B") + ("$(C$'$?$1(B" "$(C4c(B") + ("$(C$'$?$2(B" "$(C4d(B") + ("$(C$'$?$5(B" "$(C4e(B") + ("$(C$'$?$6(B" "$(C4f(B") + ("$(C$'$?$7(B" "$(C4g(B") + ("$(C$'$?$8(B" "$(C4h(B") + ("$(C$'$?$:(B" "$(C4i(B") + ("$(C$'$?$>(B" "$(C4j(B") + + ("$(C$'$@(B" "$(C4k(B") + ("$(C$'$@$!(B" "$(C4l(B") + ("$(C$'$@$$(B" "$(C4m(B") + ("$(C$'$@$)(B" "$(C4n(B") + ("$(C$'$@$1(B" "$(C4o(B") + ("$(C$'$@$2(B" "$(C4p(B") + ("$(C$'$@$5(B" "$(C4q(B") + ("$(C$'$@$6(B" "$(C4r(B") + ("$(C$'$@$7(B" "$(C4s(B") + + ("$(C$'$A(B" "$(C4t(B") + + ("$(C$'$C(B" "$(C4u(B") + ("$(C$'$C$!(B" "$(C4v(B") + ("$(C$'$C$"(B" "$(C4w(B") + ("$(C$'$C$$(B" "$(C4x(B") + ("$(C$'$C$'(B" "$(C4y(B") + ("$(C$'$C$)(B" "$(C4z(B") + ("$(C$'$C$)$1(B" "$(C4{(B") + ("$(C$'$C$)$2(B" "$(C4|(B") + ("$(C$'$C$1(B" "$(C4}(B") + ("$(C$'$C$2(B" "$(C4~(B") + ("$(C$'$C$5(B" "$(C5!(B") + ("$(C$'$C$7(B" "$(C5"(B") + ("$(C$'$C$:(B" "$(C5#(B") + ("$(C$'$C$=(B" "$(C5$(B") + + ("$(C$'$D(B" "$(C5%(B") + ("$(C$'$D$!(B" "$(C5&(B") + ("$(C$'$D$$(B" "$(C5'(B") + ("$(C$'$D$)(B" "$(C5((B") + ("$(C$'$D$1(B" "$(C5)(B") + ("$(C$'$D$2(B" "$(C5*(B") + ("$(C$'$D$5(B" "$(C5+(B") + ("$(C$'$D$6(B" "$(C5,(B") + ("$(C$'$D$7(B" "$(C5-(B") + + ("$(C$'$E(B" "$(C5.(B") + ("$(C$'$E$$(B" "$(C5/(B") + ("$(C$'$E$)(B" "$(C50(B") + ("$(C$'$E$6(B" "$(C51(B") + ("$(C$'$E$7(B" "$(C52(B") + + ("$(C$'$F(B" "$(C53(B") + ("$(C$'$F$$(B" "$(C54(B") + + ("$(C$'$G(B" "$(C55(B") + ("$(C$'$G$!(B" "$(C56(B") + ("$(C$'$G$$(B" "$(C57(B") + ("$(C$'$G$'(B" "$(C58(B") + ("$(C$'$G$)(B" "$(C59(B") + ("$(C$'$G$)$1(B" "$(C5:(B") + ("$(C$'$G$)$5(B" "$(C5;(B") + ("$(C$'$G$1(B" "$(C5<(B") + ("$(C$'$G$2(B" "$(C5=(B") + ("$(C$'$G$5(B" "$(C5>(B") + ("$(C$'$G$7(B" "$(C5?(B") + ("$(C$'$G$:(B" "$(C5@(B") + ("$(C$'$G$<(B" "$(C5A(B") + + ("$(C$'$G$?(B" "$(C5B(B") + ("$(C$'$G$?$$(B" "$(C5C(B") + ("$(C$'$G$?$)(B" "$(C5D(B") + + ("$(C$'$G$@(B" "$(C5E(B") + ("$(C$'$G$@$6(B" "$(C5F(B") + + ("$(C$'$G$S(B" "$(C5G(B") + ("$(C$'$G$S$$(B" "$(C5H(B") + ("$(C$'$G$S$)(B" "$(C5I(B") + ("$(C$'$G$S$1(B" "$(C5J(B") + ("$(C$'$G$S$2(B" "$(C5K(B") + ("$(C$'$G$S$5(B" "$(C5L(B") + + ("$(C$'$K(B" "$(C5M(B") + + ("$(C$'$L(B" "$(C5N(B") + ("$(C$'$L$!(B" "$(C5O(B") + ("$(C$'$L$$(B" "$(C5P(B") + ("$(C$'$L$)(B" "$(C5Q(B") + ("$(C$'$L$1(B" "$(C5R(B") + ("$(C$'$L$2(B" "$(C5S(B") + ("$(C$'$L$5(B" "$(C5T(B") + ("$(C$'$L$7(B" "$(C5U(B") + + ("$(C$'$L$C(B" "$(C5V(B") + ("$(C$'$L$C$6(B" "$(C5W(B") + + ("$(C$'$L$D(B" "$(C5X(B") + ("$(C$'$L$D$7(B" "$(C5Y(B") + + ("$(C$'$L$S(B" "$(C5Z(B") + ("$(C$'$L$S$$(B" "$(C5[(B") + ("$(C$'$L$S$)(B" "$(C5\(B") + ("$(C$'$L$S$2(B" "$(C5](B") + ("$(C$'$L$S$5(B" "$(C5^(B") + ("$(C$'$L$S$7(B" "$(C5_(B") + + ("$(C$'$P(B" "$(C5`(B") + ("$(C$'$P$$(B" "$(C5a(B") + ("$(C$'$P$)(B" "$(C5b(B") + ("$(C$'$P$1(B" "$(C5c(B") + ("$(C$'$P$7(B" "$(C5d(B") + + ("$(C$'$Q(B" "$(C5e(B") + ("$(C$'$Q$!(B" "$(C5f(B") + ("$(C$'$Q$$(B" "$(C5g(B") + ("$(C$'$Q$'(B" "$(C5h(B") + ("$(C$'$Q$)(B" "$(C5i(B") + ("$(C$'$Q$)$1(B" "$(C5j(B") + ("$(C$'$Q$1(B" "$(C5k(B") + ("$(C$'$Q$2(B" "$(C5l(B") + ("$(C$'$Q$5(B" "$(C5m(B") + ("$(C$'$Q$7(B" "$(C5n(B") + + ("$(C$'$Q$S(B" "$(C5o(B") + + ("$(C$'$S(B" "$(C5p(B") + ("$(C$'$S$!(B" "$(C5q(B") + ("$(C$'$S$$(B" "$(C5r(B") + ("$(C$'$S$'(B" "$(C5s(B") + ("$(C$'$S$)(B" "$(C5t(B") + ("$(C$'$S$1(B" "$(C5u(B") + ("$(C$'$S$2(B" "$(C5v(B") + ("$(C$'$S$5(B" "$(C5w(B") + ("$(C$'$S$6(B" "$(C5x(B") + ("$(C$'$S$7(B" "$(C5y(B") + ("$(C$'$S$8(B" "$(C5z(B") + + ("$(C$($?(B" "$(C5{(B") + ("$(C$($?$!(B" "$(C5|(B") + ("$(C$($?$$(B" "$(C5}(B") + ("$(C$($?$)(B" "$(C5~(B") + ("$(C$($?$1(B" "$(C6!(B") + ("$(C$($?$2(B" "$(C6"(B") + ("$(C$($?$5(B" "$(C6#(B") + ("$(C$($?$6(B" "$(C6$(B") + ("$(C$($?$7(B" "$(C6%(B") + ("$(C$($?$>(B" "$(C6&(B") + + ("$(C$($@(B" "$(C6'(B") + ("$(C$($@$!(B" "$(C6((B") + ("$(C$($@$$(B" "$(C6)(B") + ("$(C$($@$)(B" "$(C6*(B") + ("$(C$($@$1(B" "$(C6+(B") + ("$(C$($@$2(B" "$(C6,(B") + ("$(C$($@$5(B" "$(C6-(B") + ("$(C$($@$6(B" "$(C6.(B") + ("$(C$($@$7(B" "$(C6/(B") + + ("$(C$($C(B" "$(C60(B") + ("$(C$($C$!(B" "$(C61(B") + ("$(C$($C$$(B" "$(C62(B") + ("$(C$($C$)(B" "$(C63(B") + ("$(C$($C$)$1(B" "$(C64(B") + ("$(C$($C$)$2(B" "$(C65(B") + ("$(C$($C$1(B" "$(C66(B") + ("$(C$($C$2(B" "$(C67(B") + ("$(C$($C$5(B" "$(C68(B") + ("$(C$($C$6(B" "$(C69(B") + ("$(C$($C$7(B" "$(C6:(B") + ("$(C$($C$>(B" "$(C6;(B") + + ("$(C$($D(B" "$(C6<(B") + ("$(C$($D$!(B" "$(C6=(B") + ("$(C$($D$$(B" "$(C6>(B") + ("$(C$($D$)(B" "$(C6?(B") + ("$(C$($D$1(B" "$(C6@(B") + ("$(C$($D$2(B" "$(C6A(B") + ("$(C$($D$5(B" "$(C6B(B") + ("$(C$($D$6(B" "$(C6C(B") + ("$(C$($D$7(B" "$(C6D(B") + + ("$(C$($E(B" "$(C6E(B") + ("$(C$($E$6(B" "$(C6F(B") + + ("$(C$($G(B" "$(C6G(B") + ("$(C$($G$!(B" "$(C6H(B") + ("$(C$($G$$(B" "$(C6I(B") + ("$(C$($G$)(B" "$(C6J(B") + ("$(C$($G$7(B" "$(C6K(B") + + ("$(C$($G$?(B" "$(C6L(B") + ("$(C$($G$?$)(B" "$(C6M(B") + + ("$(C$($G$@(B" "$(C6N(B") + + ("$(C$($G$S(B" "$(C6O(B") + ("$(C$($G$S$$(B" "$(C6P(B") + + ("$(C$($L(B" "$(C6Q(B") + ("$(C$($L$!(B" "$(C6R(B") + ("$(C$($L$$(B" "$(C6S(B") + ("$(C$($L$)(B" "$(C6T(B") + ("$(C$($L$)$>(B" "$(C6U(B") + ("$(C$($L$1(B" "$(C6V(B") + ("$(C$($L$7(B" "$(C6W(B") + + ("$(C$($L$D(B" "$(C6X(B") + + ("$(C$($L$S(B" "$(C6Y(B") + ("$(C$($L$S$$(B" "$(C6Z(B") + ("$(C$($L$S$)(B" "$(C6[(B") + ("$(C$($L$S$1(B" "$(C6\(B") + ("$(C$($L$S$2(B" "$(C6](B") + ("$(C$($L$S$7(B" "$(C6^(B") + + ("$(C$($Q(B" "$(C6_(B") + ("$(C$($Q$!(B" "$(C6`(B") + ("$(C$($Q$$(B" "$(C6a(B") + ("$(C$($Q$'(B" "$(C6b(B") + ("$(C$($Q$)(B" "$(C6c(B") + ("$(C$($Q$1(B" "$(C6d(B") + ("$(C$($Q$2(B" "$(C6e(B") + ("$(C$($Q$5(B" "$(C6f(B") + + ("$(C$($Q$S(B" "$(C6g(B") + ("$(C$($Q$S$$(B" "$(C6h(B") + ("$(C$($Q$S$)(B" "$(C6i(B") + ("$(C$($Q$S$1(B" "$(C6j(B") + ("$(C$($Q$S$2(B" "$(C6k(B") + + ("$(C$($S(B" "$(C6l(B") + ("$(C$($S$$(B" "$(C6m(B") + ("$(C$($S$)(B" "$(C6n(B") + ("$(C$($S$1(B" "$(C6o(B") + ("$(C$($S$2(B" "$(C6p(B") + ("$(C$($S$5(B" "$(C6q(B") + ("$(C$($S$7(B" "$(C6r(B") + + ("$(C$)$?(B" "$(C6s(B") + ("$(C$)$?$!(B" "$(C6t(B") + ("$(C$)$?$$(B" "$(C6u(B") + ("$(C$)$?$)(B" "$(C6v(B") + ("$(C$)$?$1(B" "$(C6w(B") + ("$(C$)$?$2(B" "$(C6x(B") + ("$(C$)$?$5(B" "$(C6y(B") + ("$(C$)$?$6(B" "$(C6z(B") + ("$(C$)$?$7(B" "$(C6{(B") + ("$(C$)$?$8(B" "$(C6|(B") + ("$(C$)$?$=(B" "$(C6}(B") + ("$(C$)$?$>(B" "$(C6~(B") + + ("$(C$)$@(B" "$(C7!(B") + ("$(C$)$@$!(B" "$(C7"(B") + ("$(C$)$@$$(B" "$(C7#(B") + ("$(C$)$@$)(B" "$(C7$(B") + ("$(C$)$@$1(B" "$(C7%(B") + ("$(C$)$@$2(B" "$(C7&(B") + ("$(C$)$@$5(B" "$(C7'(B") + ("$(C$)$@$6(B" "$(C7((B") + ("$(C$)$@$7(B" "$(C7)(B") + + ("$(C$)$A(B" "$(C7*(B") + ("$(C$)$A$!(B" "$(C7+(B") + ("$(C$)$A$$(B" "$(C7,(B") + ("$(C$)$A$5(B" "$(C7-(B") + ("$(C$)$A$7(B" "$(C7.(B") + + ("$(C$)$C(B" "$(C7/(B") + ("$(C$)$C$!(B" "$(C70(B") + ("$(C$)$C$$(B" "$(C71(B") + ("$(C$)$C$)(B" "$(C72(B") + ("$(C$)$C$1(B" "$(C73(B") + ("$(C$)$C$2(B" "$(C74(B") + ("$(C$)$C$5(B" "$(C75(B") + ("$(C$)$C$6(B" "$(C76(B") + ("$(C$)$C$7(B" "$(C77(B") + ("$(C$)$C$>(B" "$(C78(B") + + ("$(C$)$D(B" "$(C79(B") + ("$(C$)$D$!(B" "$(C7:(B") + ("$(C$)$D$$(B" "$(C7;(B") + ("$(C$)$D$)(B" "$(C7<(B") + ("$(C$)$D$1(B" "$(C7=(B") + ("$(C$)$D$2(B" "$(C7>(B") + ("$(C$)$D$5(B" "$(C7?(B") + ("$(C$)$D$7(B" "$(C7@(B") + + ("$(C$)$E(B" "$(C7A(B") + ("$(C$)$E$!(B" "$(C7B(B") + ("$(C$)$E$$(B" "$(C7C(B") + ("$(C$)$E$)(B" "$(C7D(B") + ("$(C$)$E$1(B" "$(C7E(B") + ("$(C$)$E$2(B" "$(C7F(B") + ("$(C$)$E$5(B" "$(C7G(B") + ("$(C$)$E$6(B" "$(C7H(B") + ("$(C$)$E$7(B" "$(C7I(B") + + ("$(C$)$F(B" "$(C7J(B") + ("$(C$)$F$$(B" "$(C7K(B") + ("$(C$)$F$2(B" "$(C7L(B") + ("$(C$)$F$5(B" "$(C7M(B") + + ("$(C$)$G(B" "$(C7N(B") + ("$(C$)$G$!(B" "$(C7O(B") + ("$(C$)$G$$(B" "$(C7P(B") + ("$(C$)$G$)(B" "$(C7Q(B") + ("$(C$)$G$1(B" "$(C7R(B") + ("$(C$)$G$2(B" "$(C7S(B") + ("$(C$)$G$5(B" "$(C7T(B") + ("$(C$)$G$7(B" "$(C7U(B") + + ("$(C$)$G$?(B" "$(C7V(B") + ("$(C$)$G$?$$(B" "$(C7W(B") + ("$(C$)$G$?$7(B" "$(C7X(B") + + ("$(C$)$G$@$6(B" "$(C7Y(B") + + ("$(C$)$G$S(B" "$(C7Z(B") + ("$(C$)$G$S$$(B" "$(C7[(B") + ("$(C$)$G$S$)(B" "$(C7\(B") + ("$(C$)$G$S$1(B" "$(C7](B") + ("$(C$)$G$S$2(B" "$(C7^(B") + ("$(C$)$G$S$5(B" "$(C7_(B") + ("$(C$)$G$S$7(B" "$(C7`(B") + + ("$(C$)$K(B" "$(C7a(B") + ("$(C$)$K$$(B" "$(C7b(B") + ("$(C$)$K$)(B" "$(C7c(B") + ("$(C$)$K$2(B" "$(C7d(B") + ("$(C$)$K$5(B" "$(C7e(B") + ("$(C$)$K$7(B" "$(C7f(B") + + ("$(C$)$L(B" "$(C7g(B") + ("$(C$)$L$!(B" "$(C7h(B") + ("$(C$)$L$$(B" "$(C7i(B") + ("$(C$)$L$)(B" "$(C7j(B") + ("$(C$)$L$1(B" "$(C7k(B") + ("$(C$)$L$2(B" "$(C7l(B") + ("$(C$)$L$5(B" "$(C7m(B") + ("$(C$)$L$7(B" "$(C7n(B") + + ("$(C$)$L$C(B" "$(C7o(B") + ("$(C$)$L$C$6(B" "$(C7p(B") + + ("$(C$)$L$D(B" "$(C7q(B") + + ("$(C$)$L$S(B" "$(C7r(B") + ("$(C$)$L$S$!(B" "$(C7s(B") + ("$(C$)$L$S$$(B" "$(C7t(B") + ("$(C$)$L$S$)(B" "$(C7u(B") + ("$(C$)$L$S$1(B" "$(C7v(B") + ("$(C$)$L$S$5(B" "$(C7w(B") + ("$(C$)$L$S$7(B" "$(C7x(B") + + ("$(C$)$P(B" "$(C7y(B") + ("$(C$)$P$!(B" "$(C7z(B") + ("$(C$)$P$$(B" "$(C7{(B") + ("$(C$)$P$)(B" "$(C7|(B") + ("$(C$)$P$1(B" "$(C7}(B") + ("$(C$)$P$2(B" "$(C7~(B") + ("$(C$)$P$5(B" "$(C8!(B") + ("$(C$)$P$7(B" "$(C8"(B") + + ("$(C$)$Q(B" "$(C8#(B") + ("$(C$)$Q$!(B" "$(C8$(B") + ("$(C$)$Q$$(B" "$(C8%(B") + ("$(C$)$Q$)(B" "$(C8&(B") + ("$(C$)$Q$1(B" "$(C8'(B") + ("$(C$)$Q$2(B" "$(C8((B") + ("$(C$)$Q$5(B" "$(C8)(B") + ("$(C$)$Q$7(B" "$(C8*(B") + ("$(C$)$Q$8(B" "$(C8+(B") + ("$(C$)$Q$<(B" "$(C8,(B") + ("$(C$)$Q$=(B" "$(C8-(B") + + ("$(C$)$S(B" "$(C8.(B") + ("$(C$)$S$!(B" "$(C8/(B") + ("$(C$)$S$$(B" "$(C80(B") + ("$(C$)$S$)(B" "$(C81(B") + ("$(C$)$S$1(B" "$(C82(B") + ("$(C$)$S$2(B" "$(C83(B") + ("$(C$)$S$5(B" "$(C84(B") + ("$(C$)$S$7(B" "$(C85(B") + + ("$(C$1$?(B" "$(C86(B") + ("$(C$1$?$!(B" "$(C87(B") + ("$(C$1$?$$(B" "$(C88(B") + ("$(C$1$?$$$>(B" "$(C89(B") + ("$(C$1$?$'(B" "$(C8:(B") + ("$(C$1$?$)(B" "$(C8;(B") + ("$(C$1$?$)$!(B" "$(C8<(B") + ("$(C$1$?$)$1(B" "$(C8=(B") + ("$(C$1$?$1(B" "$(C8>(B") + ("$(C$1$?$2(B" "$(C8?(B") + ("$(C$1$?$5(B" "$(C8@(B") + ("$(C$1$?$7(B" "$(C8A(B") + ("$(C$1$?$8(B" "$(C8B(B") + ("$(C$1$?$<(B" "$(C8C(B") + ("$(C$1$?$>(B" "$(C8D(B") + + ("$(C$1$@(B" "$(C8E(B") + ("$(C$1$@$!(B" "$(C8F(B") + ("$(C$1$@$$(B" "$(C8G(B") + ("$(C$1$@$)(B" "$(C8H(B") + ("$(C$1$@$1(B" "$(C8I(B") + ("$(C$1$@$2(B" "$(C8J(B") + ("$(C$1$@$5(B" "$(C8K(B") + ("$(C$1$@$6(B" "$(C8L(B") + ("$(C$1$@$7(B" "$(C8M(B") + ("$(C$1$@$8(B" "$(C8N(B") + + ("$(C$1$A(B" "$(C8O(B") + ("$(C$1$A$!(B" "$(C8P(B") + ("$(C$1$A$)(B" "$(C8Q(B") + ("$(C$1$A$7(B" "$(C8R(B") + + ("$(C$1$C(B" "$(C8S(B") + ("$(C$1$C$!(B" "$(C8T(B") + ("$(C$1$C$$(B" "$(C8U(B") + ("$(C$1$C$)(B" "$(C8V(B") + ("$(C$1$C$)$1(B" "$(C8W(B") + ("$(C$1$C$1(B" "$(C8X(B") + ("$(C$1$C$2(B" "$(C8Y(B") + ("$(C$1$C$5(B" "$(C8Z(B") + ("$(C$1$C$7(B" "$(C8[(B") + ("$(C$1$C$8(B" "$(C8\(B") + ("$(C$1$C$>(B" "$(C8](B") + + ("$(C$1$D(B" "$(C8^(B") + ("$(C$1$D$!(B" "$(C8_(B") + ("$(C$1$D$$(B" "$(C8`(B") + ("$(C$1$D$)(B" "$(C8a(B") + ("$(C$1$D$1(B" "$(C8b(B") + ("$(C$1$D$2(B" "$(C8c(B") + ("$(C$1$D$5(B" "$(C8d(B") + ("$(C$1$D$6(B" "$(C8e(B") + ("$(C$1$D$7(B" "$(C8f(B") + + ("$(C$1$E(B" "$(C8g(B") + ("$(C$1$E$!(B" "$(C8h(B") + ("$(C$1$E$$(B" "$(C8i(B") + ("$(C$1$E$)(B" "$(C8j(B") + ("$(C$1$E$5(B" "$(C8k(B") + ("$(C$1$E$6(B" "$(C8l(B") + ("$(C$1$E$7(B" "$(C8m(B") + ("$(C$1$E$:(B" "$(C8n(B") + + ("$(C$1$F(B" "$(C8o(B") + + ("$(C$1$G(B" "$(C8p(B") + ("$(C$1$G$!(B" "$(C8q(B") + ("$(C$1$G$!$5(B" "$(C8r(B") + ("$(C$1$G$$(B" "$(C8s(B") + ("$(C$1$G$)(B" "$(C8t(B") + ("$(C$1$G$)$1(B" "$(C8u(B") + ("$(C$1$G$1(B" "$(C8v(B") + ("$(C$1$G$2(B" "$(C8w(B") + ("$(C$1$G$5(B" "$(C8x(B") + ("$(C$1$G$7(B" "$(C8y(B") + + ("$(C$1$G$?(B" "$(C8z(B") + ("$(C$1$G$?$$(B" "$(C8{(B") + ("$(C$1$G$?$6(B" "$(C8|(B") + ("$(C$1$G$?$7(B" "$(C8}(B") + + ("$(C$1$G$S(B" "$(C8~(B") + ("$(C$1$G$S$$(B" "$(C9!(B") + ("$(C$1$G$S$)(B" "$(C9"(B") + ("$(C$1$G$S$2(B" "$(C9#(B") + ("$(C$1$G$S$5(B" "$(C9$(B") + ("$(C$1$G$S$7(B" "$(C9%(B") + + ("$(C$1$K(B" "$(C9&(B") + ("$(C$1$K$$(B" "$(C9'(B") + ("$(C$1$K$)(B" "$(C9((B") + ("$(C$1$K$2(B" "$(C9)(B") + ("$(C$1$K$5(B" "$(C9*(B") + + ("$(C$1$L(B" "$(C9+(B") + ("$(C$1$L$!(B" "$(C9,(B") + ("$(C$1$L$"(B" "$(C9-(B") + ("$(C$1$L$$(B" "$(C9.(B") + ("$(C$1$L$'(B" "$(C9/(B") + ("$(C$1$L$)(B" "$(C90(B") + ("$(C$1$L$)$!(B" "$(C91(B") + ("$(C$1$L$)$1(B" "$(C92(B") + ("$(C$1$L$1(B" "$(C93(B") + ("$(C$1$L$2(B" "$(C94(B") + ("$(C$1$L$5(B" "$(C95(B") + ("$(C$1$L$7(B" "$(C96(B") + ("$(C$1$L$<(B" "$(C97(B") + ("$(C$1$L$>(B" "$(C98(B") + + ("$(C$1$L$C(B" "$(C99(B") + ("$(C$1$L$C$$(B" "$(C9:(B") + ("$(C$1$L$C$)(B" "$(C9;(B") + ("$(C$1$L$C$2(B" "$(C9<(B") + ("$(C$1$L$C$5(B" "$(C9=(B") + + ("$(C$1$L$D(B" "$(C9>(B") + + ("$(C$1$L$S(B" "$(C9?(B") + ("$(C$1$L$S$$(B" "$(C9@(B") + ("$(C$1$L$S$)(B" "$(C9A(B") + + ("$(C$1$P(B" "$(C9B(B") + ("$(C$1$P$$(B" "$(C9C(B") + ("$(C$1$P$)(B" "$(C9D(B") + ("$(C$1$P$1(B" "$(C9E(B") + ("$(C$1$P$5(B" "$(C9F(B") + + ("$(C$1$Q(B" "$(C9G(B") + ("$(C$1$Q$$(B" "$(C9H(B") + ("$(C$1$Q$)(B" "$(C9I(B") + ("$(C$1$Q$1(B" "$(C9J(B") + ("$(C$1$Q$5(B" "$(C9K(B") + + ("$(C$1$S(B" "$(C9L(B") + ("$(C$1$S$!(B" "$(C9M(B") + ("$(C$1$S$$(B" "$(C9N(B") + ("$(C$1$S$'(B" "$(C9O(B") + ("$(C$1$S$)(B" "$(C9P(B") + ("$(C$1$S$)$1(B" "$(C9Q(B") + ("$(C$1$S$1(B" "$(C9R(B") + ("$(C$1$S$2(B" "$(C9S(B") + ("$(C$1$S$5(B" "$(C9T(B") + ("$(C$1$S$6(B" "$(C9U(B") + ("$(C$1$S$7(B" "$(C9V(B") + ("$(C$1$S$:(B" "$(C9W(B") + ("$(C$1$S$<(B" "$(C9X(B") + + ("$(C$2$?(B" "$(C9Y(B") + ("$(C$2$?$!(B" "$(C9Z(B") + ("$(C$2$?$!$5(B" "$(C9\(B") + ("$(C$2$?$"(B" "$(C9[(B") + ("$(C$2$?$$(B" "$(C9](B") + ("$(C$2$?$'(B" "$(C9^(B") + ("$(C$2$?$)(B" "$(C9_(B") + ("$(C$2$?$)$!(B" "$(C9`(B") + ("$(C$2$?$)$1(B" "$(C9a(B") + ("$(C$2$?$)$2(B" "$(C9b(B") + ("$(C$2$?$1(B" "$(C9c(B") + ("$(C$2$?$2(B" "$(C9d(B") + ("$(C$2$?$5(B" "$(C9e(B") + ("$(C$2$?$7(B" "$(C9f(B") + ("$(C$2$?$<(B" "$(C9g(B") + + ("$(C$2$@(B" "$(C9h(B") + ("$(C$2$@$!(B" "$(C9i(B") + ("$(C$2$@$$(B" "$(C9j(B") + ("$(C$2$@$)(B" "$(C9k(B") + ("$(C$2$@$1(B" "$(C9l(B") + ("$(C$2$@$2(B" "$(C9m(B") + ("$(C$2$@$5(B" "$(C9n(B") + ("$(C$2$@$6(B" "$(C9o(B") + ("$(C$2$@$7(B" "$(C9p(B") + ("$(C$2$@$<(B" "$(C9q(B") + + ("$(C$2$A(B" "$(C9r(B") + ("$(C$2$A$!(B" "$(C9s(B") + ("$(C$2$A$$(B" "$(C9t(B") + ("$(C$2$A$2(B" "$(C9u(B") + + ("$(C$2$C(B" "$(C9v(B") + ("$(C$2$C$!(B" "$(C9w(B") + ("$(C$2$C$$(B" "$(C9x(B") + ("$(C$2$C$'(B" "$(C9y(B") + ("$(C$2$C$)(B" "$(C9z(B") + ("$(C$2$C$)$1(B" "$(C9{(B") + ("$(C$2$C$1(B" "$(C9|(B") + ("$(C$2$C$2(B" "$(C9}(B") + ("$(C$2$C$5(B" "$(C9~(B") + ("$(C$2$C$7(B" "$(C:!(B") + ("$(C$2$C$8(B" "$(C:"(B") + + ("$(C$2$D(B" "$(C:#(B") + ("$(C$2$D$!(B" "$(C:$(B") + ("$(C$2$D$$(B" "$(C:%(B") + ("$(C$2$D$'(B" "$(C:&(B") + ("$(C$2$D$)(B" "$(C:'(B") + ("$(C$2$D$1(B" "$(C:((B") + ("$(C$2$D$2(B" "$(C:)(B") + ("$(C$2$D$5(B" "$(C:*(B") + ("$(C$2$D$6(B" "$(C:+(B") + ("$(C$2$D$7(B" "$(C:,(B") + + ("$(C$2$E(B" "$(C:-(B") + ("$(C$2$E$!(B" "$(C:.(B") + ("$(C$2$E$$(B" "$(C:/(B") + ("$(C$2$E$)(B" "$(C:0(B") + ("$(C$2$E$2(B" "$(C:1(B") + ("$(C$2$E$5(B" "$(C:2(B") + ("$(C$2$E$6(B" "$(C:3(B") + ("$(C$2$E$7(B" "$(C:4(B") + ("$(C$2$E$<(B" "$(C:5(B") + + ("$(C$2$F(B" "$(C:6(B") + ("$(C$2$F$$(B" "$(C:7(B") + + ("$(C$2$G(B" "$(C:8(B") + ("$(C$2$G$!(B" "$(C:9(B") + ("$(C$2$G$"(B" "$(C::(B") + ("$(C$2$G$$(B" "$(C:;(B") + ("$(C$2$G$)(B" "$(C:<(B") + ("$(C$2$G$1(B" "$(C:=(B") + ("$(C$2$G$2(B" "$(C:>(B") + ("$(C$2$G$5(B" "$(C:?(B") + ("$(C$2$G$7(B" "$(C:@(B") + + ("$(C$2$G$?(B" "$(C:A(B") + ("$(C$2$G$?$$(B" "$(C:B(B") + ("$(C$2$G$?$6(B" "$(C:C(B") + + ("$(C$2$G$@(B" "$(C:D(B") + ("$(C$2$G$@$6(B" "$(C:E(B") + + ("$(C$2$G$S(B" "$(C:F(B") + ("$(C$2$G$S$!(B" "$(C:G(B") + ("$(C$2$G$S$$(B" "$(C:H(B") + ("$(C$2$G$S$)(B" "$(C:I(B") + ("$(C$2$G$S$1(B" "$(C:J(B") + ("$(C$2$G$S$2(B" "$(C:K(B") + + ("$(C$2$K(B" "$(C:L(B") + ("$(C$2$K$$(B" "$(C:M(B") + + ("$(C$2$L(B" "$(C:N(B") + ("$(C$2$L$!(B" "$(C:O(B") + ("$(C$2$L$$(B" "$(C:P(B") + ("$(C$2$L$'(B" "$(C:Q(B") + ("$(C$2$L$)(B" "$(C:R(B") + ("$(C$2$L$)$!(B" "$(C:S(B") + ("$(C$2$L$)$1(B" "$(C:T(B") + ("$(C$2$L$1(B" "$(C:U(B") + ("$(C$2$L$2(B" "$(C:V(B") + ("$(C$2$L$5(B" "$(C:W(B") + ("$(C$2$L$7(B" "$(C:X(B") + ("$(C$2$L$<(B" "$(C:Y(B") + ("$(C$2$L$=(B" "$(C:Z(B") + + ("$(C$2$L$C(B" "$(C:[(B") + ("$(C$2$L$C$)(B" "$(C:\(B") + ("$(C$2$L$C$6(B" "$(C:](B") + + ("$(C$2$L$D(B" "$(C:^(B") + + ("$(C$2$L$S(B" "$(C:_(B") + ("$(C$2$L$S$!(B" "$(C:`(B") + ("$(C$2$L$S$$(B" "$(C:a(B") + ("$(C$2$L$S$)(B" "$(C:b(B") + ("$(C$2$L$S$7(B" "$(C:c(B") + + ("$(C$2$P(B" "$(C:d(B") + ("$(C$2$P$$(B" "$(C:e(B") + ("$(C$2$P$)(B" "$(C:f(B") + ("$(C$2$P$1(B" "$(C:g(B") + ("$(C$2$P$5(B" "$(C:h(B") + ("$(C$2$P$7(B" "$(C:i(B") + + ("$(C$2$Q(B" "$(C:j(B") + ("$(C$2$Q$!(B" "$(C:k(B") + ("$(C$2$Q$$(B" "$(C:l(B") + ("$(C$2$Q$)(B" "$(C:m(B") + ("$(C$2$Q$1(B" "$(C:n(B") + ("$(C$2$Q$2(B" "$(C:o(B") + ("$(C$2$Q$5(B" "$(C:p(B") + + ("$(C$2$S(B" "$(C:q(B") + ("$(C$2$S$!(B" "$(C:r(B") + ("$(C$2$S$$(B" "$(C:s(B") + ("$(C$2$S$)(B" "$(C:t(B") + ("$(C$2$S$)$1(B" "$(C:u(B") + ("$(C$2$S$1(B" "$(C:v(B") + ("$(C$2$S$2(B" "$(C:w(B") + ("$(C$2$S$5(B" "$(C:x(B") + ("$(C$2$S$7(B" "$(C:y(B") + ("$(C$2$S$8(B" "$(C:z(B") + ("$(C$2$S$:(B" "$(C:{(B") + + ("$(C$3$?(B" "$(C:|(B") + ("$(C$3$?$!(B" "$(C:}(B") + ("$(C$3$?$$(B" "$(C:~(B") + ("$(C$3$?$)(B" "$(C;!(B") + ("$(C$3$?$)$1(B" "$(C;"(B") + ("$(C$3$?$1(B" "$(C;#(B") + ("$(C$3$?$2(B" "$(C;$(B") + ("$(C$3$?$5(B" "$(C;%(B") + ("$(C$3$?$6(B" "$(C;&(B") + ("$(C$3$?$7(B" "$(C;'(B") + ("$(C$3$?$>(B" "$(C;((B") + + ("$(C$3$@(B" "$(C;)(B") + ("$(C$3$@$!(B" "$(C;*(B") + ("$(C$3$@$$(B" "$(C;+(B") + ("$(C$3$@$)(B" "$(C;,(B") + ("$(C$3$@$1(B" "$(C;-(B") + ("$(C$3$@$2(B" "$(C;.(B") + ("$(C$3$@$5(B" "$(C;/(B") + ("$(C$3$@$6(B" "$(C;0(B") + ("$(C$3$@$7(B" "$(C;1(B") + + ("$(C$3$A(B" "$(C;2(B") + ("$(C$3$A$!(B" "$(C;3(B") + ("$(C$3$A$1(B" "$(C;4(B") + + ("$(C$3$C(B" "$(C;5(B") + ("$(C$3$C$!(B" "$(C;6(B") + ("$(C$3$C$$(B" "$(C;7(B") + ("$(C$3$C$'(B" "$(C;8(B") + ("$(C$3$C$)(B" "$(C;9(B") + ("$(C$3$C$1(B" "$(C;:(B") + ("$(C$3$C$5(B" "$(C;;(B") + ("$(C$3$C$6(B" "$(C;<(B") + ("$(C$3$C$7(B" "$(C;=(B") + + ("$(C$3$D(B" "$(C;>(B") + ("$(C$3$D$7(B" "$(C;?(B") + + ("$(C$3$E(B" "$(C;@(B") + ("$(C$3$E$!(B" "$(C;A(B") + ("$(C$3$E$1(B" "$(C;B(B") + ("$(C$3$E$2(B" "$(C;C(B") + ("$(C$3$E$5(B" "$(C;D(B") + ("$(C$3$E$6(B" "$(C;E(B") + ("$(C$3$E$7(B" "$(C;F(B") + + ("$(C$3$G(B" "$(C;G(B") + ("$(C$3$G$!(B" "$(C;H(B") + ("$(C$3$G$$(B" "$(C;I(B") + ("$(C$3$G$)(B" "$(C;J(B") + ("$(C$3$G$1(B" "$(C;K(B") + ("$(C$3$G$2(B" "$(C;L(B") + ("$(C$3$G$7(B" "$(C;M(B") + + ("$(C$3$G$S(B" "$(C;N(B") + + ("$(C$3$K(B" "$(C;O(B") + ("$(C$3$K$7(B" "$(C;P(B") + + ("$(C$3$L(B" "$(C;Q(B") + ("$(C$3$L$!(B" "$(C;R(B") + ("$(C$3$L$$(B" "$(C;S(B") + ("$(C$3$L$)(B" "$(C;T(B") + ("$(C$3$L$1(B" "$(C;U(B") + ("$(C$3$L$5(B" "$(C;V(B") + ("$(C$3$L$7(B" "$(C;W(B") + + ("$(C$3$P(B" "$(C;X(B") + ("$(C$3$P$7(B" "$(C;Y(B") + + ("$(C$3$Q(B" "$(C;Z(B") + ("$(C$3$Q$$(B" "$(C;[(B") + ("$(C$3$Q$)(B" "$(C;\(B") + ("$(C$3$Q$1(B" "$(C;](B") + ("$(C$3$Q$2(B" "$(C;^(B") + + ("$(C$3$S(B" "$(C;_(B") + ("$(C$3$S$!(B" "$(C;`(B") + ("$(C$3$S$$(B" "$(C;a(B") + ("$(C$3$S$)(B" "$(C;b(B") + ("$(C$3$S$1(B" "$(C;c(B") + ("$(C$3$S$2(B" "$(C;d(B") + ("$(C$3$S$5(B" "$(C;e(B") + ("$(C$3$S$7(B" "$(C;f(B") + + ("$(C$5$?(B" "$(C;g(B") + ("$(C$5$?$!(B" "$(C;h(B") + ("$(C$5$?$!$5(B" "$(C;i(B") + ("$(C$5$?$$(B" "$(C;j(B") + ("$(C$5$?$'(B" "$(C;k(B") + ("$(C$5$?$)(B" "$(C;l(B") + ("$(C$5$?$)$!(B" "$(C;m(B") + ("$(C$5$?$)$1(B" "$(C;n(B") + ("$(C$5$?$1(B" "$(C;o(B") + ("$(C$5$?$2(B" "$(C;p(B") + ("$(C$5$?$5(B" "$(C;q(B") + ("$(C$5$?$5$6(B" "$(C;r(B") + ("$(C$5$?$7(B" "$(C;s(B") + ("$(C$5$?$<(B" "$(C;t(B") + + ("$(C$5$@(B" "$(C;u(B") + ("$(C$5$@$!(B" "$(C;v(B") + ("$(C$5$@$$(B" "$(C;w(B") + ("$(C$5$@$)(B" "$(C;x(B") + ("$(C$5$@$1(B" "$(C;y(B") + ("$(C$5$@$2(B" "$(C;z(B") + ("$(C$5$@$5(B" "$(C;{(B") + ("$(C$5$@$6(B" "$(C;|(B") + ("$(C$5$@$7(B" "$(C;}(B") + + ("$(C$5$A(B" "$(C;~(B") + ("$(C$5$A$!(B" "$(C(B") + ("$(C$5$D$)(B" "$(C(B") + ("$(C$5$Q$1(B" "$(C=?(B") + ("$(C$5$Q$2(B" "$(C=@(B") + ("$(C$5$Q$5(B" "$(C=A(B") + ("$(C$5$Q$7(B" "$(C=B(B") + + ("$(C$5$S(B" "$(C=C(B") + ("$(C$5$S$!(B" "$(C=D(B") + ("$(C$5$S$$(B" "$(C=E(B") + ("$(C$5$S$'(B" "$(C=F(B") + ("$(C$5$S$)(B" "$(C=G(B") + ("$(C$5$S$)$>(B" "$(C=H(B") + ("$(C$5$S$1(B" "$(C=I(B") + ("$(C$5$S$2(B" "$(C=J(B") + ("$(C$5$S$5(B" "$(C=K(B") + ("$(C$5$S$7(B" "$(C=L(B") + ("$(C$5$S$=(B" "$(C=M(B") + + ("$(C$6$?(B" "$(C=N(B") + ("$(C$6$?$!(B" "$(C=O(B") + ("$(C$6$?$!$5(B" "$(C=P(B") + ("$(C$6$?$$(B" "$(C=Q(B") + ("$(C$6$?$)(B" "$(C=R(B") + ("$(C$6$?$1(B" "$(C=S(B") + ("$(C$6$?$2(B" "$(C=T(B") + ("$(C$6$?$6(B" "$(C=U(B") + ("$(C$6$?$7(B" "$(C=V(B") + ("$(C$6$?$>(B" "$(C=W(B") + + ("$(C$6$@(B" "$(C=X(B") + ("$(C$6$@$!(B" "$(C=Y(B") + ("$(C$6$@$$(B" "$(C=Z(B") + ("$(C$6$@$)(B" "$(C=[(B") + ("$(C$6$@$1(B" "$(C=\(B") + ("$(C$6$@$2(B" "$(C=](B") + ("$(C$6$@$6(B" "$(C=^(B") + ("$(C$6$@$7(B" "$(C=_(B") + + ("$(C$6$A$7(B" "$(C=`(B") + + ("$(C$6$C(B" "$(C=a(B") + ("$(C$6$C$!(B" "$(C=b(B") + ("$(C$6$C$$(B" "$(C=c(B") + ("$(C$6$C$)(B" "$(C=d(B") + ("$(C$6$C$)$2(B" "$(C=e(B") + ("$(C$6$C$1(B" "$(C=f(B") + ("$(C$6$C$2(B" "$(C=g(B") + ("$(C$6$C$6(B" "$(C=h(B") + ("$(C$6$C$7(B" "$(C=i(B") + + ("$(C$6$D(B" "$(C=j(B") + ("$(C$6$D$$(B" "$(C=k(B") + ("$(C$6$D$)(B" "$(C=l(B") + + ("$(C$6$F$$(B" "$(C=m(B") + + ("$(C$6$G(B" "$(C=n(B") + ("$(C$6$G$!(B" "$(C=o(B") + ("$(C$6$G$$(B" "$(C=p(B") + ("$(C$6$G$'(B" "$(C=q(B") + ("$(C$6$G$)(B" "$(C=r(B") + ("$(C$6$G$)$1(B" "$(C=s(B") + ("$(C$6$G$1(B" "$(C=t(B") + ("$(C$6$G$2(B" "$(C=u(B") + ("$(C$6$G$7(B" "$(C=v(B") + + ("$(C$6$G$?(B" "$(C=w(B") + ("$(C$6$G$?$!(B" "$(C=x(B") + ("$(C$6$G$?$$(B" "$(C=y(B") + ("$(C$6$G$?$6(B" "$(C=z(B") + + ("$(C$6$G$@(B" "$(C={(B") + ("$(C$6$G$@$6(B" "$(C=|(B") + + ("$(C$6$G$S(B" "$(C=}(B") + ("$(C$6$G$S$$(B" "$(C=~(B") + ("$(C$6$G$S$)(B" "$(C>!(B") + ("$(C$6$G$S$1(B" "$(C>"(B") + ("$(C$6$G$S$2(B" "$(C>#(B") + + ("$(C$6$K(B" "$(C>$(B") + + ("$(C$6$L(B" "$(C>%(B") + ("$(C$6$L$!(B" "$(C>&(B") + ("$(C$6$L$$(B" "$(C>'(B") + ("$(C$6$L$)(B" "$(C>((B") + ("$(C$6$L$1(B" "$(C>)(B") + ("$(C$6$L$2(B" "$(C>*(B") + ("$(C$6$L$7(B" "$(C>+(B") + + ("$(C$6$L$C(B" "$(C>,(B") + ("$(C$6$L$C$6(B" "$(C>-(B") + + ("$(C$6$L$D(B" "$(C>.(B") + + ("$(C$6$L$S(B" "$(C>/(B") + ("$(C$6$L$S$$(B" "$(C>0(B") + + ("$(C$6$P$7(B" "$(C>1(B") + + ("$(C$6$Q(B" "$(C>2(B") + ("$(C$6$Q$!(B" "$(C>3(B") + ("$(C$6$Q$$(B" "$(C>4(B") + ("$(C$6$Q$)(B" "$(C>5(B") + ("$(C$6$Q$)$1(B" "$(C>6(B") + ("$(C$6$Q$)$>(B" "$(C>7(B") + ("$(C$6$Q$1(B" "$(C>8(B") + ("$(C$6$Q$2(B" "$(C>9(B") + + ("$(C$6$Q$S(B" "$(C>:(B") + ("$(C$6$Q$S$$(B" "$(C>;(B") + ("$(C$6$Q$S$)(B" "$(C><(B") + ("$(C$6$Q$S$1(B" "$(C>=(B") + + ("$(C$6$S(B" "$(C>>(B") + ("$(C$6$S$!(B" "$(C>?(B") + ("$(C$6$S$$(B" "$(C>@(B") + ("$(C$6$S$)(B" "$(C>A(B") + ("$(C$6$S$1(B" "$(C>B(B") + ("$(C$6$S$2(B" "$(C>C(B") + ("$(C$6$S$5(B" "$(C>D(B") + ("$(C$6$S$7(B" "$(C>E(B") + + ("$(C$7$?(B" "$(C>F(B") + ("$(C$7$?$!(B" "$(C>G(B") + ("$(C$7$?$$(B" "$(C>H(B") + ("$(C$7$?$$$8(B" "$(C>I(B") + ("$(C$7$?$$$>(B" "$(C>J(B") + ("$(C$7$?$)(B" "$(C>K(B") + ("$(C$7$?$)$!(B" "$(C>L(B") + ("$(C$7$?$)$1(B" "$(C>M(B") + ("$(C$7$?$)$>(B" "$(C>N(B") + ("$(C$7$?$1(B" "$(C>O(B") + ("$(C$7$?$2(B" "$(C>P(B") + ("$(C$7$?$5(B" "$(C>Q(B") + ("$(C$7$?$6(B" "$(C>R(B") + ("$(C$7$?$7(B" "$(C>S(B") + ("$(C$7$?$<(B" "$(C>T(B") + ("$(C$7$?$=(B" "$(C>U(B") + + ("$(C$7$@(B" "$(C>V(B") + ("$(C$7$@$!(B" "$(C>W(B") + ("$(C$7$@$$(B" "$(C>X(B") + ("$(C$7$@$)(B" "$(C>Y(B") + ("$(C$7$@$1(B" "$(C>Z(B") + ("$(C$7$@$2(B" "$(C>[(B") + ("$(C$7$@$5(B" "$(C>\(B") + ("$(C$7$@$6(B" "$(C>](B") + ("$(C$7$@$7(B" "$(C>^(B") + + ("$(C$7$A(B" "$(C>_(B") + ("$(C$7$A$!(B" "$(C>`(B") + ("$(C$7$A$$(B" "$(C>a(B") + ("$(C$7$A$)(B" "$(C>b(B") + ("$(C$7$A$)$2(B" "$(C>c(B") + ("$(C$7$A$1(B" "$(C>d(B") + ("$(C$7$A$2(B" "$(C>e(B") + ("$(C$7$A$5(B" "$(C>f(B") + ("$(C$7$A$7(B" "$(C>g(B") + ("$(C$7$A$<(B" "$(C>h(B") + ("$(C$7$A$>(B" "$(C>i(B") + + ("$(C$7$B(B" "$(C>j(B") + ("$(C$7$B$$(B" "$(C>k(B") + ("$(C$7$B$)(B" "$(C>l(B") + ("$(C$7$B$2(B" "$(C>m(B") + + ("$(C$7$C(B" "$(C>n(B") + ("$(C$7$C$!(B" "$(C>o(B") + ("$(C$7$C$$(B" "$(C>p(B") + ("$(C$7$C$$$8(B" "$(C>q(B") + ("$(C$7$C$'(B" "$(C>r(B") + ("$(C$7$C$)(B" "$(C>s(B") + ("$(C$7$C$)$!(B" "$(C>t(B") + ("$(C$7$C$)$1(B" "$(C>u(B") + ("$(C$7$C$1(B" "$(C>v(B") + ("$(C$7$C$2(B" "$(C>w(B") + ("$(C$7$C$2$5(B" "$(C>x(B") + ("$(C$7$C$5(B" "$(C>y(B") + ("$(C$7$C$6(B" "$(C>z(B") + ("$(C$7$C$7(B" "$(C>{(B") + ("$(C$7$C$8(B" "$(C>|(B") + ("$(C$7$C$;(B" "$(C>}(B") + ("$(C$7$C$=(B" "$(C>~(B") + + ("$(C$7$D(B" "$(C?!(B") + ("$(C$7$D$!(B" "$(C?"(B") + ("$(C$7$D$$(B" "$(C?#(B") + ("$(C$7$D$)(B" "$(C?$(B") + ("$(C$7$D$1(B" "$(C?%(B") + ("$(C$7$D$2(B" "$(C?&(B") + ("$(C$7$D$5(B" "$(C?'(B") + ("$(C$7$D$7(B" "$(C?((B") + + ("$(C$7$E(B" "$(C?)(B") + ("$(C$7$E$!(B" "$(C?*(B") + ("$(C$7$E$"(B" "$(C?+(B") + ("$(C$7$E$$(B" "$(C?,(B") + ("$(C$7$E$)(B" "$(C?-(B") + ("$(C$7$E$)$1(B" "$(C?.(B") + ("$(C$7$E$)$2(B" "$(C?/(B") + ("$(C$7$E$1(B" "$(C?0(B") + ("$(C$7$E$2(B" "$(C?1(B") + ("$(C$7$E$2$5(B" "$(C?2(B") + ("$(C$7$E$5(B" "$(C?3(B") + ("$(C$7$E$6(B" "$(C?4(B") + ("$(C$7$E$7(B" "$(C?5(B") + ("$(C$7$E$<(B" "$(C?6(B") + ("$(C$7$E$=(B" "$(C?7(B") + ("$(C$7$E$>(B" "$(C?8(B") + + ("$(C$7$F(B" "$(C?9(B") + ("$(C$7$F$$(B" "$(C?:(B") + ("$(C$7$F$)(B" "$(C?;(B") + ("$(C$7$F$1(B" "$(C?<(B") + ("$(C$7$F$2(B" "$(C?=(B") + ("$(C$7$F$5(B" "$(C?>(B") + ("$(C$7$F$6(B" "$(C??(B") + + ("$(C$7$G(B" "$(C?@(B") + ("$(C$7$G$!(B" "$(C?A(B") + ("$(C$7$G$$(B" "$(C?B(B") + ("$(C$7$G$)(B" "$(C?C(B") + ("$(C$7$G$)$!(B" "$(C?D(B") + ("$(C$7$G$)$1(B" "$(C?E(B") + ("$(C$7$G$)$5(B" "$(C?F(B") + ("$(C$7$G$)$>(B" "$(C?G(B") + ("$(C$7$G$1(B" "$(C?H(B") + ("$(C$7$G$2(B" "$(C?I(B") + ("$(C$7$G$5(B" "$(C?J(B") + ("$(C$7$G$7(B" "$(C?K(B") + ("$(C$7$G$:(B" "$(C?L(B") + + ("$(C$7$G$?(B" "$(C?M(B") + ("$(C$7$G$?$!(B" "$(C?N(B") + ("$(C$7$G$?$$(B" "$(C?O(B") + ("$(C$7$G$?$)(B" "$(C?P(B") + ("$(C$7$G$?$1(B" "$(C?Q(B") + ("$(C$7$G$?$2(B" "$(C?R(B") + ("$(C$7$G$?$5(B" "$(C?S(B") + ("$(C$7$G$?$6(B" "$(C?T(B") + ("$(C$7$G$?$7(B" "$(C?U(B") + + ("$(C$7$G$@(B" "$(C?V(B") + ("$(C$7$G$@$!(B" "$(C?W(B") + ("$(C$7$G$@$$(B" "$(C?X(B") + ("$(C$7$G$@$1(B" "$(C?Y(B") + ("$(C$7$G$@$5(B" "$(C?Z(B") + ("$(C$7$G$@$7(B" "$(C?[(B") + + ("$(C$7$G$S(B" "$(C?\(B") + ("$(C$7$G$S$!(B" "$(C?](B") + ("$(C$7$G$S$$(B" "$(C?^(B") + ("$(C$7$G$S$)(B" "$(C?_(B") + ("$(C$7$G$S$1(B" "$(C?`(B") + ("$(C$7$G$S$2(B" "$(C?a(B") + ("$(C$7$G$S$5(B" "$(C?b(B") + ("$(C$7$G$S$7(B" "$(C?c(B") + + ("$(C$7$K(B" "$(C?d(B") + ("$(C$7$K$!(B" "$(C?e(B") + ("$(C$7$K$$(B" "$(C?f(B") + ("$(C$7$K$)(B" "$(C?g(B") + ("$(C$7$K$1(B" "$(C?h(B") + ("$(C$7$K$2(B" "$(C?i(B") + ("$(C$7$K$5(B" "$(C?j(B") + ("$(C$7$K$7(B" "$(C?k(B") + + ("$(C$7$L(B" "$(C?l(B") + ("$(C$7$L$!(B" "$(C?m(B") + ("$(C$7$L$$(B" "$(C?n(B") + ("$(C$7$L$)(B" "$(C?o(B") + ("$(C$7$L$)$!(B" "$(C?p(B") + ("$(C$7$L$)$1(B" "$(C?q(B") + ("$(C$7$L$1(B" "$(C?r(B") + ("$(C$7$L$2(B" "$(C?s(B") + ("$(C$7$L$5(B" "$(C?t(B") + ("$(C$7$L$7(B" "$(C?u(B") + + ("$(C$7$L$C(B" "$(C?v(B") + ("$(C$7$L$C$!(B" "$(C?w(B") + ("$(C$7$L$C$$(B" "$(C?x(B") + ("$(C$7$L$C$)(B" "$(C?y(B") + ("$(C$7$L$C$1(B" "$(C?z(B") + ("$(C$7$L$C$2(B" "$(C?{(B") + ("$(C$7$L$C$6(B" "$(C?|(B") + ("$(C$7$L$C$7(B" "$(C?}(B") + + ("$(C$7$L$D(B" "$(C?~(B") + ("$(C$7$L$D$!(B" "$(C@!(B") + ("$(C$7$L$D$$(B" "$(C@"(B") + ("$(C$7$L$D$)(B" "$(C@#(B") + ("$(C$7$L$D$1(B" "$(C@$(B") + ("$(C$7$L$D$2(B" "$(C@%(B") + ("$(C$7$L$D$7(B" "$(C@&(B") + + ("$(C$7$L$S(B" "$(C@'(B") + ("$(C$7$L$S$!(B" "$(C@((B") + ("$(C$7$L$S$$(B" "$(C@)(B") + ("$(C$7$L$S$)(B" "$(C@*(B") + ("$(C$7$L$S$1(B" "$(C@+(B") + ("$(C$7$L$S$2(B" "$(C@,(B") + ("$(C$7$L$S$5(B" "$(C@-(B") + ("$(C$7$L$S$7(B" "$(C@.(B") + + ("$(C$7$P(B" "$(C@/(B") + ("$(C$7$P$!(B" "$(C@0(B") + ("$(C$7$P$$(B" "$(C@1(B") + ("$(C$7$P$)(B" "$(C@2(B") + ("$(C$7$P$1(B" "$(C@3(B") + ("$(C$7$P$2(B" "$(C@4(B") + ("$(C$7$P$5(B" "$(C@5(B") + ("$(C$7$P$7(B" "$(C@6(B") + ("$(C$7$P$:(B" "$(C@7(B") + + ("$(C$7$Q(B" "$(C@8(B") + ("$(C$7$Q$!(B" "$(C@9(B") + ("$(C$7$Q$$(B" "$(C@:(B") + ("$(C$7$Q$)(B" "$(C@;(B") + ("$(C$7$Q$)$=(B" "$(C@<(B") + ("$(C$7$Q$1(B" "$(C@=(B") + ("$(C$7$Q$2(B" "$(C@>(B") + ("$(C$7$Q$5(B" "$(C@?(B") + ("$(C$7$Q$7(B" "$(C@@(B") + ("$(C$7$Q$8(B" "$(C@A(B") + ("$(C$7$Q$:(B" "$(C@B(B") + ("$(C$7$Q$;(B" "$(C@C(B") + ("$(C$7$Q$<(B" "$(C@D(B") + ("$(C$7$Q$=(B" "$(C@E(B") + ("$(C$7$Q$>(B" "$(C@F(B") + + ("$(C$7$Q$S(B" "$(C@G(B") + ("$(C$7$Q$S$$(B" "$(C@H(B") + ("$(C$7$Q$S$)(B" "$(C@I(B") + ("$(C$7$Q$S$1(B" "$(C@J(B") + ("$(C$7$Q$S$5(B" "$(C@K(B") + + ("$(C$7$S(B" "$(C@L(B") + ("$(C$7$S$!(B" "$(C@M(B") + ("$(C$7$S$$(B" "$(C@N(B") + ("$(C$7$S$)(B" "$(C@O(B") + ("$(C$7$S$)$!(B" "$(C@P(B") + ("$(C$7$S$)$1(B" "$(C@Q(B") + ("$(C$7$S$)$>(B" "$(C@R(B") + ("$(C$7$S$1(B" "$(C@S(B") + ("$(C$7$S$2(B" "$(C@T(B") + ("$(C$7$S$5(B" "$(C@U(B") + ("$(C$7$S$6(B" "$(C@V(B") + ("$(C$7$S$7(B" "$(C@W(B") + ("$(C$7$S$8(B" "$(C@X(B") + ("$(C$7$S$=(B" "$(C@Y(B") + + ("$(C$8$?(B" "$(C@Z(B") + ("$(C$8$?$!(B" "$(C@[(B") + ("$(C$8$?$$(B" "$(C@\(B") + ("$(C$8$?$$$>(B" "$(C@](B") + ("$(C$8$?$'(B" "$(C@^(B") + ("$(C$8$?$)(B" "$(C@_(B") + ("$(C$8$?$)$1(B" "$(C@`(B") + ("$(C$8$?$1(B" "$(C@a(B") + ("$(C$8$?$2(B" "$(C@b(B") + ("$(C$8$?$5(B" "$(C@c(B") + ("$(C$8$?$6(B" "$(C@d(B") + ("$(C$8$?$7(B" "$(C@e(B") + ("$(C$8$?$8(B" "$(C@f(B") + + ("$(C$8$@(B" "$(C@g(B") + ("$(C$8$@$!(B" "$(C@h(B") + ("$(C$8$@$$(B" "$(C@i(B") + ("$(C$8$@$)(B" "$(C@j(B") + ("$(C$8$@$1(B" "$(C@k(B") + ("$(C$8$@$2(B" "$(C@l(B") + ("$(C$8$@$5(B" "$(C@m(B") + ("$(C$8$@$6(B" "$(C@n(B") + ("$(C$8$@$7(B" "$(C@o(B") + + ("$(C$8$A(B" "$(C@p(B") + ("$(C$8$A$!(B" "$(C@q(B") + ("$(C$8$A$$(B" "$(C@r(B") + ("$(C$8$A$$$>(B" "$(C@s(B") + ("$(C$8$A$)(B" "$(C@t(B") + ("$(C$8$A$1(B" "$(C@u(B") + ("$(C$8$A$7(B" "$(C@v(B") + + ("$(C$8$B(B" "$(C@w(B") + ("$(C$8$B$$(B" "$(C@x(B") + ("$(C$8$B$)(B" "$(C@y(B") + + ("$(C$8$C(B" "$(C@z(B") + ("$(C$8$C$!(B" "$(C@{(B") + ("$(C$8$C$$(B" "$(C@|(B") + ("$(C$8$C$)(B" "$(C@}(B") + ("$(C$8$C$)$1(B" "$(C@~(B") + ("$(C$8$C$1(B" "$(CA!(B") + ("$(C$8$C$2(B" "$(CA"(B") + ("$(C$8$C$5(B" "$(CA#(B") + ("$(C$8$C$7(B" "$(CA$(B") + ("$(C$8$C$8(B" "$(CA%(B") + + ("$(C$8$D(B" "$(CA&(B") + ("$(C$8$D$!(B" "$(CA'(B") + ("$(C$8$D$$(B" "$(CA((B") + ("$(C$8$D$)(B" "$(CA)(B") + ("$(C$8$D$1(B" "$(CA*(B") + ("$(C$8$D$2(B" "$(CA+(B") + ("$(C$8$D$5(B" "$(CA,(B") + ("$(C$8$D$7(B" "$(CA-(B") + + ("$(C$8$E(B" "$(CA.(B") + ("$(C$8$E$$(B" "$(CA/(B") + ("$(C$8$E$)(B" "$(CA0(B") + ("$(C$8$E$1(B" "$(CA1(B") + ("$(C$8$E$2(B" "$(CA2(B") + ("$(C$8$E$6(B" "$(CA3(B") + ("$(C$8$E$7(B" "$(CA4(B") + + ("$(C$8$F(B" "$(CA5(B") + + ("$(C$8$G(B" "$(CA6(B") + ("$(C$8$G$!(B" "$(CA7(B") + ("$(C$8$G$$(B" "$(CA8(B") + ("$(C$8$G$)(B" "$(CA9(B") + ("$(C$8$G$)$1(B" "$(CA:(B") + ("$(C$8$G$1(B" "$(CA;(B") + ("$(C$8$G$2(B" "$(CA<(B") + ("$(C$8$G$5(B" "$(CA=(B") + ("$(C$8$G$7(B" "$(CA>(B") + ("$(C$8$G$8(B" "$(CA?(B") + ("$(C$8$G$:(B" "$(CA@(B") + ("$(C$8$G$>(B" "$(CAA(B") + + ("$(C$8$G$?(B" "$(CAB(B") + ("$(C$8$G$?$!(B" "$(CAC(B") + ("$(C$8$G$?$)(B" "$(CAD(B") + ("$(C$8$G$?$2(B" "$(CAE(B") + ("$(C$8$G$?$5(B" "$(CAF(B") + ("$(C$8$G$?$7(B" "$(CAG(B") + + ("$(C$8$G$@(B" "$(CAH(B") + ("$(C$8$G$@$6(B" "$(CAI(B") + ("$(C$8$G$@$7(B" "$(CAJ(B") + + ("$(C$8$G$S(B" "$(CAK(B") + ("$(C$8$G$S$$(B" "$(CAL(B") + ("$(C$8$G$S$)(B" "$(CAM(B") + ("$(C$8$G$S$1(B" "$(CAN(B") + ("$(C$8$G$S$2(B" "$(CAO(B") + ("$(C$8$G$S$5(B" "$(CAP(B") + ("$(C$8$G$S$7(B" "$(CAQ(B") + + ("$(C$8$K(B" "$(CAR(B") + ("$(C$8$K$!(B" "$(CAS(B") + ("$(C$8$K$$(B" "$(CAT(B") + ("$(C$8$K$7(B" "$(CAU(B") + + ("$(C$8$L(B" "$(CAV(B") + ("$(C$8$L$!(B" "$(CAW(B") + ("$(C$8$L$$(B" "$(CAX(B") + ("$(C$8$L$)(B" "$(CAY(B") + ("$(C$8$L$)$!(B" "$(CAZ(B") + ("$(C$8$L$)$1(B" "$(CA[(B") + ("$(C$8$L$1(B" "$(CA\(B") + ("$(C$8$L$2(B" "$(CA](B") + ("$(C$8$L$5(B" "$(CA^(B") + ("$(C$8$L$7(B" "$(CA_(B") + + ("$(C$8$L$C(B" "$(CA`(B") + ("$(C$8$L$C$6(B" "$(CAa(B") + + ("$(C$8$L$D(B" "$(CAb(B") + + ("$(C$8$L$S(B" "$(CAc(B") + ("$(C$8$L$S$!(B" "$(CAd(B") + ("$(C$8$L$S$$(B" "$(CAe(B") + ("$(C$8$L$S$)(B" "$(CAf(B") + ("$(C$8$L$S$1(B" "$(CAg(B") + ("$(C$8$L$S$2(B" "$(CAh(B") + ("$(C$8$L$S$5(B" "$(CAi(B") + + ("$(C$8$P(B" "$(CAj(B") + ("$(C$8$P$$(B" "$(CAk(B") + ("$(C$8$P$)(B" "$(CAl(B") + ("$(C$8$P$1(B" "$(CAm(B") + + ("$(C$8$Q(B" "$(CAn(B") + ("$(C$8$Q$!(B" "$(CAo(B") + ("$(C$8$Q$$(B" "$(CAp(B") + ("$(C$8$Q$)(B" "$(CAq(B") + ("$(C$8$Q$1(B" "$(CAr(B") + ("$(C$8$Q$2(B" "$(CAs(B") + ("$(C$8$Q$5(B" "$(CAt(B") + ("$(C$8$Q$7(B" "$(CAu(B") + + ("$(C$8$S(B" "$(CAv(B") + ("$(C$8$S$!(B" "$(CAw(B") + ("$(C$8$S$$(B" "$(CAx(B") + ("$(C$8$S$'(B" "$(CAy(B") + ("$(C$8$S$)(B" "$(CAz(B") + ("$(C$8$S$)$1(B" "$(CA{(B") + ("$(C$8$S$1(B" "$(CA|(B") + ("$(C$8$S$2(B" "$(CA}(B") + ("$(C$8$S$5(B" "$(CA~(B") + ("$(C$8$S$7(B" "$(CB!(B") + ("$(C$8$S$8(B" "$(CB"(B") + ("$(C$8$S$<(B" "$(CB#(B") + ("$(C$8$S$=(B" "$(CB$(B") + + ("$(C$9$?(B" "$(CB%(B") + ("$(C$9$?$!(B" "$(CB&(B") + ("$(C$9$?$$(B" "$(CB'(B") + ("$(C$9$?$$$>(B" "$(CB((B") + ("$(C$9$?$)(B" "$(CB)(B") + ("$(C$9$?$)$2(B" "$(CB*(B") + ("$(C$9$?$1(B" "$(CB+(B") + ("$(C$9$?$2(B" "$(CB,(B") + ("$(C$9$?$5(B" "$(CB-(B") + ("$(C$9$?$6(B" "$(CB.(B") + ("$(C$9$?$7(B" "$(CB/(B") + + ("$(C$9$@(B" "$(CB0(B") + ("$(C$9$@$!(B" "$(CB1(B") + ("$(C$9$@$$(B" "$(CB2(B") + ("$(C$9$@$)(B" "$(CB3(B") + ("$(C$9$@$1(B" "$(CB4(B") + ("$(C$9$@$2(B" "$(CB5(B") + ("$(C$9$@$5(B" "$(CB6(B") + ("$(C$9$@$6(B" "$(CB7(B") + ("$(C$9$@$7(B" "$(CB8(B") + + ("$(C$9$A(B" "$(CB9(B") + ("$(C$9$A$$(B" "$(CB:(B") + ("$(C$9$A$7(B" "$(CB;(B") + + ("$(C$9$C(B" "$(CB<(B") + ("$(C$9$C$!(B" "$(CB=(B") + ("$(C$9$C$$(B" "$(CB>(B") + ("$(C$9$C$)(B" "$(CB?(B") + ("$(C$9$C$1(B" "$(CB@(B") + ("$(C$9$C$2(B" "$(CBA(B") + ("$(C$9$C$5(B" "$(CBB(B") + ("$(C$9$C$6(B" "$(CBC(B") + ("$(C$9$C$7(B" "$(CBD(B") + + ("$(C$9$D(B" "$(CBE(B") + ("$(C$9$D$7(B" "$(CBF(B") + + ("$(C$9$E(B" "$(CBG(B") + ("$(C$9$E$6(B" "$(CBH(B") + + ("$(C$9$G(B" "$(CBI(B") + ("$(C$9$G$!(B" "$(CBJ(B") + ("$(C$9$G$$(B" "$(CBK(B") + ("$(C$9$G$)(B" "$(CBL(B") + ("$(C$9$G$1(B" "$(CBM(B") + ("$(C$9$G$2(B" "$(CBN(B") + ("$(C$9$G$5(B" "$(CBO(B") + ("$(C$9$G$7(B" "$(CBP(B") + ("$(C$9$G$:(B" "$(CBQ(B") + + ("$(C$9$G$?(B" "$(CBR(B") + ("$(C$9$G$?$!(B" "$(CBS(B") + ("$(C$9$G$?$)(B" "$(CBT(B") + ("$(C$9$G$?$6(B" "$(CBU(B") + + ("$(C$9$G$@(B" "$(CBV(B") + ("$(C$9$G$@$6(B" "$(CBW(B") + + ("$(C$9$G$S(B" "$(CBX(B") + ("$(C$9$G$S$$(B" "$(CBY(B") + ("$(C$9$G$S$)(B" "$(CBZ(B") + ("$(C$9$G$S$1(B" "$(CB[(B") + ("$(C$9$G$S$2(B" "$(CB\(B") + + ("$(C$9$K$7(B" "$(CB](B") + + ("$(C$9$L(B" "$(CB^(B") + ("$(C$9$L$!(B" "$(CB_(B") + ("$(C$9$L$$(B" "$(CB`(B") + ("$(C$9$L$)(B" "$(CBa(B") + ("$(C$9$L$1(B" "$(CBb(B") + ("$(C$9$L$2(B" "$(CBc(B") + ("$(C$9$L$7(B" "$(CBd(B") + + ("$(C$9$L$C(B" "$(CBe(B") + ("$(C$9$L$C$6(B" "$(CBf(B") + ("$(C$9$L$C$7(B" "$(CBg(B") + + ("$(C$9$L$S(B" "$(CBh(B") + + ("$(C$9$P(B" "$(CBi(B") + + ("$(C$9$Q(B" "$(CBj(B") + ("$(C$9$Q$1(B" "$(CBk(B") + ("$(C$9$Q$5(B" "$(CBl(B") + ("$(C$9$Q$7(B" "$(CBm(B") + + ("$(C$9$S(B" "$(CBn(B") + ("$(C$9$S$!(B" "$(CBo(B") + ("$(C$9$S$$(B" "$(CBp(B") + ("$(C$9$S$)(B" "$(CBq(B") + ("$(C$9$S$1(B" "$(CBr(B") + ("$(C$9$S$2(B" "$(CBs(B") + ("$(C$9$S$7(B" "$(CBt(B") + ("$(C$9$S$8(B" "$(CBu(B") + ("$(C$9$S$>(B" "$(CBv(B") + + ("$(C$:$?(B" "$(CBw(B") + ("$(C$:$?$!(B" "$(CBx(B") + ("$(C$:$?$$(B" "$(CBy(B") + ("$(C$:$?$$$>(B" "$(CBz(B") + ("$(C$:$?$)(B" "$(CB{(B") + ("$(C$:$?$1(B" "$(CB|(B") + ("$(C$:$?$2(B" "$(CB}(B") + ("$(C$:$?$5(B" "$(CB~(B") + ("$(C$:$?$6(B" "$(CC!(B") + ("$(C$:$?$7(B" "$(CC"(B") + ("$(C$:$?$8(B" "$(CC#(B") + + ("$(C$:$@(B" "$(CC$(B") + ("$(C$:$@$!(B" "$(CC%(B") + ("$(C$:$@$$(B" "$(CC&(B") + ("$(C$:$@$)(B" "$(CC'(B") + ("$(C$:$@$1(B" "$(CC((B") + ("$(C$:$@$2(B" "$(CC)(B") + ("$(C$:$@$5(B" "$(CC*(B") + ("$(C$:$@$6(B" "$(CC+(B") + ("$(C$:$@$7(B" "$(CC,(B") + + ("$(C$:$A(B" "$(CC-(B") + ("$(C$:$A$$(B" "$(CC.(B") + ("$(C$:$A$$$>(B" "$(CC/(B") + ("$(C$:$A$)(B" "$(CC0(B") + ("$(C$:$A$1(B" "$(CC1(B") + ("$(C$:$A$7(B" "$(CC2(B") + + ("$(C$:$C(B" "$(CC3(B") + ("$(C$:$C$!(B" "$(CC4(B") + ("$(C$:$C$$(B" "$(CC5(B") + ("$(C$:$C$)(B" "$(CC6(B") + ("$(C$:$C$1(B" "$(CC7(B") + ("$(C$:$C$2(B" "$(CC8(B") + ("$(C$:$C$5(B" "$(CC9(B") + ("$(C$:$C$6(B" "$(CC:(B") + ("$(C$:$C$7(B" "$(CC;(B") + + ("$(C$:$D(B" "$(CC<(B") + ("$(C$:$D$!(B" "$(CC=(B") + ("$(C$:$D$$(B" "$(CC>(B") + ("$(C$:$D$)(B" "$(CC?(B") + ("$(C$:$D$1(B" "$(CC@(B") + ("$(C$:$D$2(B" "$(CCA(B") + ("$(C$:$D$5(B" "$(CCB(B") + ("$(C$:$D$7(B" "$(CCC(B") + + ("$(C$:$E(B" "$(CCD(B") + ("$(C$:$E$$(B" "$(CCE(B") + ("$(C$:$E$6(B" "$(CCF(B") + + ("$(C$:$F(B" "$(CCG(B") + ("$(C$:$F$$(B" "$(CCH(B") + ("$(C$:$F$7(B" "$(CCI(B") + + ("$(C$:$G(B" "$(CCJ(B") + ("$(C$:$G$!(B" "$(CCK(B") + ("$(C$:$G$$(B" "$(CCL(B") + ("$(C$:$G$)(B" "$(CCM(B") + ("$(C$:$G$1(B" "$(CCN(B") + ("$(C$:$G$2(B" "$(CCO(B") + ("$(C$:$G$5(B" "$(CCP(B") + ("$(C$:$G$7(B" "$(CCQ(B") + + ("$(C$:$G$?(B" "$(CCR(B") + ("$(C$:$G$?$$(B" "$(CCS(B") + ("$(C$:$G$?$)(B" "$(CCT(B") + ("$(C$:$G$?$7(B" "$(CCU(B") + + ("$(C$:$G$S(B" "$(CCV(B") + ("$(C$:$G$S$$(B" "$(CCW(B") + ("$(C$:$G$S$)(B" "$(CCX(B") + ("$(C$:$G$S$1(B" "$(CCY(B") + ("$(C$:$G$S$2(B" "$(CCZ(B") + ("$(C$:$G$S$5(B" "$(CC[(B") + ("$(C$:$G$S$7(B" "$(CC\(B") + + ("$(C$:$K(B" "$(CC](B") + ("$(C$:$K$1(B" "$(CC^(B") + + ("$(C$:$L(B" "$(CC_(B") + ("$(C$:$L$!(B" "$(CC`(B") + ("$(C$:$L$$(B" "$(CCa(B") + ("$(C$:$L$)(B" "$(CCb(B") + ("$(C$:$L$1(B" "$(CCc(B") + ("$(C$:$L$2(B" "$(CCd(B") + ("$(C$:$L$5(B" "$(CCe(B") + ("$(C$:$L$7(B" "$(CCf(B") + + ("$(C$:$L$C(B" "$(CCg(B") + ("$(C$:$L$C$6(B" "$(CCh(B") + + ("$(C$:$L$D(B" "$(CCi(B") + ("$(C$:$L$D$$(B" "$(CCj(B") + + ("$(C$:$L$S(B" "$(CCk(B") + ("$(C$:$L$S$$(B" "$(CCl(B") + ("$(C$:$L$S$)(B" "$(CCm(B") + ("$(C$:$L$S$1(B" "$(CCn(B") + ("$(C$:$L$S$2(B" "$(CCo(B") + ("$(C$:$L$S$5(B" "$(CCp(B") + ("$(C$:$L$S$7(B" "$(CCq(B") + + ("$(C$:$P(B" "$(CCr(B") + ("$(C$:$P$$(B" "$(CCs(B") + ("$(C$:$P$)(B" "$(CCt(B") + ("$(C$:$P$1(B" "$(CCu(B") + ("$(C$:$P$7(B" "$(CCv(B") + + ("$(C$:$Q(B" "$(CCw(B") + ("$(C$:$Q$!(B" "$(CCx(B") + ("$(C$:$Q$$(B" "$(CCy(B") + ("$(C$:$Q$)(B" "$(CCz(B") + ("$(C$:$Q$1(B" "$(CC{(B") + ("$(C$:$Q$2(B" "$(CC|(B") + ("$(C$:$Q$5(B" "$(CC}(B") + ("$(C$:$Q$7(B" "$(CC~(B") + + ("$(C$:$S(B" "$(CD!(B") + ("$(C$:$S$!(B" "$(CD"(B") + ("$(C$:$S$$(B" "$(CD#(B") + ("$(C$:$S$'(B" "$(CD$(B") + ("$(C$:$S$)(B" "$(CD%(B") + ("$(C$:$S$)$!(B" "$(CD&(B") + ("$(C$:$S$1(B" "$(CD'(B") + ("$(C$:$S$2(B" "$(CD((B") + ("$(C$:$S$5(B" "$(CD)(B") + ("$(C$:$S$7(B" "$(CD*(B") + + ("$(C$;$?(B" "$(CD+(B") + ("$(C$;$?$!(B" "$(CD,(B") + ("$(C$;$?$$(B" "$(CD-(B") + ("$(C$;$?$)(B" "$(CD.(B") + ("$(C$;$?$1(B" "$(CD/(B") + ("$(C$;$?$2(B" "$(CD0(B") + ("$(C$;$?$5(B" "$(CD1(B") + ("$(C$;$?$7(B" "$(CD2(B") + + ("$(C$;$@(B" "$(CD3(B") + ("$(C$;$@$!(B" "$(CD4(B") + ("$(C$;$@$$(B" "$(CD5(B") + ("$(C$;$@$)(B" "$(CD6(B") + ("$(C$;$@$1(B" "$(CD7(B") + ("$(C$;$@$2(B" "$(CD8(B") + ("$(C$;$@$5(B" "$(CD9(B") + ("$(C$;$@$6(B" "$(CD:(B") + ("$(C$;$@$7(B" "$(CD;(B") + + ("$(C$;$A(B" "$(CD<(B") + ("$(C$;$A$!(B" "$(CD=(B") + ("$(C$;$A$7(B" "$(CD>(B") + + ("$(C$;$C(B" "$(CD?(B") + ("$(C$;$C$!(B" "$(CD@(B") + ("$(C$;$C$$(B" "$(CDA(B") + ("$(C$;$C$'(B" "$(CDB(B") + ("$(C$;$C$)(B" "$(CDC(B") + ("$(C$;$C$1(B" "$(CDD(B") + ("$(C$;$C$2(B" "$(CDE(B") + ("$(C$;$C$5(B" "$(CDF(B") + ("$(C$;$C$6(B" "$(CDG(B") + ("$(C$;$C$7(B" "$(CDH(B") + + ("$(C$;$D(B" "$(CDI(B") + ("$(C$;$D$!(B" "$(CDJ(B") + ("$(C$;$D$$(B" "$(CDK(B") + ("$(C$;$D$)(B" "$(CDL(B") + ("$(C$;$D$1(B" "$(CDM(B") + ("$(C$;$D$2(B" "$(CDN(B") + ("$(C$;$D$5(B" "$(CDO(B") + ("$(C$;$D$7(B" "$(CDP(B") + + ("$(C$;$E(B" "$(CDQ(B") + ("$(C$;$E$$(B" "$(CDR(B") + ("$(C$;$E$)(B" "$(CDS(B") + ("$(C$;$E$1(B" "$(CDT(B") + ("$(C$;$E$2(B" "$(CDU(B") + ("$(C$;$E$5(B" "$(CDV(B") + ("$(C$;$E$6(B" "$(CDW(B") + ("$(C$;$E$7(B" "$(CDX(B") + + ("$(C$;$F(B" "$(CDY(B") + + ("$(C$;$G(B" "$(CDZ(B") + ("$(C$;$G$!(B" "$(CD[(B") + ("$(C$;$G$$(B" "$(CD\(B") + ("$(C$;$G$)(B" "$(CD](B") + ("$(C$;$G$1(B" "$(CD^(B") + ("$(C$;$G$2(B" "$(CD_(B") + ("$(C$;$G$5(B" "$(CD`(B") + ("$(C$;$G$7(B" "$(CDa(B") + + ("$(C$;$G$?(B" "$(CDb(B") + ("$(C$;$G$?$!(B" "$(CDc(B") + ("$(C$;$G$?$$(B" "$(CDd(B") + ("$(C$;$G$?$)(B" "$(CDe(B") + ("$(C$;$G$?$1(B" "$(CDf(B") + ("$(C$;$G$?$7(B" "$(CDg(B") + + ("$(C$;$G$@(B" "$(CDh(B") + ("$(C$;$G$@$7(B" "$(CDi(B") + + ("$(C$;$G$S(B" "$(CDj(B") + ("$(C$;$G$S$)(B" "$(CDk(B") + + ("$(C$;$K(B" "$(CDl(B") + + ("$(C$;$L(B" "$(CDm(B") + ("$(C$;$L$!(B" "$(CDn(B") + ("$(C$;$L$)(B" "$(CDp(B") + ("$(C$;$L$1(B" "$(CDq(B") + ("$(C$;$L$2(B" "$(CDr(B") + ("$(C$;$L$5(B" "$(CDs(B") + ("$(C$;$L$7(B" "$(CDt(B") + + ("$(C$;$L$C(B" "$(CDu(B") + ("$(C$;$L$C$$(B" "$(CDv(B") + ("$(C$;$L$C$)(B" "$(CDw(B") + ("$(C$;$L$C$7(B" "$(CDx(B") + + ("$(C$;$L$D(B" "$(CDy(B") + ("$(C$;$L$D$7(B" "$(CDz(B") + + ("$(C$;$L$S(B" "$(CD{(B") + ("$(C$;$L$S$!(B" "$(CD|(B") + ("$(C$;$L$S$$(B" "$(CD}(B") + ("$(C$;$L$S$)(B" "$(CD~(B") + ("$(C$;$L$S$1(B" "$(CE!(B") + ("$(C$;$L$S$2(B" "$(CE"(B") + ("$(C$;$L$S$5(B" "$(CE#(B") + ("$(C$;$L$S$7(B" "$(CE$(B") + + ("$(C$;$P(B" "$(CE%(B") + ("$(C$;$P$$(B" "$(CE&(B") + ("$(C$;$P$)(B" "$(CE'(B") + ("$(C$;$P$1(B" "$(CE((B") + + ("$(C$;$Q(B" "$(CE)(B") + ("$(C$;$Q$!(B" "$(CE*(B") + ("$(C$;$Q$$(B" "$(CE+(B") + ("$(C$;$Q$)(B" "$(CE,(B") + ("$(C$;$Q$1(B" "$(CE-(B") + ("$(C$;$Q$2(B" "$(CE.(B") + ("$(C$;$Q$7(B" "$(CE/(B") + + ("$(C$;$S(B" "$(CE0(B") + ("$(C$;$S$!(B" "$(CE1(B") + ("$(C$;$S$$(B" "$(CE2(B") + ("$(C$;$S$)(B" "$(CE3(B") + ("$(C$;$S$1(B" "$(CE4(B") + ("$(C$;$S$2(B" "$(CE5(B") + ("$(C$;$S$5(B" "$(CE6(B") + ("$(C$;$S$7(B" "$(CE7(B") + + ("$(C$<$?(B" "$(CE8(B") + ("$(C$<$?$!(B" "$(CE9(B") + ("$(C$<$?$$(B" "$(CE:(B") + ("$(C$<$?$)(B" "$(CE;(B") + ("$(C$<$?$)$!(B" "$(CE<(B") + ("$(C$<$?$1(B" "$(CE=(B") + ("$(C$<$?$2(B" "$(CE>(B") + ("$(C$<$?$5(B" "$(CE?(B") + ("$(C$<$?$6(B" "$(CE@(B") + ("$(C$<$?$7(B" "$(CEA(B") + + ("$(C$<$@(B" "$(CEB(B") + ("$(C$<$@$!(B" "$(CEC(B") + ("$(C$<$@$$(B" "$(CED(B") + ("$(C$<$@$)(B" "$(CEE(B") + ("$(C$<$@$1(B" "$(CEF(B") + ("$(C$<$@$2(B" "$(CEG(B") + ("$(C$<$@$5(B" "$(CEH(B") + ("$(C$<$@$6(B" "$(CEI(B") + ("$(C$<$@$7(B" "$(CEJ(B") + + ("$(C$<$A(B" "$(CEK(B") + ("$(C$<$A$7(B" "$(CEL(B") + + ("$(C$<$C(B" "$(CEM(B") + ("$(C$<$C$!(B" "$(CEN(B") + ("$(C$<$C$$(B" "$(CEO(B") + ("$(C$<$C$)(B" "$(CEP(B") + ("$(C$<$C$)$1(B" "$(CEQ(B") + ("$(C$<$C$1(B" "$(CER(B") + ("$(C$<$C$2(B" "$(CES(B") + ("$(C$<$C$5(B" "$(CET(B") + ("$(C$<$C$6(B" "$(CEU(B") + ("$(C$<$C$7(B" "$(CEV(B") + + ("$(C$<$D(B" "$(CEW(B") + ("$(C$<$D$!(B" "$(CEX(B") + ("$(C$<$D$$(B" "$(CEY(B") + ("$(C$<$D$)(B" "$(CEZ(B") + ("$(C$<$D$1(B" "$(CE[(B") + ("$(C$<$D$2(B" "$(CE\(B") + ("$(C$<$D$5(B" "$(CE](B") + ("$(C$<$D$7(B" "$(CE^(B") + + ("$(C$<$E(B" "$(CE_(B") + ("$(C$<$E$$(B" "$(CE`(B") + ("$(C$<$E$6(B" "$(CEa(B") + + ("$(C$<$F(B" "$(CEb(B") + ("$(C$<$F$$(B" "$(CEc(B") + + ("$(C$<$G(B" "$(CEd(B") + ("$(C$<$G$!(B" "$(CEe(B") + ("$(C$<$G$$(B" "$(CEf(B") + ("$(C$<$G$)(B" "$(CEg(B") + ("$(C$<$G$1(B" "$(CEh(B") + ("$(C$<$G$2(B" "$(CEi(B") + ("$(C$<$G$5(B" "$(CEj(B") + ("$(C$<$G$7(B" "$(CEk(B") + ("$(C$<$G$=(B" "$(CEl(B") + + ("$(C$<$G$?(B" "$(CEm(B") + ("$(C$<$G$?$$(B" "$(CEn(B") + + ("$(C$<$G$@(B" "$(CEo(B") + + ("$(C$<$G$S(B" "$(CEp(B") + ("$(C$<$G$S$$(B" "$(CEq(B") + ("$(C$<$G$S$5(B" "$(CEr(B") + ("$(C$<$G$S$7(B" "$(CEs(B") + + ("$(C$<$K(B" "$(CEt(B") + + ("$(C$<$L(B" "$(CEu(B") + ("$(C$<$L$!(B" "$(CEv(B") + ("$(C$<$L$$(B" "$(CEw(B") + ("$(C$<$L$)(B" "$(CEx(B") + ("$(C$<$L$1(B" "$(CEy(B") + ("$(C$<$L$2(B" "$(CEz(B") + ("$(C$<$L$5(B" "$(CE{(B") + ("$(C$<$L$7(B" "$(CE|(B") + + ("$(C$<$L$C(B" "$(CE}(B") + ("$(C$<$L$C$6(B" "$(CE~(B") + + ("$(C$<$L$D(B" "$(CF!(B") + + ("$(C$<$L$S(B" "$(CF"(B") + ("$(C$<$L$S$!(B" "$(CF#(B") + ("$(C$<$L$S$$(B" "$(CF$(B") + ("$(C$<$L$S$)(B" "$(CF%(B") + ("$(C$<$L$S$1(B" "$(CF&(B") + ("$(C$<$L$S$2(B" "$(CF'(B") + ("$(C$<$L$S$7(B" "$(CF((B") + + ("$(C$<$P(B" "$(CF)(B") + ("$(C$<$P$$(B" "$(CF*(B") + ("$(C$<$P$)(B" "$(CF+(B") + ("$(C$<$P$1(B" "$(CF,(B") + ("$(C$<$P$7(B" "$(CF-(B") + + ("$(C$<$Q(B" "$(CF.(B") + ("$(C$<$Q$!(B" "$(CF/(B") + ("$(C$<$Q$$(B" "$(CF0(B") + ("$(C$<$Q$'(B" "$(CF1(B") + ("$(C$<$Q$)(B" "$(CF2(B") + ("$(C$<$Q$)$1(B" "$(CF3(B") + ("$(C$<$Q$1(B" "$(CF4(B") + ("$(C$<$Q$2(B" "$(CF5(B") + ("$(C$<$Q$5(B" "$(CF6(B") + + ("$(C$<$Q$S(B" "$(CF7(B") + ("$(C$<$Q$S$$(B" "$(CF8(B") + ("$(C$<$Q$S$)(B" "$(CF9(B") + ("$(C$<$Q$S$1(B" "$(CF:(B") + ("$(C$<$Q$S$2(B" "$(CF;(B") + + ("$(C$<$S(B" "$(CF<(B") + ("$(C$<$S$!(B" "$(CF=(B") + ("$(C$<$S$$(B" "$(CF>(B") + ("$(C$<$S$)(B" "$(CF?(B") + ("$(C$<$S$1(B" "$(CF@(B") + ("$(C$<$S$2(B" "$(CFA(B") + ("$(C$<$S$5(B" "$(CFB(B") + ("$(C$<$S$7(B" "$(CFC(B") + + ("$(C$=$?(B" "$(CFD(B") + ("$(C$=$?$!(B" "$(CFE(B") + ("$(C$=$?$"(B" "$(CFF(B") + ("$(C$=$?$$(B" "$(CFG(B") + ("$(C$=$?$)(B" "$(CFH(B") + ("$(C$=$?$)$1(B" "$(CFI(B") + ("$(C$=$?$1(B" "$(CFJ(B") + ("$(C$=$?$2(B" "$(CFK(B") + ("$(C$=$?$5(B" "$(CFL(B") + ("$(C$=$?$6(B" "$(CFM(B") + ("$(C$=$?$7(B" "$(CFN(B") + ("$(C$=$?$<(B" "$(CFO(B") + + ("$(C$=$@(B" "$(CFP(B") + ("$(C$=$@$!(B" "$(CFQ(B") + ("$(C$=$@$$(B" "$(CFR(B") + ("$(C$=$@$)(B" "$(CFS(B") + ("$(C$=$@$1(B" "$(CFT(B") + ("$(C$=$@$2(B" "$(CFU(B") + ("$(C$=$@$5(B" "$(CFV(B") + ("$(C$=$@$6(B" "$(CFW(B") + ("$(C$=$@$7(B" "$(CFX(B") + + ("$(C$=$A(B" "$(CFY(B") + ("$(C$=$A$!(B" "$(CFZ(B") + + ("$(C$=$C(B" "$(CF[(B") + ("$(C$=$C$!(B" "$(CF\(B") + ("$(C$=$C$$(B" "$(CF](B") + ("$(C$=$C$1(B" "$(CF_(B") + ("$(C$=$C$2(B" "$(CF`(B") + ("$(C$=$C$5(B" "$(CFa(B") + ("$(C$=$C$6(B" "$(CFb(B") + ("$(C$=$C$7(B" "$(CFc(B") + + ("$(C$=$D(B" "$(CFd(B") + ("$(C$=$D$!(B" "$(CFe(B") + ("$(C$=$D$$(B" "$(CFf(B") + ("$(C$=$D$)(B" "$(CFg(B") + ("$(C$=$D$1(B" "$(CFh(B") + ("$(C$=$D$2(B" "$(CFi(B") + ("$(C$=$D$5(B" "$(CFj(B") + ("$(C$=$D$7(B" "$(CFk(B") + + ("$(C$=$E(B" "$(CFl(B") + ("$(C$=$E$$(B" "$(CFm(B") + ("$(C$=$E$)(B" "$(CFn(B") + ("$(C$=$E$1(B" "$(CFo(B") + ("$(C$=$E$2(B" "$(CFp(B") + ("$(C$=$E$6(B" "$(CFq(B") + ("$(C$=$E$7(B" "$(CFr(B") + + ("$(C$=$F(B" "$(CFs(B") + ("$(C$=$F$)(B" "$(CFt(B") + ("$(C$=$F$2(B" "$(CFu(B") + ("$(C$=$F$5(B" "$(CFv(B") + + ("$(C$=$G(B" "$(CFw(B") + ("$(C$=$G$!(B" "$(CFx(B") + ("$(C$=$G$$(B" "$(CFy(B") + ("$(C$=$G$)(B" "$(CFz(B") + ("$(C$=$G$1(B" "$(CF{(B") + ("$(C$=$G$2(B" "$(CF|(B") + ("$(C$=$G$5(B" "$(CF}(B") + ("$(C$=$G$7(B" "$(CF~(B") + + ("$(C$=$G$?(B" "$(CG!(B") + ("$(C$=$G$?$7(B" "$(CG"(B") + + ("$(C$=$G$S(B" "$(CG#(B") + ("$(C$=$G$S$$(B" "$(CG$(B") + + ("$(C$=$K(B" "$(CG%(B") + ("$(C$=$K$$(B" "$(CG&(B") + ("$(C$=$K$)(B" "$(CG'(B") + ("$(C$=$K$2(B" "$(CG((B") + ("$(C$=$K$5(B" "$(CG)(B") + + ("$(C$=$L(B" "$(CG*(B") + ("$(C$=$L$!(B" "$(CG+(B") + ("$(C$=$L$$(B" "$(CG,(B") + ("$(C$=$L$'(B" "$(CG-(B") + ("$(C$=$L$)(B" "$(CG.(B") + ("$(C$=$L$)$1(B" "$(CG/(B") + ("$(C$=$L$1(B" "$(CG0(B") + ("$(C$=$L$2(B" "$(CG1(B") + ("$(C$=$L$5(B" "$(CG2(B") + ("$(C$=$L$7(B" "$(CG3(B") + + ("$(C$=$L$C(B" "$(CG4(B") + ("$(C$=$L$C$7(B" "$(CG5(B") + + ("$(C$=$L$S(B" "$(CG6(B") + ("$(C$=$L$S$$(B" "$(CG7(B") + ("$(C$=$L$S$)(B" "$(CG8(B") + ("$(C$=$L$S$1(B" "$(CG9(B") + ("$(C$=$L$S$5(B" "$(CG:(B") + + ("$(C$=$P(B" "$(CG;(B") + ("$(C$=$P$$(B" "$(CG<(B") + ("$(C$=$P$)(B" "$(CG=(B") + ("$(C$=$P$1(B" "$(CG>(B") + ("$(C$=$P$5(B" "$(CG?(B") + ("$(C$=$P$7(B" "$(CG@(B") + + ("$(C$=$Q(B" "$(CGA(B") + ("$(C$=$Q$$(B" "$(CGB(B") + ("$(C$=$Q$)(B" "$(CGC(B") + ("$(C$=$Q$1(B" "$(CGD(B") + ("$(C$=$Q$2(B" "$(CGE(B") + ("$(C$=$Q$5(B" "$(CGF(B") + + ("$(C$=$S(B" "$(CGG(B") + ("$(C$=$S$!(B" "$(CGH(B") + ("$(C$=$S$$(B" "$(CGI(B") + ("$(C$=$S$)(B" "$(CGJ(B") + ("$(C$=$S$1(B" "$(CGK(B") + ("$(C$=$S$2(B" "$(CGL(B") + ("$(C$=$S$5(B" "$(CGM(B") + ("$(C$=$S$7(B" "$(CGN(B") + + ("$(C$>$?(B" "$(CGO(B") + ("$(C$>$?$!(B" "$(CGP(B") + ("$(C$>$?$$(B" "$(CGQ(B") + ("$(C$>$?$)(B" "$(CGR(B") + ("$(C$>$?$)$<(B" "$(CGS(B") + ("$(C$>$?$1(B" "$(CGT(B") + ("$(C$>$?$2(B" "$(CGU(B") + ("$(C$>$?$5(B" "$(CGV(B") + ("$(C$>$?$7(B" "$(CGW(B") + + ("$(C$>$@(B" "$(CGX(B") + ("$(C$>$@$!(B" "$(CGY(B") + ("$(C$>$@$$(B" "$(CGZ(B") + ("$(C$>$@$)(B" "$(CG[(B") + ("$(C$>$@$1(B" "$(CG\(B") + ("$(C$>$@$2(B" "$(CG](B") + ("$(C$>$@$5(B" "$(CG^(B") + ("$(C$>$@$6(B" "$(CG_(B") + ("$(C$>$@$7(B" "$(CG`(B") + + ("$(C$>$A(B" "$(CGa(B") + ("$(C$>$A$7(B" "$(CGb(B") + + ("$(C$>$C(B" "$(CGc(B") + ("$(C$>$C$!(B" "$(CGd(B") + ("$(C$>$C$$(B" "$(CGe(B") + ("$(C$>$C$)(B" "$(CGf(B") + ("$(C$>$C$)$1(B" "$(CGg(B") + ("$(C$>$C$1(B" "$(CGh(B") + ("$(C$>$C$2(B" "$(CGi(B") + ("$(C$>$C$5(B" "$(CGj(B") + ("$(C$>$C$7(B" "$(CGk(B") + + ("$(C$>$D(B" "$(CGl(B") + ("$(C$>$D$!(B" "$(CGm(B") + ("$(C$>$D$$(B" "$(CGn(B") + ("$(C$>$D$)(B" "$(CGo(B") + ("$(C$>$D$1(B" "$(CGp(B") + ("$(C$>$D$2(B" "$(CGq(B") + ("$(C$>$D$5(B" "$(CGr(B") + ("$(C$>$D$7(B" "$(CGs(B") + + ("$(C$>$E(B" "$(CGt(B") + ("$(C$>$E$!(B" "$(CGu(B") + ("$(C$>$E$$(B" "$(CGv(B") + ("$(C$>$E$)(B" "$(CGw(B") + ("$(C$>$E$1(B" "$(CGx(B") + ("$(C$>$E$2(B" "$(CGy(B") + ("$(C$>$E$5(B" "$(CGz(B") + ("$(C$>$E$6(B" "$(CG{(B") + ("$(C$>$E$7(B" "$(CG|(B") + + ("$(C$>$F(B" "$(CG}(B") + ("$(C$>$F$$(B" "$(CG~(B") + ("$(C$>$F$)(B" "$(CH!(B") + ("$(C$>$F$2(B" "$(CH"(B") + + ("$(C$>$G(B" "$(CH#(B") + ("$(C$>$G$!(B" "$(CH$(B") + ("$(C$>$G$$(B" "$(CH%(B") + ("$(C$>$G$)(B" "$(CH&(B") + ("$(C$>$G$)$<(B" "$(CH'(B") + ("$(C$>$G$1(B" "$(CH((B") + ("$(C$>$G$2(B" "$(CH)(B") + ("$(C$>$G$5(B" "$(CH*(B") + ("$(C$>$G$7(B" "$(CH+(B") + ("$(C$>$G$<(B" "$(CH,(B") + + ("$(C$>$G$?(B" "$(CH-(B") + ("$(C$>$G$?$!(B" "$(CH.(B") + ("$(C$>$G$?$$(B" "$(CH/(B") + ("$(C$>$G$?$)(B" "$(CH0(B") + ("$(C$>$G$?$5(B" "$(CH1(B") + ("$(C$>$G$?$7(B" "$(CH2(B") + + ("$(C$>$G$@(B" "$(CH3(B") + ("$(C$>$G$@$!(B" "$(CH4(B") + ("$(C$>$G$@$$(B" "$(CH5(B") + ("$(C$>$G$@$5(B" "$(CH6(B") + ("$(C$>$G$@$7(B" "$(CH7(B") + + ("$(C$>$G$S(B" "$(CH8(B") + ("$(C$>$G$S$!(B" "$(CH9(B") + ("$(C$>$G$S$$(B" "$(CH:(B") + ("$(C$>$G$S$)(B" "$(CH;(B") + ("$(C$>$G$S$2(B" "$(CH<(B") + ("$(C$>$G$S$5(B" "$(CH=(B") + ("$(C$>$G$S$7(B" "$(CH>(B") + + ("$(C$>$K(B" "$(CH?(B") + ("$(C$>$K$$(B" "$(CH@(B") + ("$(C$>$K$)(B" "$(CHA(B") + ("$(C$>$K$2(B" "$(CHB(B") + ("$(C$>$K$5(B" "$(CHC(B") + + ("$(C$>$L(B" "$(CHD(B") + ("$(C$>$L$!(B" "$(CHE(B") + ("$(C$>$L$$(B" "$(CHF(B") + ("$(C$>$L$)(B" "$(CHG(B") + ("$(C$>$L$)$<(B" "$(CHH(B") + ("$(C$>$L$1(B" "$(CHI(B") + ("$(C$>$L$5(B" "$(CHJ(B") + ("$(C$>$L$7(B" "$(CHK(B") + + ("$(C$>$L$C(B" "$(CHL(B") + ("$(C$>$L$C$$(B" "$(CHM(B") + ("$(C$>$L$C$)(B" "$(CHN(B") + ("$(C$>$L$C$1(B" "$(CHO(B") + ("$(C$>$L$C$7(B" "$(CHP(B") + + ("$(C$>$L$D(B" "$(CHQ(B") + ("$(C$>$L$D$!(B" "$(CHR(B") + ("$(C$>$L$D$$(B" "$(CHS(B") + ("$(C$>$L$D$)(B" "$(CHT(B") + ("$(C$>$L$D$7(B" "$(CHU(B") + + ("$(C$>$L$S(B" "$(CHV(B") + ("$(C$>$L$S$!(B" "$(CHW(B") + ("$(C$>$L$S$$(B" "$(CHX(B") + ("$(C$>$L$S$)(B" "$(CHY(B") + ("$(C$>$L$S$1(B" "$(CHZ(B") + ("$(C$>$L$S$2(B" "$(CH[(B") + ("$(C$>$L$S$5(B" "$(CH\(B") + ("$(C$>$L$S$7(B" "$(CH](B") + + ("$(C$>$P(B" "$(CH^(B") + ("$(C$>$P$!(B" "$(CH_(B") + ("$(C$>$P$$(B" "$(CH`(B") + ("$(C$>$P$)(B" "$(CHa(B") + ("$(C$>$P$1(B" "$(CHb(B") + ("$(C$>$P$5(B" "$(CHc(B") + ("$(C$>$P$7(B" "$(CHd(B") + + ("$(C$>$Q(B" "$(CHe(B") + ("$(C$>$Q$!(B" "$(CHf(B") + ("$(C$>$Q$$(B" "$(CHg(B") + ("$(C$>$Q$$$>(B" "$(CHh(B") + ("$(C$>$Q$'(B" "$(CHi(B") + ("$(C$>$Q$)(B" "$(CHj(B") + ("$(C$>$Q$)$!(B" "$(CHk(B") + ("$(C$>$Q$1(B" "$(CHl(B") + ("$(C$>$Q$2(B" "$(CHm(B") + ("$(C$>$Q$5(B" "$(CHn(B") + ("$(C$>$Q$7(B" "$(CHo(B") + ("$(C$>$Q$<(B" "$(CHp(B") + + ("$(C$>$Q$S(B" "$(CHq(B") + ("$(C$>$Q$S$$(B" "$(CHr(B") + ("$(C$>$Q$S$)(B" "$(CHs(B") + ("$(C$>$Q$S$1(B" "$(CHt(B") + ("$(C$>$Q$S$2(B" "$(CHu(B") + ("$(C$>$Q$S$7(B" "$(CHv(B") + + ("$(C$>$S(B" "$(CHw(B") + ("$(C$>$S$!(B" "$(CHx(B") + ("$(C$>$S$$(B" "$(CHy(B") + ("$(C$>$S$)(B" "$(CHz(B") + ("$(C$>$S$1(B" "$(CH{(B") + ("$(C$>$S$2(B" "$(CH|(B") + ("$(C$>$S$5(B" "$(CH}(B") + ("$(C$>$S$7(B" "$(CH~(B")) (dolist (ascii '(("1" . "$(C#1(B") ("2" . "$(C#2(B") ("3" . "$(C#3(B") ("4" . "$(C#4(B") - ("5" . "$(C#5(B") ("6" . "$(C#6(B") ("7" . "$(C#7(B") ("8" . "$(C#8(B") - ("9" . "$(C#9(B") ("0" . "$(C#0(B") - (" " . "$(C!!(B") ("!" . "$(C#!(B") ("@" . "$(C#@(B") ("#" . "$(C##(B") - ("$" . "$(C#$(B") ("%" . "$(C#%(B") ("^" . "$(C#^(B") ("&" . "$(C#&(B") - ("*" . "$(C#*(B") ("(" . "$(C#((B") (")" . "$(C#)(B") - ("-" . "$(C#-(B") ("=" . "$(C#=(B") ("`" . "$(C#`(B") ("\\" . "$(C#\(B") - ("|" . "$(C#|(B") ("_" . "$(C#_(B") ("+" . "$(C#+(B") ("~" . "$(C#~(B") - ("[" . "$(C!8(B") ("]" . "$(C!9(B") ("{" . "$(C#{(B") ("}" . "$(C#}(B") - (":" . "$(C#:(B") (";" . "$(C#;(B") ("\"" . "$(C#"(B") ("'" . "$(C#'(B") - ("<" . "$(C#<(B") (">" . "$(C#>(B") ("?" . "$(C#?(B") ("/" . "$(C#/(B") - ("," . "$(C#,(B") ("." . "$(C#.(B") - ("a" . "$(C#a(B") ("b" . "$(C#b(B") ("c" . "$(C#c(B") ("d" . "$(C#d(B") - ("e" . "$(C#e(B") ("f" . "$(C#f(B") ("g" . "$(C#g(B") ("h" . "$(C#h(B") - ("i" . "$(C#i(B") ("j" . "$(C#j(B") ("k" . "$(C#k(B") ("l" . "$(C#l(B") - ("m" . "$(C#m(B") ("n" . "$(C#n(B") ("o" . "$(C#o(B") ("p" . "$(C#p(B") - ("q" . "$(C#q(B") ("r" . "$(C#r(B") ("s" . "$(C#s(B") ("t" . "$(C#t(B") - ("u" . "$(C#u(B") ("v" . "$(C#v(B") ("w" . "$(C#w(B") ("x" . "$(C#x(B") - ("y" . "$(C#y(B") ("z" . "$(C#z(B") - ("A" . "$(C#A(B") ("B" . "$(C#B(B") ("C" . "$(C#C(B") ("D" . "$(C#D(B") - ("E" . "$(C#E(B") ("F" . "$(C#F(B") ("G" . "$(C#G(B") ("H" . "$(C#H(B") - ("I" . "$(C#I(B") ("J" . "$(C#J(B") ("K" . "$(C#K(B") ("L" . "$(C#L(B") - ("M" . "$(C#M(B") ("N" . "$(C#N(B") ("O" . "$(C#O(B") ("P" . "$(C#P(B") - ("Q" . "$(C#Q(B") ("R" . "$(C#R(B") ("S" . "$(C#S(B") ("T" . "$(C#T(B") - ("U" . "$(C#U(B") ("V" . "$(C#V(B") ("W" . "$(C#W(B") ("X" . "$(C#X(B") - ("Y" . "$(C#Y(B") ("Z" . "$(C#Z(B"))) + ("5" . "$(C#5(B") ("6" . "$(C#6(B") ("7" . "$(C#7(B") ("8" . "$(C#8(B") + ("9" . "$(C#9(B") ("0" . "$(C#0(B") + (" " . "$(C!!(B") ("!" . "$(C#!(B") ("@" . "$(C#@(B") ("#" . "$(C##(B") + ("$" . "$(C#$(B") ("%" . "$(C#%(B") ("^" . "$(C#^(B") ("&" . "$(C#&(B") + ("*" . "$(C#*(B") ("(" . "$(C#((B") (")" . "$(C#)(B") + ("-" . "$(C#-(B") ("=" . "$(C#=(B") ("`" . "$(C#`(B") ("\\" . "$(C#\(B") + ("|" . "$(C#|(B") ("_" . "$(C#_(B") ("+" . "$(C#+(B") ("~" . "$(C#~(B") + ("[" . "$(C!8(B") ("]" . "$(C!9(B") ("{" . "$(C#{(B") ("}" . "$(C#}(B") + (":" . "$(C#:(B") (";" . "$(C#;(B") ("\"" . "$(C#"(B") ("'" . "$(C#'(B") + ("<" . "$(C#<(B") (">" . "$(C#>(B") ("?" . "$(C#?(B") ("/" . "$(C#/(B") + ("," . "$(C#,(B") ("." . "$(C#.(B") + ("a" . "$(C#a(B") ("b" . "$(C#b(B") ("c" . "$(C#c(B") ("d" . "$(C#d(B") + ("e" . "$(C#e(B") ("f" . "$(C#f(B") ("g" . "$(C#g(B") ("h" . "$(C#h(B") + ("i" . "$(C#i(B") ("j" . "$(C#j(B") ("k" . "$(C#k(B") ("l" . "$(C#l(B") + ("m" . "$(C#m(B") ("n" . "$(C#n(B") ("o" . "$(C#o(B") ("p" . "$(C#p(B") + ("q" . "$(C#q(B") ("r" . "$(C#r(B") ("s" . "$(C#s(B") ("t" . "$(C#t(B") + ("u" . "$(C#u(B") ("v" . "$(C#v(B") ("w" . "$(C#w(B") ("x" . "$(C#x(B") + ("y" . "$(C#y(B") ("z" . "$(C#z(B") + ("A" . "$(C#A(B") ("B" . "$(C#B(B") ("C" . "$(C#C(B") ("D" . "$(C#D(B") + ("E" . "$(C#E(B") ("F" . "$(C#F(B") ("G" . "$(C#G(B") ("H" . "$(C#H(B") + ("I" . "$(C#I(B") ("J" . "$(C#J(B") ("K" . "$(C#K(B") ("L" . "$(C#L(B") + ("M" . "$(C#M(B") ("N" . "$(C#N(B") ("O" . "$(C#O(B") ("P" . "$(C#P(B") + ("Q" . "$(C#Q(B") ("R" . "$(C#R(B") ("S" . "$(C#S(B") ("T" . "$(C#T(B") + ("U" . "$(C#U(B") ("V" . "$(C#V(B") ("W" . "$(C#W(B") ("X" . "$(C#X(B") + ("Y" . "$(C#Y(B") ("Z" . "$(C#Z(B"))) (let ((in (car ascii)) (out (cdr ascii))) - (its-defrule (concat its-pankak-escape in) in) - (its-defrule (concat its-jeonkak-escape in) out)))) + (its-defrule (concat its-pankak-escape in) in) + (its-defrule (concat its-jeonkak-escape in) out)))) (define-its-state-machine-append its-hangul-map (its-defrule "[" its-hangul-open-bracket) @@ -2869,45 +2898,45 @@ (its-defrule "," its-hangul-comma) (if its-hangul-enable-jeonkak-alphabet - (progn - (its-defrule "1" "$(C#1(B") (its-defrule "2" "$(C#2(B") - (its-defrule "3" "$(C#3(B") (its-defrule "4" "$(C#4(B") - (its-defrule "5" "$(C#5(B") (its-defrule "6" "$(C#6(B") - (its-defrule "7" "$(C#7(B") (its-defrule "8" "$(C#8(B") - (its-defrule "9" "$(C#9(B") (its-defrule "0" "$(C#0(B") - (its-defrule "!" "$(C#!(B") (its-defrule "@" "$(C#@(B") - (its-defrule "#" "$(C##(B") (its-defrule "$" "$(C#$(B") - (its-defrule "%" "$(C#%(B") (its-defrule "^" "$(C#^(B") - (its-defrule "&" "$(C#&(B") (its-defrule "*" "$(C#*(B") - (its-defrule "(" "$(C#((B") (its-defrule ")" "$(C#)(B") - (its-defrule "-" "$(C#-(B") (its-defrule "~" "$(C#~(B") - (its-defrule "=" "$(C#=(B") (its-defrule "`" "$(C#`(B") - (its-defrule "\\" "$(C#\(B") (its-defrule "|" "$(C#|(B") - (its-defrule "_" "$(C#_(B") (its-defrule "+" "$(C#+(B") - (its-defrule "{" "$(C#{(B") (its-defrule "}" "$(C#}(B") - (its-defrule ":" "$(C#:(B") (its-defrule ";" "$(C#;(B") - (its-defrule "\"" "$(C#"(B") (its-defrule "'" "$(C#'(B") - (its-defrule "<" "$(C#<(B") (its-defrule ">" "$(C#>(B") - (its-defrule "?" "$(C#?(B") (its-defrule "/" "$(C#/(B")) + (progn + (its-defrule "1" "$(C#1(B") (its-defrule "2" "$(C#2(B") + (its-defrule "3" "$(C#3(B") (its-defrule "4" "$(C#4(B") + (its-defrule "5" "$(C#5(B") (its-defrule "6" "$(C#6(B") + (its-defrule "7" "$(C#7(B") (its-defrule "8" "$(C#8(B") + (its-defrule "9" "$(C#9(B") (its-defrule "0" "$(C#0(B") + (its-defrule "!" "$(C#!(B") (its-defrule "@" "$(C#@(B") + (its-defrule "#" "$(C##(B") (its-defrule "$" "$(C#$(B") + (its-defrule "%" "$(C#%(B") (its-defrule "^" "$(C#^(B") + (its-defrule "&" "$(C#&(B") (its-defrule "*" "$(C#*(B") + (its-defrule "(" "$(C#((B") (its-defrule ")" "$(C#)(B") + (its-defrule "-" "$(C#-(B") (its-defrule "~" "$(C#~(B") + (its-defrule "=" "$(C#=(B") (its-defrule "`" "$(C#`(B") + (its-defrule "\\" "$(C#\(B") (its-defrule "|" "$(C#|(B") + (its-defrule "_" "$(C#_(B") (its-defrule "+" "$(C#+(B") + (its-defrule "{" "$(C#{(B") (its-defrule "}" "$(C#}(B") + (its-defrule ":" "$(C#:(B") (its-defrule ";" "$(C#;(B") + (its-defrule "\"" "$(C#"(B") (its-defrule "'" "$(C#'(B") + (its-defrule "<" "$(C#<(B") (its-defrule ">" "$(C#>(B") + (its-defrule "?" "$(C#?(B") (its-defrule "/" "$(C#/(B")) (progn - (its-defrule "1" "1") (its-defrule "2" "2") - (its-defrule "3" "3") (its-defrule "4" "4") - (its-defrule "5" "5") (its-defrule "6" "6") - (its-defrule "7" "7") (its-defrule "8" "8") - (its-defrule "9" "9") (its-defrule "0" "0") - (its-defrule "!" "!") (its-defrule "@" "@") - (its-defrule "#" "#") (its-defrule "$" "$") - (its-defrule "%" "%") (its-defrule "^" "^") - (its-defrule "&" "&") (its-defrule "*" "*") - (its-defrule "(" "(") (its-defrule ")" ")") - (its-defrule "-" "-") (its-defrule "~" "~") - (its-defrule "=" "=") (its-defrule "`" "`") - (its-defrule "\\" "\\") (its-defrule "|" "|") - (its-defrule "_" "_") (its-defrule "+" "+") - (its-defrule "{" "{") (its-defrule "}" "}") - (its-defrule ":" ":") (its-defrule ";" ";") - (its-defrule "\"" "\"") (its-defrule "'" "'") - (its-defrule "<" "<") (its-defrule ">" ">") - (its-defrule "?" "?") (its-defrule "/" "/")))) + (its-defrule "1" "1") (its-defrule "2" "2") + (its-defrule "3" "3") (its-defrule "4" "4") + (its-defrule "5" "5") (its-defrule "6" "6") + (its-defrule "7" "7") (its-defrule "8" "8") + (its-defrule "9" "9") (its-defrule "0" "0") + (its-defrule "!" "!") (its-defrule "@" "@") + (its-defrule "#" "#") (its-defrule "$" "$") + (its-defrule "%" "%") (its-defrule "^" "^") + (its-defrule "&" "&") (its-defrule "*" "*") + (its-defrule "(" "(") (its-defrule ")" ")") + (its-defrule "-" "-") (its-defrule "~" "~") + (its-defrule "=" "=") (its-defrule "`" "`") + (its-defrule "\\" "\\") (its-defrule "|" "|") + (its-defrule "_" "_") (its-defrule "+" "+") + (its-defrule "{" "{") (its-defrule "}" "}") + (its-defrule ":" ":") (its-defrule ";" ";") + (its-defrule "\"" "\"") (its-defrule "'" "'") + (its-defrule "<" "<") (its-defrule ">" ">") + (its-defrule "?" "?") (its-defrule "/" "/")))) (provide 'its/hangul) diff --git a/its/hankata.el b/its/hankata.el index fc51124..e701c1a 100644 --- a/its/hankata.el +++ b/its/hankata.el @@ -35,16 +35,16 @@ (require 'its) (require 'cl)) -(defvar its-kata-enable-double-n nil "*Enable \"nn\" input for \"$B%s(B\" ") -(defvar its-kata-enable-zenkaku-alphabet t "*Enable Zenkaku alphabet") -(defvar its-kata-period "(I!(B" "*$B%T%j%*%I(B") ; ". " "$B!%(B" -(defvar its-kata-comma "(I$(B" "*$B%3%s%^(B") ; ", " "$B!$(B" -(defvar its-kata-open-bracket "(I"(B" "*[") ; "$B!N(B" -(defvar its-kata-close-bracket "(I#(B" "*]") ; "$B!O(B" -(defvar its-kata-horizontal "(I0(B" "*-") ; "$B!](B" +(defvar its-han-kata-enable-double-n nil "*Enable \"nn\" input for \"$B%s(B\" ") +(defvar its-han-kata-enable-zenkaku-alphabet t "*Enable Zenkaku alphabet") +(defvar its-han-kata-period "(I!(B" "*$B%T%j%*%I(B") ; ". " "$B!%(B" +(defvar its-han-kata-comma "(I$(B" "*$B%3%s%^(B") ; ", " "$B!$(B" +(defvar its-han-kata-open-bracket "(I"(B" "*[") ; "$B!N(B" +(defvar its-han-kata-close-bracket "(I#(B" "*]") ; "$B!O(B" +(defvar its-han-kata-horizontal "(I0(B" "*-") ; "$B!](B" (define-its-state-machine its-han-kata-map - "roma-han-kata" "(I11(B" "Japanese" nil + "roma-han-kata" "(I11(B" "Japanese" "Map for Romaji-Hankaku-Katakana translation. (Japanese)" (defconst its-hankaku-escape "~") ;; Escape character to Hankaku inputs @@ -276,15 +276,15 @@ (its-defrule (concat its-hankaku-escape upcase) upcase))) (define-its-state-machine-append its-han-kata-map - (if its-kata-enable-double-n + (if its-han-kata-enable-double-n (its-defrule "nn" "(I](B") (its-defrule "nn" "(I](B" -1)) - (its-defrule "-" its-kata-horizontal) - (its-defrule "[" its-kata-open-bracket) - (its-defrule "]" its-kata-close-bracket) - (its-defrule "." its-kata-period) - (its-defrule "," its-kata-comma) + (its-defrule "-" its-han-kata-horizontal) + (its-defrule "[" its-han-kata-open-bracket) + (its-defrule "]" its-han-kata-close-bracket) + (its-defrule "." its-han-kata-period) + (its-defrule "," its-han-kata-comma) ) (provide 'its/hankata) diff --git a/its/hira.el b/its/hira.el index 051dcc6..f899001 100644 --- a/its/hira.el +++ b/its/hira.el @@ -36,8 +36,13 @@ (require 'its) (require 'cl)) +(defvar its-hira-enable-zenkaku-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Zenkaku alphabet") + (defvar its-hira-enable-double-n nil "*Enable \"nn\" input for \"$B$s(B\" ") -(defvar its-hira-enable-zenkaku-alphabet t "*Enable Zenkaku alphabet") (defvar its-hira-period "$B!#(B" "*$B%T%j%*%I(B") ; ". " "$B!%(B" (defvar its-hira-comma "$B!"(B" "*$B%3%s%^(B") ; ", " "$B!$(B" (defvar its-hira-open-bracket "$B!V(B" "*[") ; "$B!N(B" @@ -45,7 +50,7 @@ (defvar its-hira-horizontal "$B!<(B" "*-") ; "$B!](B" (define-its-state-machine its-hira-map - "roma-kana" "$B$"(B" "Japanese" nil + "roma-kana" "$B$"(B" 'Japanese "Map for Romaji-Hiragana translation. (Japanese)" (defconst its-zenkaku-escape "Z") ;; Escape character to Zenkaku inputs diff --git a/its/jeonkak.el b/its/jeonkak.el index 2baedfe..e81fb7c 100644 --- a/its/jeonkak.el +++ b/its/jeonkak.el @@ -35,7 +35,7 @@ (require 'its)) (define-its-state-machine its-jeonkak-up-map - "jeonkak-upcase" "$(C#A(B" "Korean" nil + "jeonkak-upcase" "$(C#A(B" 'Korean "Map for jeonkak-upcase input." (dolist (ascii '(("1" . "$(C#1(B") ("2" . "$(C#2(B") ("3" . "$(C#3(B") ("4" . "$(C#4(B") @@ -68,7 +68,7 @@ (its-defrule in out)))) (define-its-state-machine its-jeonkak-down-map - "jeonkak-downcase" "$(C#a(B" "Korean" nil + "jeonkak-downcase" "$(C#a(B" 'Korean "Map for jeonkak-downcase input." (dolist (ascii '(("1" . "$(C#1(B") ("2" . "$(C#2(B") ("3" . "$(C#3(B") ("4" . "$(C#4(B") diff --git a/its/kata.el b/its/kata.el index b138b66..9c11905 100644 --- a/its/kata.el +++ b/its/kata.el @@ -36,8 +36,13 @@ (require 'its) (require 'cl)) +(defvar its-kata-enable-zenkaku-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Zenkaku alphabet") + (defvar its-kata-enable-double-n nil "*Enable \"nn\" input for \"$B%s(B\" ") -(defvar its-kata-enable-zenkaku-alphabet t "*Enable Zenkaku alphabet") (defvar its-kata-period "$B!#(B" "*$B%T%j%*%I(B") ; ". " "$B!%(B" (defvar its-kata-comma "$B!"(B" "*$B%3%s%^(B") ; ", " "$B!$(B" (defvar its-kata-open-bracket "$B!V(B" "*[") ; "$B!N(B" @@ -45,7 +50,7 @@ (defvar its-kata-horizontal "$B!<(B" "*-") ; "$B!](B" (define-its-state-machine its-kata-map - "roma-kata" "$B%"(B" "Japanese" nil + "roma-kata" "$B%"(B" 'Japanese "Map for Romaji-Katakana translation. (Japanese)" (defconst its-zenkaku-escape "Z") ;; Escape character to Zenkaku inputs diff --git a/its/pinyin.el b/its/pinyin.el index 6a32775..887f7ca 100644 --- a/its/pinyin.el +++ b/its/pinyin.el @@ -32,7 +32,12 @@ (require 'its) (require 'cl)) -(defvar its-pinyin-cn-enable-quanjioao-alphabet t "*Enable Quanjiao alphabet") +(defvar its-pinyin-cn-enable-quanjioao-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Quanjiao alphabet") + (defvar its-pinyin-cn-open-braket "$A!8(B" "*[") ; "$A#[(B" (defvar its-pinyin-cn-close-braket "$A!9(B" "*]") ; "$A#](B" @@ -49,7 +54,7 @@ (defun its-prev-terminal-state (input) (let ((len (length input)) - (state (its-get-start-state its-current-map)) + (state (its-get-start-state (symbol-value its-current-map))) (i 0) (ret nil) kst ks) (while (and (< i len) (setq state (its-get-next-state state (aref input i)))) @@ -213,7 +218,7 @@ (its-defrule "n4" "(0?@(B")))) (define-its-state-machine its-pinyin-cn-map - "pinyin-cn" "$AF4(BG" "Chinese-GB" + "pinyin-cn" "$AF4(BG" 'Chinese-GB "Map for Pinyin input. (Chinese-GB)" (defconst its-quanjiao-escape "Z") @@ -287,7 +292,7 @@ (its-defrule "!" "$A#!(B")) (define-its-state-machine its-pinyin-tw-map - "pinyin-tw" "$(GQ;(BC" "Chinese-CNS" + "pinyin-tw" "$(GQ;(BC" 'Chinese-CNS "Map for Pinyin input." (defconst its-quanjiao-escape "Z") @@ -328,11 +333,11 @@ (" " . "$(G!!(B") ("!" . "$(G!*(B") ("@" . "$(G"i(B") ("#" . "$(G!l(B") ("$" . "$(G"c(B") ("%" . "$(G"h(B") ("^" . "$(G!T(B") ("&" . "$(G!m(B") ("*" . "$(G!n(B") ("(" . "$(G!>(B") (")" . "$(G!?(B") - ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"b(B") + ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"`(B") ("|" . "$(G"^(B") ("_" . "$(G"%(B") ("+" . "$(G"0(B") ("~" . "$(G"D(B") - ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$A#{(B") ("}" . "$(G!a(B") + ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$(G!B(B") ("}" . "$(G!C(B") (":" . "$(G!((B") (";" . "$(G!'(B") ("\"" . "$(G!i(B") ("'" . "$(G!k(B") - ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"a(B") + ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"_(B") ("," . "$(G!"(B") ("." . "$(G!%(B") ("a" . "$(G$[(B") ("b" . "$(G$\(B") ("c" . "$(G$](B") ("d" . "$(G$^(B") ("e" . "$(G$_(B") ("f" . "$(G$`(B") ("g" . "$(G$a(B") ("h" . "$(G$b(B") @@ -380,7 +385,7 @@ (its-defrule "=" "$A#=(B") (its-defrule "`" "$A#`(B") (its-defrule "\\" "$A#\(B") (its-defrule "|" "$A#|(B") (its-defrule "_" "$A#_(B") (its-defrule "+" "$A#+(B") - (its-defrule "{" "$A#{(B") (its-defrule "}" "$A#}(B") + (its-defrule "{" "$(G!B(B") (its-defrule "}" "$(G!C(B") (its-defrule "\"" "$A#"(B") (its-defrule "'" "$A#'(B") (its-defrule "<" "$A#<(B") (its-defrule ">" "$A#>(B")) (progn diff --git a/its/quanjiao.el b/its/quanjiao.el index d33205d..d23b881 100644 --- a/its/quanjiao.el +++ b/its/quanjiao.el @@ -35,7 +35,7 @@ (require 'its)) (define-its-state-machine its-quanjiao-up-cn-map - "quanjiao-upcase-cn" "$A#A(B" "Chinese-GB" nil + "quanjiao-upcase-cn" "$A#A(B" 'Chinese-GB "Map for quanjiao-upcase input. (Chinese-GB)" (dolist (ascii '(("0" . "$A#0(B") ("1" . "$A#1(B") ("2" . "$A#2(B") ("3" . "$A#3(B") @@ -68,7 +68,7 @@ (its-defrule in out)))) (define-its-state-machine its-quanjiao-down-cn-map - "quanjiao-downcase-cn" "$A#a(B" "Chinese-GB" nil + "quanjiao-downcase-cn" "$A#a(B" 'Chinese-GB "Map for quanjiao-downcase input. (Chinese-GB)" (dolist (ascii '(("0" . "$A#0(B") ("1" . "$A#1(B") ("2" . "$A#2(B") ("3" . "$A#3(B") @@ -101,7 +101,7 @@ (its-defrule in out)))) (define-its-state-machine its-quanjiao-up-tw-map - "quanjiao-upcase-tw" "$(G$A(B" "Chinese-CNS" nil + "quanjiao-upcase-tw" "$(G$A(B" 'Chinese-CNS "Map for quanjiao-upcase input. (Chinese-CNS)" (dolist (ascii '(("0" . "$(G$!(B") ("1" . "$(G$"(B") ("2" . "$(G$#(B") ("3" . "$(G$$(B") @@ -134,7 +134,7 @@ (its-defrule in out)))) (define-its-state-machine its-quanjiao-down-tw-map - "quanjiao-downcase-tw" "$(G$[(B" "Chinese-CNS" nil + "quanjiao-downcase-tw" "$(G$[(B" 'Chinese-CNS "Map for quanjiao-downcase input. (Chinese-CNS)" (dolist (ascii '(("0" . "$(G$!(B") ("1" . "$(G$"(B") ("2" . "$(G$#(B") ("3" . "$(G$$(B") @@ -143,11 +143,11 @@ (" " . "$(G!!(B") ("!" . "$(G!*(B") ("@" . "$(G"i(B") ("#" . "$(G!l(B") ("$" . "$(G"c(B") ("%" . "$(G"h(B") ("^" . "$(G!T(B") ("&" . "$(G!m(B") ("*" . "$(G!n(B") ("(" . "$(G!>(B") (")" . "$(G!?(B") - ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"b(B") + ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"`(B") ("|" . "$(G"^(B") ("_" . "$(G"%(B") ("+" . "$(G"0(B") ("~" . "$(G"D(B") - ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$A#{(B") ("}" . "$(G!a(B") + ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$(G!B(B") ("}" . "$(G!C(B") (":" . "$(G!((B") (";" . "$(G!'(B") ("\"" . "$(G!i(B") ("'" . "$(G!k(B") - ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"a(B") + ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"_(B") ("," . "$(G!"(B") ("." . "$(G!%(B") ("a" . "$(G$[(B") ("b" . "$(G$\(B") ("c" . "$(G$](B") ("d" . "$(G$^(B") ("e" . "$(G$_(B") ("f" . "$(G$`(B") ("g" . "$(G$a(B") ("h" . "$(G$b(B") diff --git a/its/thai.el b/its/thai.el new file mode 100644 index 0000000..3b41d18 --- /dev/null +++ b/its/thai.el @@ -0,0 +1,150 @@ +;;; its/thai.el --- Inputting Thai characters in Egg Input Method Architecture + +;; Copyright (C) 1998 Mule Project, +;; Powered by Electrotechnical Laboratory, JAPAN. +;; Project Leader: Satoru Tomura + +;; Author: KATAYAMA Yoshio + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: + + +;;; Code: + +(eval-when-compile + (require 'its) + (require 'cl) + + (defmacro define-its-thai-keymap (&rest rule) + (let (input output type list) + (while rule + (setq input (car (car rule)) + output (nth 1 (car rule)) + type (nth 2 (car rule)) + rule (cdr rule) + list (cons `(its-defrule ,input ,output) list)) + (if type + (setq list (cons `(setq ,type (cons (cons ,input ,output) ,type)) + list)))) + `(let (consonant vowel tone) + ,@list + (its-define-thai-composit consonant vowel tone)))) + + (defun its-define-thai-composit (consonant vowel tone) + (let (pair state) + (while consonant + (setq pair (car consonant) + consonant (cdr consonant)) + (setq state (its-goto-state (car pair))) + (its-make-next-state state -1 (aref (cdr pair) 0) (cdr pair)) + (its-define-thai-add-vowel state (car pair) (cdr pair) vowel tone) + (its-define-thai-add-tone state (car pair) (cdr pair) tone) + (its-defrule-otherwise state (cdr pair))))) + + (defun its-define-thai-add-vowel (state keyseq output vowel tone) + (let (next-state next-key next-keyseq next-output composed-output) + (while vowel + (setq next-key (car (car vowel)) + next-keyseq (concat keyseq next-key) + next-output (concat output (cdr (car vowel))) + composed-output (compose-string next-output) + vowel (cdr vowel)) + (setq next-state (its-make-next-state state + (aref next-key 0) + next-keyseq + composed-output)) + (its-make-next-state next-state -1 next-keyseq composed-output) + (its-define-thai-add-tone next-state next-keyseq next-output tone) + (its-defrule-otherwise next-state composed-output)))) + + (defun its-define-thai-add-tone (state keyseq output tone) + (let (next-state next-key next-keyseq next-output composed-output) + (while tone + (setq next-key (car (car tone)) + next-keyseq (concat keyseq next-key) + next-output (concat output (cdr (car tone))) + composed-output (compose-string next-output) + tone (cdr tone)) + (setq next-state (its-make-next-state state + (aref next-key 0) + next-keyseq + composed-output)))))) + +;; Thai Kesmanee keyboard support. + +(define-its-state-machine its-thai-kesmanee-map + "kesmanee" ",T!!(B" 'Thai + "Map for Thai Kesmanee input method with TIS620 keyboard. (Thai)" + + (define-its-thai-keymap + ("1" ",TE(B" consonant) ("!" "#") + ("2" "/") ("@" ",Tq(B") + ("3" "_") ("#" ",Tr(B") + ("4" ",T@(B" consonant) ("$" ",Ts(B") + ("5" ",T6(B" consonant) ("%" ",Tt(B") + ("6" ",TX(B" vowel) ("^" ",TY(B" vowel) + ("7" ",TV(B" vowel) ("&" "0,TQi1(B" vowel) + ("8" ",T$(B" consonant) ("*" ",Tu(B") + ("9" ",T5(B" consonant) ("(" ",Tv(B") + ("0" ",T((B" consonant) (")" ",Tw(B") + ("-" ",T"(B" consonant) ("_" ",Tx(B") + ("=" ",T*(B" consonant) ("+" ",Ty(B") + ("\\" ",T_(B") ("|" ",To(B") + ("`" ",T#(B" consonant) ("~" ",T%(B" consonant) + + ("q" ",Tf(B") ("Q" ",Tp(B") + ("w" ",Td(B") ("W" "\"") + ("e" ",TS(B") ("E" ",T.(B" consonant) + ("r" ",T>(B" consonant) ("R" ",T1(B" consonant) + ("T" ",T8(B" consonant) ("t" ",TP(B") + ("y" ",TQ(B" vowel) ("Y" ",Tm(B" tone) + ("u" ",TU(B" vowel) ("U" ",Tj(B" tone) + ("i" ",TC(B" consonant) ("I" ",T3(B" consonant) + ("o" ",T9(B" consonant) ("O" ",TO(B") + ("p" ",TB(B" consonant) ("P" ",T-(B" consonant) + ("[" ",T:(B" consonant) ("{" ",T0(B" consonant) + ("]" ",TE(B" consonant) ("}" ",") + + ("a" ",T?(B" consonant) ("A" ",TD(B") + ("s" ",TK(B" consonant) ("S" ",T&(B" consonant) + ("d" ",T!(B" consonant) ("D" ",T/(B" consonant) + ("f" ",T4(B" consonant) ("F" ",Tb(B") + ("g" ",T`(B") ("G" ",T,(B" consonant) + ("h" ",Ti(B" tone) ("H" ",Tg(B" vowel) + ("j" ",Th(B" tone) ("J" ",Tk(B" tone) + ("k" ",TR(B") ("K" ",TI(B" consonant) + ("l" ",TJ(B" consonant) ("L" ",TH(B" consonant) + (";" ",TG(B" consonant) (":" ",T+(B" consonant) + ("'" ",T'(B" consonant) ("\"" ",TF(B") + + ("z" ",T<(B" consonant) ("Z" "(") + ("x" ",T;(B" consonant) ("X" ")") + ("c" ",Ta(B") ("C" ",T)(B" consonant) + ("v" ",TM(B" consonant) ("V" ",TN(B" consonant) + ("b" ",TT(B" vowel) ("B" ",TZ(B" vowel) + ("n" ",TW(B" vowel) ("N" ",Tl(B" tone) + ("m" ",T7(B" consonant) ("M" ",Tn(B" vowel) + ("," ",TA(B" consonant) ("<" ",T2(B" consonant) + ("." ",Tc(B") (">" ",TL(B" consonant) + ("/" ",T=(B" consonant) ("?" "?"))) + +(provide 'its/thai) + +;;; its/thai.el ends here diff --git a/its/zenkaku.el b/its/zenkaku.el index d56c1bb..bfde649 100644 --- a/its/zenkaku.el +++ b/its/zenkaku.el @@ -35,7 +35,7 @@ (require 'its)) (define-its-state-machine its-zenkaku-up-map - "zenkaku-upcase" "$B#A(B" "Japanese" nil + "zenkaku-upcase" "$B#A(B" 'Japanese "Map for zenkaku-upcase input." (dolist (ascii '(("0" . "$B#0(B") ("1" . "$B#1(B") ("2" . "$B#2(B") ("3" . "$B#3(B") @@ -68,7 +68,7 @@ (its-defrule in out)))) (define-its-state-machine its-zenkaku-down-map - "zenkaku-downcase" "$B#a(B" "Japanese" nil + "zenkaku-downcase" "$B#a(B" 'Japanese "Map for zenkaku-downcase input." (dolist (ascii '(("0" . "$B#0(B") ("1" . "$B#1(B") ("2" . "$B#2(B") ("3" . "$B#3(B") diff --git a/its/zhuyin.el b/its/zhuyin.el index 442834b..ff7213f 100644 --- a/its/zhuyin.el +++ b/its/zhuyin.el @@ -32,11 +32,21 @@ (require 'its) (require 'cl)) -(defvar its-zhuyin-cn-enable-quanjioao-alphabet t "*Enable Quanjiao alphabet") +(defvar its-zhuyin-cn-enable-quanjioao-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Quanjiao alphabet") + (defvar its-zhuyin-cn-open-braket "$A!8(B" "*[") ; "$A#[(B" (defvar its-zhuyin-cn-close-braket "$A!9(B" "*]") ; "$A#](B" -(defvar its-zhuyin-tw-enable-quanjioao-alphabet t "*Enable Quanjiao alphabet") +(defvar its-zhuyin-tw-enable-quanjioao-alphabet + (if (boundp 'its-enable-fullwidth-alphabet) + its-enable-fullwidth-alphabet + t) + "*Enable Quanjiao alphabet") + (defvar its-zhuyin-tw-open-braket "$(G!V(B" "*[") ; "$(G!b(B " (defvar its-zhuyin-tw-close-braket "$(G!W(B" "*]") ; "$(G!c(B" @@ -140,7 +150,7 @@ (its-defrule (concat (car N) 4) (concat (nth 1 N) "(0D(B"))))) (define-its-state-machine its-zhuyin-cn-map - "zhuyin-cn" "$AW"(BG" "Chinese-GB" + "zhuyin-cn" "$AW"(BG" 'Chinese-GB "Map for Zhuyin input. (Chinese-GB)" (defconst its-quanjiao-escape "Z") @@ -185,7 +195,7 @@ (its-defrule "?" "$A!"(B")) (define-its-state-machine its-zhuyin-tw-map - "zhuyin-tw" "$(GNC(BC" "Chinese-CNS" + "zhuyin-tw" "$(GNC(BC" 'Chinese-CNS "Map for Zhuyin input." (defconst its-quanjiao-escape "Z") @@ -201,11 +211,11 @@ (" " . "$(G!!(B") ("!" . "$(G!*(B") ("@" . "$(G"i(B") ("#" . "$(G!l(B") ("$" . "$(G"c(B") ("%" . "$(G"h(B") ("^" . "$(G!T(B") ("&" . "$(G!m(B") ("*" . "$(G!n(B") ("(" . "$(G!>(B") (")" . "$(G!?(B") - ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"b(B") + ("-" . "$(G"1(B") ("=" . "$(G"8(B") ("`" . "$(G!j(B") ("\\" . "$(G"`(B") ("|" . "$(G"^(B") ("_" . "$(G"%(B") ("+" . "$(G"0(B") ("~" . "$(G"D(B") - ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$A#{(B") ("}" . "$(G!a(B") + ("[" . "$(G!b(B") ("]" . "$(G!c(B") ("{" . "$(G!B(B") ("}" . "$(G!C(B") (":" . "$(G!((B") (";" . "$(G!'(B") ("\"" . "$(G!i(B") ("'" . "$(G!k(B") - ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"a(B") + ("<" . "$(G"6(B") (">" . "$(G"7(B") ("?" . "$(G!)(B") ("/" . "$(G"_(B") ("," . "$(G!"(B") ("." . "$(G!%(B") ("a" . "$(G$[(B") ("b" . "$(G$\(B") ("c" . "$(G$](B") ("d" . "$(G$^(B") ("e" . "$(G$_(B") ("f" . "$(G$`(B") ("g" . "$(G$a(B") ("h" . "$(G$b(B") @@ -241,9 +251,9 @@ (its-defrule "(" "$A#((B") (its-defrule ")" "$A#)(B") (its-defrule "~" "$A!+(B") (its-defrule "=" "$A#=(B") (its-defrule "`" "$A#`(B") - (its-defrule "\\" "$A#\(B") (its-defrule "|" "$A#|(B") + (its-defrule "\\" "$(G"`(B") (its-defrule "|" "$A#|(B") (its-defrule "_" "$A#_(B") (its-defrule "+" "$A#+(B") - (its-defrule "{" "$A#{(B") (its-defrule "}" "$A#}(B") + (its-defrule "{" "$(G!B(B") (its-defrule "}" "$(G!C(B") (its-defrule "\"" "$A#"(B") (its-defrule "'" "$A#'(B")) (progn (its-defrule "#" "#") (its-defrule "$" "$") diff --git a/menudiag.el b/menudiag.el index a8a57de..b758b45 100644 --- a/menudiag.el +++ b/menudiag.el @@ -59,15 +59,15 @@ (define-key map (char-to-string ch) 'undefined) (setq ch (1+ ch))) (setq ch ?0) - (while (< ch ?9) + (while (<= ch ?9) (define-key map (char-to-string ch) 'menudiag-goto-item) (setq ch (1+ ch))) (setq ch ?a) - (while (< ch ?z) + (while (<= ch ?z) (define-key map (char-to-string ch) 'menudiag-goto-item) (setq ch (1+ ch))) (setq ch ?A) - (while (< ch ?Z) + (while (<= ch ?Z) (define-key map (char-to-string ch) 'menudiag-goto-item) (setq ch (1+ ch))) (define-key map "\C-a" 'menudiag-beginning-of-line) @@ -110,16 +110,20 @@ (defun menudiag-make-selection-list (item-list line-width) (let ((l nil) (line nil) - (width 0)) + (width 0) + (i 0)) (while item-list (let* ((item (car item-list)) (item-width (menudiag-item-width item))) - (if (and line (>= (+ width item-width) line-width)) + (if (and line (or (>= (+ width item-width) line-width) + (>= i 36))) (setq l (cons (reverse line) l) line nil - width 0)) + width 0 + i 0)) (setq line (cons item line) width (+ width (menudiag-item-width item)) + i (1+ i) item-list (cdr item-list)))) (if line (reverse (cons (reverse line) l)) @@ -248,31 +252,63 @@ (interactive) (menudiag-goto-item-internal (1- (length line)))) +;; Should retain compatibility. Must. +;; +;;(defun menudiag-forward-item () +;; (interactive) +;; (if (< pos-in-line (1- (length line))) +;; (menudiag-goto-item-internal (1+ pos-in-line)) +;; (if (>= linepos (1- (length selection-list))) +;; (signal 'end-of-buffer "") +;; (menudiag-goto-line (1+ linepos)) +;; (menudiag-beginning-of-line)))) +;; +;;(defun menudiag-backward-item () +;; (interactive) +;; (if (< 0 pos-in-line) +;; (menudiag-goto-item-internal (1- pos-in-line)) +;; (if (< linepos 1) +;; (signal 'beginning-of-buffer "") +;; (menudiag-goto-line (1- linepos)) +;; (menudiag-end-of-line)))) +;; +;;(defun menudiag-goto-line (n) +;; (if (or (>= n (length selection-list)) (< n 0)) +;; (ding) +;; (setq line (nth n selection-list) +;; linepos n) +;; (delete-region (point-min) (point-max)) +;; (insert (menudiag-make-menu-formatted-string line)))) +;; + (defun menudiag-forward-item () (interactive) (if (< pos-in-line (1- (length line))) (menudiag-goto-item-internal (1+ pos-in-line)) (if (>= linepos (1- (length selection-list))) - (signal 'end-of-buffer "") - (menudiag-goto-line (1+ linepos)) - (menudiag-beginning-of-line)))) + (menudiag-goto-line 0) + (menudiag-goto-line (1+ linepos))) + (menudiag-beginning-of-line))) (defun menudiag-backward-item () (interactive) (if (< 0 pos-in-line) (menudiag-goto-item-internal (1- pos-in-line)) (if (< linepos 1) - (signal 'beginning-of-buffer "") - (menudiag-goto-line (1- linepos)) - (menudiag-end-of-line)))) + (menudiag-goto-line (1- (length selection-list))) + (menudiag-goto-line (1- linepos))) + (menudiag-end-of-line))) (defun menudiag-goto-line (n) - (if (or (>= n (length selection-list)) (< n 0)) - (ding) - (setq line (nth n selection-list) - linepos n) - (delete-region (point-min) (point-max)) - (insert (menudiag-make-menu-formatted-string line)))) + (cond + ((>= n (length selection-list)) + (setq n 0)) + ((< n 0) + (setq n (1- (length selection-list))))) + (setq line (nth n selection-list) + linepos n) + (delete-region (point-min) (point-max)) + (insert (menudiag-make-menu-formatted-string line))) (defun menudiag-next-line () (interactive)