漢字をフルスペルに変換

153428 ワード

各漢字には4桁の10進数符号があり、漢字区位符号と呼ばれ、その最初の2桁を区符号、後の2桁をビット符号と呼ぶ.
各漢字にはバイナリコードがあり、漢字国標コードと呼ばれています.
イントラコード:ASCIIコードと国標コードの同時使用時に二義性の問題が発生することを避けるために、大部分の漢字システムはすべて国標コードの1バイトの高い位置1を漢字のイントラコードとして採用します.
 
わが国の漢字コード標準GB 2312-80のうち6763の常用漢字がバイナリコードを規定している.漢字1文字につき2バイト使用.
GB 2312-80 GB 2312はコードテーブルを94個の区に分け、第1バイトに対応する.各領域94ビット、第2バイト対応
01-09は符号、数値
16-87区は漢字区
10-15区、88-94区はさらに標準化される空白区である.
GB 2312は収録されている漢字を2段階に分けています.
第1級は常用漢字計3755個で、16-55区に設置され、中国語のピンインアルファベット/周波数で配列されている.
第2級漢字は次常用漢字計3008個で、56-87区に置かれ、部首/筆画順に並べられている.そのため、GB 2312は最大6763の漢字を表すことができる.
 
3種類の符号化、ゾーンコード、国標コードと機内コードの間の変換
ゾーンコード(ゾーン値とビット値を16進数に変換した後)それぞれ+20 H--------->国標コード+8080 H->機内コード
例:あ区位コード16 01(十進)------>10 H 01 H(十六進)それぞれ+20 H----->国標コード3021 H+8080 H->機内コードB 0 A 1 H
 
ゾーンコードとイントラコードテーブルのダウンロードアドレス:
http://download.csdn.net/detail/ly0904010214/7133739
 
プログラムで使用する符号化はイントラコードとする
GB 2312は中国で定められた漢字コードであり、簡体字中国語の文字セットコードとも言える.
GBKはGB 2312の拡張であり、GB 2312と互換性があるほか、繁体字中国語、日本語の仮名も表示される.
 
漢字をフルスペルに変換するプログラムは以下の通りです.
public class CnToQuanpin 
{
    private static LinkedHashMap spellMap = null;
    private static LinkedHashMap spellMapTwo = null;
    static 
    {
    	if (spellMap == null) 
    	{
    		spellMap = new LinkedHashMap(400);
    	}
    	if (spellMapTwo == null) 
    	{
    		spellMapTwo = new LinkedHashMap(3008);
    	}
    	initialize();
    }
    private CnToQuanpin() 
    {
    }
    @SuppressWarnings("unchecked")
	private static void spellPut(String spell, int ascii) 
    {
    	spellMap.put(spell, new Integer(ascii));
    }
    
    @SuppressWarnings("unchecked")
	private static void spellAdd(String cn, String pinyin)
    {
    	spellMapTwo.put(cn, pinyin);
    }
    
    private static void initialize() 
    {
	    spellPut("a", -20319);
	    spellPut("ai", -20317);
	    spellPut("an", -20304);
	    spellPut("ang", -20295);
	    spellPut("ao", -20292);
	    spellPut("ba", -20283);
	    spellPut("bai", -20265);
	    spellPut("ban", -20257);
	    spellPut("bang", -20242);
	    spellPut("bao", -20230);
	    spellPut("bei", -20051);
	    spellPut("ben", -20036);
	    spellPut("beng", -20032);
	    spellPut("bi", -20026);
	    spellPut("bian", -20002);
	    spellPut("biao", -19990);
	    spellPut("bie", -19986);
	    spellPut("bin", -19982);
	    spellPut("bing", -19976);
	    spellPut("bo", -19805);
	    spellPut("bu", -19784);
	    spellPut("ca", -19775);
	    spellPut("cai", -19774);
	    spellPut("can", -19763);
	    spellPut("cang", -19756);
	    spellPut("cao", -19751);
	    spellPut("ce", -19746);
	    spellPut("ceng", -19741);
	    spellPut("cha", -19739);
	    spellPut("chai", -19728);
	    spellPut("chan", -19725);
	    spellPut("chang", -19715);
	    spellPut("chao", -19540);
	    spellPut("che", -19531);
	    spellPut("chen", -19525);
	    spellPut("cheng", -19515);
	    spellPut("chi", -19500);
	    spellPut("chong", -19484);
	    spellPut("chou", -19479);
	    spellPut("chu", -19467);
	    spellPut("chuai", -19289);
	    spellPut("chuan", -19288);
	    spellPut("chuang", -19281);
	    spellPut("chui", -19275);
	    spellPut("chun", -19270);
	    spellPut("chuo", -19263);
	    spellPut("ci", -19261);
	    spellPut("cong", -19249);
	    spellPut("cou", -19243);
	    spellPut("cu", -19242);
	    spellPut("cuan", -19238);
	    spellPut("cui", -19235);
	    spellPut("cun", -19227);
	    spellPut("cuo", -19224);
	    spellPut("da", -19218);
	    spellPut("dai", -19212);
	    spellPut("dan", -19038);
	    spellPut("dang", -19023);
	    spellPut("dao", -19018);
	    spellPut("de", -19006);
	    spellPut("deng", -19003);
	    spellPut("di", -18996);
	    spellPut("dian", -18977);
	    spellPut("diao", -18961);
	    spellPut("die", -18952);
	    spellPut("ding", -18783);
	    spellPut("diu", -18774);
	    spellPut("dong", -18773);
	    spellPut("dou", -18763);
	    spellPut("du", -18756);
	    spellPut("duan", -18741);
	    spellPut("dui", -18735);
	    spellPut("dun", -18731);
	    spellPut("duo", -18722);
	    spellPut("e", -18710);
	    spellPut("en", -18697);
	    spellPut("er", -18696);
	    spellPut("fa", -18526);
	    spellPut("fan", -18518);
	    spellPut("fang", -18501);
	    spellPut("fei", -18490);
	    spellPut("fen", -18478);
	    spellPut("feng", -18463);
	    spellPut("fo", -18448);
	    spellPut("fou", -18447);
	    spellPut("fu", -18446);
	    spellPut("ga", -18239);
	    spellPut("gai", -18237);
	    spellPut("gan", -18231);
	    spellPut("gang", -18220);
	    spellPut("gao", -18211);
	    spellPut("ge", -18201);
	    spellPut("gei", -18184);
	    spellPut("gen", -18183);
	    spellPut("geng", -18181);
	    spellPut("gong", -18012);
	    spellPut("gou", -17997);
	    spellPut("gu", -17988);
	    spellPut("gua", -17970);
	    spellPut("guai", -17964);
	    spellPut("guan", -17961);
	    spellPut("guang", -17950);
	    spellPut("gui", -17947);
	    spellPut("gun", -17931);
	    spellPut("guo", -17928);
	    spellPut("ha", -17922);
	    spellPut("hai", -17759);
	    spellPut("han", -17752);
	    spellPut("hang", -17733);
	    spellPut("hao", -17730);
	    spellPut("he", -17721);
	    spellPut("hei", -17703);
	    spellPut("hen", -17701);
	    spellPut("heng", -17697);
	    spellPut("hong", -17692);
	    spellPut("hou", -17683);
	    spellPut("hu", -17676);
	    spellPut("hua", -17496);
	    spellPut("huai", -17487);
	    spellPut("huan", -17482);
	    spellPut("huang", -17468);
	    spellPut("hui", -17454);
	    spellPut("hun", -17433);
	    spellPut("huo", -17427);
	    spellPut("ji", -17417);
	    spellPut("jia", -17202);
	    spellPut("jian", -17185);
	    spellPut("jiang", -16983);
	    spellPut("jiao", -16970);
	    spellPut("jie", -16942);
	    spellPut("jin", -16915);
	    spellPut("jing", -16733);
	    spellPut("jiong", -16708);
	    spellPut("jiu", -16706);
	    spellPut("ju", -16689);
	    spellPut("juan", -16664);
	    spellPut("jue", -16657);
	    spellPut("jun", -16647);
	    spellPut("ka", -16474);
	    spellPut("kai", -16470);
	    spellPut("kan", -16465);
	    spellPut("kang", -16459);
	    spellPut("kao", -16452);
	    spellPut("ke", -16448);
	    spellPut("ken", -16433);
	    spellPut("keng", -16429);
	    spellPut("kong", -16427);
	    spellPut("kou", -16423);
	    spellPut("ku", -16419);
	    spellPut("kua", -16412);
	    spellPut("kuai", -16407);
	    spellPut("kuan", -16403);
	    spellPut("kuang", -16401);
	    spellPut("kui", -16393);
	    spellPut("kun", -16220);
	    spellPut("kuo", -16216);
	    spellPut("la", -16212);
	    spellPut("lai", -16205);
	    spellPut("lan", -16202);
	    spellPut("lang", -16187);
	    spellPut("lao", -16180);
	    spellPut("le", -16171);
	    spellPut("lei", -16169);
	    spellPut("leng", -16158);
	    spellPut("li", -16155);
	    spellPut("lia", -15959);
	    spellPut("lian", -15958);
	    spellPut("liang", -15944);
	    spellPut("liao", -15933);
	    spellPut("lie", -15920);
	    spellPut("lin", -15915);
	    spellPut("ling", -15903);
	    spellPut("liu", -15889);
	    spellPut("long", -15878);
	    spellPut("lou", -15707);
	    spellPut("lu", -15701);
	    spellPut("lv", -15681);
	    spellPut("luan", -15667);
	    spellPut("lue", -15661);
	    spellPut("lun", -15659);
	    spellPut("luo", -15652);
	    spellPut("ma", -15640);
	    spellPut("mai", -15631);
	    spellPut("man", -15625);
	    spellPut("mang", -15454);
	    spellPut("mao", -15448);
	    spellPut("me", -15436);
	    spellPut("mei", -15435);
	    spellPut("men", -15419);
	    spellPut("meng", -15416);
	    spellPut("mi", -15408);
	    spellPut("mian", -15394);
	    spellPut("miao", -15385);
	    spellPut("mie", -15377);
	    spellPut("min", -15375);
	    spellPut("ming", -15369);
	    spellPut("miu", -15363);
	    spellPut("mo", -15362);
	    spellPut("mou", -15183);
	    spellPut("mu", -15180);
	    spellPut("na", -15165);
	    spellPut("nai", -15158);
	    spellPut("nan", -15153);
	    spellPut("nang", -15150);
	    spellPut("nao", -15149);
	    spellPut("ne", -15144);
	    spellPut("nei", -15143);
	    spellPut("nen", -15141);
	    spellPut("neng", -15140);
	    spellPut("ni", -15139);
	    spellPut("nian", -15128);
	    spellPut("niang", -15121);
	    spellPut("niao", -15119);
	    spellPut("nie", -15117);
	    spellPut("nin", -15110);
	    spellPut("ning", -15109);
	    spellPut("niu", -14941);
	    spellPut("nong", -14937);
	    spellPut("nu", -14933);
	    spellPut("nv", -14930);
	    spellPut("nuan", -14929);
	    spellPut("nue", -14928);
	    spellPut("nuo", -14926);
	    spellPut("o", -14922);
	    spellPut("ou", -14921);
	    spellPut("pa", -14914);
	    spellPut("pai", -14908);
	    spellPut("pan", -14902);
	    spellPut("pang", -14894);
	    spellPut("pao", -14889);
	    spellPut("pei", -14882);
	    spellPut("pen", -14873);
	    spellPut("peng", -14871);
	    spellPut("pi", -14857);
	    spellPut("pian", -14678);
	    spellPut("piao", -14674);
	    spellPut("pie", -14670);
	    spellPut("pin", -14668);
	    spellPut("ping", -14663);
	    spellPut("po", -14654);
	    spellPut("pu", -14645);
	    spellPut("qi", -14630);
	    spellPut("qia", -14594);
	    spellPut("qian", -14429);
	    spellPut("qiang", -14407);
	    spellPut("qiao", -14399);
	    spellPut("qie", -14384);
	    spellPut("qin", -14379);
	    spellPut("qing", -14368);
	    spellPut("qiong", -14355);
	    spellPut("qiu", -14353);
	    spellPut("qu", -14345);
	    spellPut("quan", -14170);
	    spellPut("que", -14159);
	    spellPut("qun", -14151);
	    spellPut("ran", -14149);
	    spellPut("rang", -14145);
	    spellPut("rao", -14140);
	    spellPut("re", -14137);
	    spellPut("ren", -14135);
	    spellPut("reng", -14125);
	    spellPut("ri", -14123);
	    spellPut("rong", -14122);
	    spellPut("rou", -14112);
	    spellPut("ru", -14109);
	    spellPut("ruan", -14099);
	    spellPut("rui", -14097);
	    spellPut("run", -14094);
	    spellPut("ruo", -14092);
	    spellPut("sa", -14090);
	    spellPut("sai", -14087);
	    spellPut("san", -14083);
	    spellPut("sang", -13917);
	    spellPut("sao", -13914);
	    spellPut("se", -13910);
	    spellPut("sen", -13907);
	    spellPut("seng", -13906);
	    spellPut("sha", -13905);
	    spellPut("shai", -13896);
	    spellPut("shan", -13894);
	    spellPut("shang", -13878);
	    spellPut("shao", -13870);
	    spellPut("she", -13859);
	    spellPut("shen", -13847);
	    spellPut("sheng", -13831);
	    spellPut("shi", -13658);
	    spellPut("shou", -13611);
	    spellPut("shu", -13601);
	    spellPut("shua", -13406);
	    spellPut("shuai", -13404);
	    spellPut("shuan", -13400);
	    spellPut("shuang", -13398);
	    spellPut("shui", -13395);
	    spellPut("shun", -13391);
	    spellPut("shuo", -13387);
	    spellPut("si", -13383);
	    spellPut("song", -13367);
	    spellPut("sou", -13359);
	    spellPut("su", -13356);
	    spellPut("suan", -13343);
	    spellPut("sui", -13340);
	    spellPut("sun", -13329);
	    spellPut("suo", -13326);
	    spellPut("ta", -13318);
	    spellPut("tai", -13147);
	    spellPut("tan", -13138);
	    spellPut("tang", -13120);
	    spellPut("tao", -13107);
	    spellPut("te", -13096);
	    spellPut("teng", -13095);
	    spellPut("ti", -13091);
	    spellPut("tian", -13076);
	    spellPut("tiao", -13068);
	    spellPut("tie", -13063);
	    spellPut("ting", -13060);
	    spellPut("tong", -12888);
	    spellPut("tou", -12875);
	    spellPut("tu", -12871);
	    spellPut("tuan", -12860);
	    spellPut("tui", -12858);
	    spellPut("tun", -12852);
	    spellPut("tuo", -12849);
	    spellPut("wa", -12838);
	    spellPut("wai", -12831);
	    spellPut("wan", -12829);
	    spellPut("wang", -12812);
	    spellPut("wei", -12802);
	    spellPut("wen", -12607);
	    spellPut("weng", -12597);
	    spellPut("wo", -12594);
	    spellPut("wu", -12585);
	    spellPut("xi", -12556);
	    spellPut("xia", -12359);
	    spellPut("xian", -12346);
	    spellPut("xiang", -12320);
	    spellPut("xiao", -12300);
	    spellPut("xie", -12120);
	    spellPut("xin", -12099);
	    spellPut("xing", -12089);
	    spellPut("xiong", -12074);
	    spellPut("xiu", -12067);
	    spellPut("xu", -12058);
	    spellPut("xuan", -12039);
	    spellPut("xue", -11867);
	    spellPut("xun", -11861);
	    spellPut("ya", -11847);
	    spellPut("yan", -11831);
	    spellPut("yang", -11798);
	    spellPut("yao", -11781);
	    spellPut("ye", -11604);
	    spellPut("yi", -11589);
	    spellPut("yin", -11536);
	    spellPut("ying", -11358);
	    spellPut("yo", -11340);
	    spellPut("yong", -11339);
	    spellPut("you", -11324);
	    spellPut("yu", -11303);
	    spellPut("yuan", -11097);
	    spellPut("yue", -11077);
	    spellPut("yun", -11067);
	    spellPut("za", -11055);
	    spellPut("zai", -11052);
	    spellPut("zan", -11045);
	    spellPut("zang", -11041);
	    spellPut("zao", -11038);
	    spellPut("ze", -11024);
	    spellPut("zei", -11020);
	    spellPut("zen", -11019);
	    spellPut("zeng", -11018);
	    spellPut("zha", -11014);
	    spellPut("zhai", -10838);
	    spellPut("zhan", -10832);
	    spellPut("zhang", -10815);
	    spellPut("zhao", -10800);
	    spellPut("zhe", -10790);
	    spellPut("zhen", -10780);
	    spellPut("zheng", -10764);
	    spellPut("zhi", -10587);
	    spellPut("zhong", -10544);
	    spellPut("zhou", -10533);
	    spellPut("zhu", -10519);
	    spellPut("zhua", -10331);
	    spellPut("zhuai", -10329);
	    spellPut("zhuan", -10328);
	    spellPut("zhuang", -10322);
	    spellPut("zhui", -10315);
	    spellPut("zhun", -10309);
	    spellPut("zhuo", -10307);
	    spellPut("zi", -10296);
	    spellPut("zong", -10281);
	    spellPut("zou", -10274);
	    spellPut("zu", -10270);
	    spellPut("zuan", -10262);
	    spellPut("zui", -10260);
	    spellPut("zun", -10256);
	    spellPut("zuo", -10254);

    
	    //            
	    spellAdd( " ", "chu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "gai");
	    spellAdd( " ", "nian");
	    spellAdd( " ", "sa");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "gen");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "e");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "pie");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "di");
	    spellAdd( " ", "xin");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "tao");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "nai");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "se");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "she");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "si");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "fang");
	    spellAdd( " ", "po");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "gua");
	    spellAdd( " ", "you");
	    spellAdd( " ", "ce");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "wen");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "ku");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "la");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "kuai");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "wang");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "le");
	    spellAdd( " ", "sa");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "ren");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "wa");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "cang");
	    spellAdd( " ", "kang");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "ning");
	    spellAdd( " ", "ka");
	    spellAdd( " ", "you");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "er");
	    spellAdd( " ", "you");
	    spellAdd( " ", "kua");
	    spellAdd( " ", "kan");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "chai");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "nong");
	    spellAdd( " ", "mou");
	    spellAdd( " ", "chou");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "li");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "ping");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "si");
	    spellAdd( " ", "feng");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "ruo");
	    spellAdd( " ", "pai");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "kong");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "fen");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "zong");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "nuo");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "tun");
	    spellAdd( " ", "she");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "zu");
	    spellAdd( " ", "yue");
	    spellAdd( " ", "cuan");
	    spellAdd( " ", "di");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "su");
	    spellAdd( " ", "si");
	    spellAdd( " ", "wen");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "gun");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "luan");
	    spellAdd( " ", "pou");
	    spellAdd( " ", "bing");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "liang");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "song");
	    spellAdd( " ", "ping");
	    spellAdd( " ", "zhong");
	    spellAdd( " ", "ming");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "ou");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "ne");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "he");
	    spellAdd( " ", "di");
	    spellAdd( " ", "zhao");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "gua");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "zheng");
	    spellAdd( " ", "hun");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "ei");
	    spellAdd( " ", "zou");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "xue");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "e");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "an");
	    spellAdd( " ", "di");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "pian");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "dang");
	    spellAdd( " ", "su");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "zen");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "zhan");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "ban");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "gai");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "zou");
	    spellAdd( " ", "chui");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "han");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "mang");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "fang");
	    spellAdd( " ", "bing");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "di");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "kuai");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "li");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "tan");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "po");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "zou");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "feng");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "mai");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "shao");
	    spellAdd( " ", "he");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "dang");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "si");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "ben");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "ben");
	    spellAdd( " ", "e");
	    spellAdd( " ", "fa");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "he");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "li");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ban");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "long");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "che");
	    spellAdd( " ", "di");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "die");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "shang");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "gai");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "an");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "nian");
	    spellAdd( " ", "peng");
	    spellAdd( " ", "tu");
	    spellAdd( " ", "sao");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "ku");
	    spellAdd( " ", "die");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "leng");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "man");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "liang");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "xin");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "cao");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "nai");
	    spellAdd( " ", "du");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "xiong");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "li");
	    spellAdd( " ", "e");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "rui");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "cong");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "kou");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "pie");
	    spellAdd( " ", "long");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "ran");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "niao");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "min");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "rao");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "ting");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "ren");
	    spellAdd( " ", "xing");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "ming");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "chong");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "gen");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "mai");
	    spellAdd( " ", "sun");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "kan");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "you");
	    spellAdd( " ", "e");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "you");
	    spellAdd( " ", "li");
	    spellAdd( " ", "tu");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "you");
	    spellAdd( " ", "di");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "chun");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "song");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "nai");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "tie");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "tu");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "cui");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "zu");
	    spellAdd( " ", "dang");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "han");
	    spellAdd( " ", "qia");
	    spellAdd( " ", "feng");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "e");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "pa");
	    spellAdd( " ", "ting");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "pai");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "en");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "weng");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "li");
	    spellAdd( " ", "bang");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "shuo");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "su");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "dou");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "cu");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "kou");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "rui");
	    spellAdd( " ", "zui");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "weng");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "li");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "heng");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "gong");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "da");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "zang");
	    spellAdd( " ", "pao");
	    spellAdd( " ", "you");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "men");
	    spellAdd( " ", "tuan");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "pin");
	    spellAdd( " ", "niu");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "za");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "lv");
	    spellAdd( " ", "jun");
	    spellAdd( " ", "tian");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "na");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "bai");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "pou");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "die");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "an");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "bing");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "en");
	    spellAdd( " ", "chuai");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "shuo");
	    spellAdd( " ", "zhan");
	    spellAdd( " ", "nuo");
	    spellAdd( " ", "sang");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "han");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "zun");
	    spellAdd( " ", "cuan");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "xing");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "zuan");
	    spellAdd( " ", "nang");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "te");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "kou");
	    spellAdd( " ", "dao");
	    spellAdd( " ", "le");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "a");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "li");
	    spellAdd( " ", "e");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "za");
	    spellAdd( " ", "ka");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "gua");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "ning");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "you");
	    spellAdd( " ", "si");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "da");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "ci");
	    spellAdd( " ", "guang");
	    spellAdd( " ", "yue");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "pai");
	    spellAdd( " ", "kuai");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "mie");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "nong");
	    spellAdd( " ", "gen");
	    spellAdd( " ", "mou");
	    spellAdd( " ", "mai");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "geng");
	    spellAdd( " ", "en");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "zao");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "feng");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "nuo");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "zhuan");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "tao");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "cui");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "yo");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "li");
	    spellAdd( " ", "shua");
	    spellAdd( " ", "chuo");
	    spellAdd( " ", "die");
	    spellAdd( " ", "da");
	    spellAdd( " ", "nan");
	    spellAdd( " ", "li");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "ku");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "su");
	    spellAdd( " ", "du");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "he");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "a");
	    spellAdd( " ", "en");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "dia");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "hei");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "cao");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "beng");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "di");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "peng");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "chuai");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "o");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "ceng");
	    spellAdd( " ", "deng");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "sai");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "nang");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "nan");
	    spellAdd( " ", "lun");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "you");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "dao");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "man");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "cen");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "min");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "zheng");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "song");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "kong");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "rong");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "wai");
	    spellAdd( " ", "zai");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "sheng");
	    spellAdd( " ", "song");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "deng");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "pang");
	    spellAdd( " ", "cu");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "zheng");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "san");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "an");
	    spellAdd( " ", "guang");
	    spellAdd( " ", "ma");
	    spellAdd( " ", "niu");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "pao");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "rong");
	    spellAdd( " ", "kuai");
	    spellAdd( " ", "shou");
	    spellAdd( " ", "sun");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "li");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "suan");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "she");
	    spellAdd( " ", "cu");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "chuan");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "sun");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "tun");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "ren");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "hun");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "san");
	    spellAdd( " ", "zhuan");
	    spellAdd( " ", "nang");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "pao");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "an");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "geng");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "dao");
	    spellAdd( " ", "cun");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "ou");
	    spellAdd( " ", "chong");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "chuang");
	    spellAdd( " ", "song");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "niu");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "peng");
	    spellAdd( " ", "da");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "chao");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "ce");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "song");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "xing");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "wang");
	    spellAdd( " ", "chou");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "cui");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "e");
	    spellAdd( " ", "leng");
	    spellAdd( " ", "zhui");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "su");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "chong");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "tian");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "shuan");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "min");
	    spellAdd( " ", "kang");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "lv");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "wen");
	    spellAdd( " ", "hun");
	    spellAdd( " ", "e");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "que");
	    spellAdd( " ", "he");
	    spellAdd( " ", "tian");
	    spellAdd( " ", "que");
	    spellAdd( " ", "kan");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "pan");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "san");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "si");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "feng");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "mian");
	    spellAdd( " ", "dun");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "wen");
	    spellAdd( " ", "hang");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "le");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "long");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "si");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "pan");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "hong");
	    spellAdd( " ", "min");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "tao");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "su");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "cen");
	    spellAdd( " ", "bang");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "song");
	    spellAdd( " ", "du");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "mian");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "cong");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "shuan");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "mian");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "pen");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "she");
	    spellAdd( " ", "mang");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "hun");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "pang");
	    spellAdd( " ", "ming");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "cao");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "si");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "shao");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "li");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "han");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "yue");
	    spellAdd( " ", "fen");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "dang");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "you");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "ning");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "zou");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "jiong");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "er");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "pang");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "qun");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "chuan");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "la");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "tuan");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "kao");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "e");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "nu");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "che");
	    spellAdd( " ", "shuo");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "niu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "si");
	    spellAdd( " ", "da");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "rao");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "luan");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "pin");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "li");
	    spellAdd( " ", "ping");
	    spellAdd( " ", "wa");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "di");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "e");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "nu");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "ting");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "pin");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "li");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "niao");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "shuang");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "nu");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "zang");
	    spellAdd( " ", "si");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "zou");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "nu");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "hua");
	    spellAdd( " ", "pian");
	    spellAdd( " ", "li");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "zhui");
	    spellAdd( " ", "can");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "cong");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "ku");
	    spellAdd( " ", "hang");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "geng");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "shang");
	    spellAdd( " ", "gun");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "shou");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "si");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "zhui");
	    spellAdd( " ", "min");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "li");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "man");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "sao");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "zeng");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "zuan");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "chuan");
	    spellAdd( " ", "zai");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "min");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "long");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "po");
	    spellAdd( " ", "min");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "er");
	    spellAdd( " ", "gong");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "heng");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "cong");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "cui");
	    spellAdd( " ", "cong");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "can");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "zan");
	    spellAdd( " ", "wen");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "tao");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "shao");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "ma");
	    spellAdd( " ", "li");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "rui");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "cong");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "fang");
	    spellAdd( " ", "pa");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "nai");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "long");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "ping");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "you");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "di");
	    spellAdd( " ", "li");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "kao");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "rao");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "guang");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ting");
	    spellAdd( " ", "gua");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "hua");
	    spellAdd( " ", "heng");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "luan");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "an");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "fen");
	    spellAdd( " ", "du");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "zhao");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "chui");
	    spellAdd( " ", "liang");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "di");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "cou");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "nan");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "pin");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "duan");
	    spellAdd( " ", "chui");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "lv");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "sun");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "cui");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "shuo");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "rong");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "yue");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "zun");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "you");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "cu");
	    spellAdd( " ", "shang");
	    spellAdd( " ", "tian");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "ren");
	    spellAdd( " ", "e");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "nian");
	    spellAdd( " ", "wang");
	    spellAdd( " ", "chuo");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "cou");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "kan");
	    spellAdd( " ", "deng");
	    spellAdd( " ", "gai");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "zang");
	    spellAdd( " ", "ou");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "beng");
	    spellAdd( " ", "zeng");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "po");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "la");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "tan");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "xin");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "he");
	    spellAdd( " ", "zan");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "sheng");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "chao");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "han");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "ming");
	    spellAdd( " ", "tun");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "nang");
	    spellAdd( " ", "ben");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "kuang");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "gai");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "di");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "pin");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "pian");
	    spellAdd( " ", "kao");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "bai");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "cui");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "san");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "pie");
	    spellAdd( " ", "dao");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "chuan");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "du");
	    spellAdd( " ", "die");
	    spellAdd( " ", "you");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "yue");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "rong");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "ruan");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "gong");
	    spellAdd( " ", "zhun");
	    spellAdd( " ", "na");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "long");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "ka");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "gua");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "guang");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "kuai");
	    spellAdd( " ", "sa");
	    spellAdd( " ", "hai");
	    spellAdd( " ", "pian");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "tun");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "pao");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "niao");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "zong");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "cou");
	    spellAdd( " ", "nan");
	    spellAdd( " ", "mian");
	    spellAdd( " ", "wa");
	    spellAdd( " ", "e");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "lv");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "teng");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "chuai");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "sao");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "xin");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "sa");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "zhan");
	    spellAdd( " ", "jing");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "dun");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "han");
	    spellAdd( " ", "men");
	    spellAdd( " ", "chao");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "duan");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "tui");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "man");
	    spellAdd( " ", "shang");
	    spellAdd( " ", "yun");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "cuan");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "tao");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "li");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "jiong");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "si");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "ci");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "rang");
	    spellAdd( " ", "te");
	    spellAdd( " ", "tan");
	    spellAdd( " ", "dui");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "nv");
	    spellAdd( " ", "nin");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "que");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "min");
	    spellAdd( " ", "te");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "dui");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "men");
	    spellAdd( " ", "gang");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "xue");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "dang");
	    spellAdd( " ", "hua");
	    spellAdd( " ", "che");
	    spellAdd( " ", "dun");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "feng");
	    spellAdd( " ", "fa");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "li");
	    spellAdd( " ", "long");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "tong");
	    spellAdd( " ", "di");
	    spellAdd( " ", "la");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "xing");
	    spellAdd( " ", "mang");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "zhai");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "dui");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "di");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "gun");
	    spellAdd( " ", "sang");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "dun");
	    spellAdd( " ", "deng");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "ca");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "kan");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "mian");
	    spellAdd( " ", "kou");
	    spellAdd( " ", "dun");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "sheng");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "mou");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "di");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "sui");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "rui");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "ming");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "kan");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "tian");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "she");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "tuan");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "gang");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "li");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "zeng");
	    spellAdd( " ", "he");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "ga");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "po");
	    spellAdd( " ", "zhao");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "tu");
	    spellAdd( " ", "chuan");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "men");
	    spellAdd( " ", "chai");
	    spellAdd( " ", "nv");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "ban");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "fang");
	    spellAdd( " ", "kang");
	    spellAdd( " ", "dou");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "zheng");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "po");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "yue");
	    spellAdd( " ", "mu");
	    spellAdd( " ", "tan");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "shuo");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "kao");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "er");
	    spellAdd( " ", "you");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "ye");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "diao");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "diu");
	    spellAdd( " ", "hua");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "ha");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "diao");
	    spellAdd( " ", "zheng");
	    spellAdd( " ", "se");
	    spellAdd( " ", "chong");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "an");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "te");
	    spellAdd( " ", "keng");
	    spellAdd( " ", "zeng");
	    spellAdd( " ", "li");
	    spellAdd( " ", "gao");
	    spellAdd( " ", "e");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "lve");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "a");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "nuo");
	    spellAdd( " ", "ben");
	    spellAdd( " ", "de");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "tan");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "kai");
	    spellAdd( " ", "si");
	    spellAdd( " ", "e");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "juan");
	    spellAdd( " ", "na");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "man");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "chuo");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "di");
	    spellAdd( " ", "tan");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "dui");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "cuan");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "deng");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "zhuo");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "zhong");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "shu");
	    spellAdd( " ", "lv");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "ren");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "se");
	    spellAdd( " ", "nian");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "rang");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "po");
	    spellAdd( " ", "die");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "dong");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "si");
	    spellAdd( " ", "er");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "gua");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "luan");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "li");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "miao");
	    spellAdd( " ", "an");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "chun");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "e");
	    spellAdd( " ", "ci");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "liao");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "bing");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "li");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "li");
	    spellAdd( " ", "you");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "da");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "pao");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "xuan");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "la");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "chai");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "sao");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "ban");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "zhai");
	    spellAdd( " ", "long");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "chou");
	    spellAdd( " ", "ban");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "song");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "zhun");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "dou");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "cha");
	    spellAdd( " ", "na");
	    spellAdd( " ", "ren");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "pan");
	    spellAdd( " ", "dang");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "ken");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "da");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "lv");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "lan");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "pan");
	    spellAdd( " ", "ya");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "jun");
	    spellAdd( " ", "cun");
	    spellAdd( " ", "jin");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "chao");
	    spellAdd( " ", "si");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "ou");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "nou");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "die");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "ning");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "han");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "hang");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "he");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "han");
	    spellAdd( " ", "e");
	    spellAdd( " ", "zhuan");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "man");
	    spellAdd( " ", "sang");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "ru");
	    spellAdd( " ", "pin");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "chai");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "rui");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "hao");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "gong");
	    spellAdd( " ", "dou");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "han");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "li");
	    spellAdd( " ", "you");
	    spellAdd( " ", "ran");
	    spellAdd( " ", "zha");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "you");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "nao");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "si");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "ting");
	    spellAdd( " ", "kuo");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "mou");
	    spellAdd( " ", "shen");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "shao");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "guo");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "lang");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "chun");
	    spellAdd( " ", "rong");
	    spellAdd( " ", "nan");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "sou");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "you");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "you");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "mou");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "man");
	    spellAdd( " ", "mang");
	    spellAdd( " ", "ma");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "pang");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "cao");
	    spellAdd( " ", "piao");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "zhong");
	    spellAdd( " ", "zhang");
	    spellAdd( " ", "shuai");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "peng");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "pan");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "huo");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "mie");
	    spellAdd( " ", "li");
	    spellAdd( " ", "du");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "fou");
	    spellAdd( " ", "ying");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "du");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "zhao");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "po");
	    spellAdd( " ", "da");
	    spellAdd( " ", "sheng");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "li");
	    spellAdd( " ", "si");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "kou");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "zheng");
	    spellAdd( " ", "jun");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "gang");
	    spellAdd( " ", "pa");
	    spellAdd( " ", "shao");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "qie");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "ruo");
	    spellAdd( " ", "qian");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "dan");
	    spellAdd( " ", "kong");
	    spellAdd( " ", "wan");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "zhen");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "li");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "su");
	    spellAdd( " ", "mie");
	    spellAdd( " ", "dou");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "duan");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "zan");
	    spellAdd( " ", "deng");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "lai");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "yu");
	    spellAdd( "���", "yu");
	    spellAdd( " ", "chong");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "nv");
	    spellAdd( " ", "chuan");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "zhong");
	    spellAdd( " ", "ban");
	    spellAdd( " ", "fang");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "ze");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "shao");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "shou");
	    spellAdd( " ", "cao");
	    spellAdd( " ", "chong");
	    spellAdd( " ", "meng");
	    spellAdd( " ", "qin");
	    spellAdd( " ", "niao");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "di");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "suo");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "li");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "can");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "zong");
	    spellAdd( " ", "san");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "zan");
	    spellAdd( " ", "ci");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "rou");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "gen");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "pian");
	    spellAdd( " ", "he");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "dao");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "zan");
	    spellAdd( " ", "nan");
	    spellAdd( " ", "zhe");
	    spellAdd( " ", "jiang");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "ding");
	    spellAdd( " ", "gan");
	    spellAdd( " ", "zhou");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "zuo");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "ming");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "shai");
	    spellAdd( " ", "cheng");
	    spellAdd( " ", "tu");
	    spellAdd( " ", "lei");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "ti");
	    spellAdd( " ", "xu");
	    spellAdd( " ", "hai");
	    spellAdd( " ", "tang");
	    spellAdd( " ", "lao");
	    spellAdd( " ", "bu");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "li");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "dun");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "xue");
	    spellAdd( " ", "cu");
	    spellAdd( " ", "bie");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "qiang");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "li");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "jia");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "kui");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "liang");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "chuo");
	    spellAdd( " ", "huai");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "dian");
	    spellAdd( " ", "bo");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "die");
	    spellAdd( " ", "chuai");
	    spellAdd( " ", "zhong");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "duo");
	    spellAdd( " ", "cuo");
	    spellAdd( " ", "pian");
	    spellAdd( " ", "rou");
	    spellAdd( " ", "nie");
	    spellAdd( " ", "pan");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "pu");
	    spellAdd( " ", "fan");
	    spellAdd( " ", "cu");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "chan");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "zuan");
	    spellAdd( " ", "xie");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "diao");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "mo");
	    spellAdd( " ", "pi");
	    spellAdd( " ", "hu");
	    spellAdd( " ", "jue");
	    spellAdd( " ", "shang");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "gong");
	    spellAdd( " ", "su");
	    spellAdd( " ", "zhi");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "liang");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "li");
	    spellAdd( " ", "wen");
	    spellAdd( " ", "ting");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "pei");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "ai");
	    spellAdd( " ", "xian");
	    spellAdd( " ", "mai");
	    spellAdd( " ", "chen");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "bao");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "yin");
	    spellAdd( " ", "yu");
	    spellAdd( " ", "chuo");
	    spellAdd( " ", "wo");
	    spellAdd( " ", "mian");
	    spellAdd( " ", "yuan");
	    spellAdd( " ", "tuo");
	    spellAdd( " ", "zhui");
	    spellAdd( " ", "sun");
	    spellAdd( " ", "jun");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "luo");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "chou");
	    spellAdd( " ", "qiong");
	    spellAdd( " ", "luan");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "zan");
	    spellAdd( " ", "mou");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "liu");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "xin");
	    spellAdd( " ", "you");
	    spellAdd( " ", "fang");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "ping");
	    spellAdd( " ", "nian");
	    spellAdd( " ", "lu");
	    spellAdd( " ", "su");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "tai");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "wei");
	    spellAdd( " ", "er");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "jiao");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "xun");
	    spellAdd( " ", "geng");
	    spellAdd( " ", "li");
	    spellAdd( " ", "lian");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "gun");
	    spellAdd( " ", "sha");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "ling");
	    spellAdd( " ", "zou");
	    spellAdd( " ", "fei");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "chang");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "ni");
	    spellAdd( " ", "nian");
	    spellAdd( " ", "diao");
	    spellAdd( " ", "shi");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "fen");
	    spellAdd( " ", "die");
	    spellAdd( " ", "e");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "fu");
	    spellAdd( " ", "huang");
	    spellAdd( " ", "bian");
	    spellAdd( " ", "sao");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ta");
	    spellAdd( " ", "guan");
	    spellAdd( " ", "yao");
	    spellAdd( " ", "le");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "xue");
	    spellAdd( " ", "man");
	    spellAdd( " ", "min");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "gui");
	    spellAdd( " ", "shan");
	    spellAdd( " ", "zun");
	    spellAdd( " ", "li");
	    spellAdd( " ", "da");
	    spellAdd( " ", "yang");
	    spellAdd( " ", "da");
	    spellAdd( " ", "qiao");
	    spellAdd( " ", "man");
	    spellAdd( " ", "jian");
	    spellAdd( " ", "ju");
	    spellAdd( " ", "rou");
	    spellAdd( " ", "gou");
	    spellAdd( " ", "bei");
	    spellAdd( " ", "jie");
	    spellAdd( " ", "tou");
	    spellAdd( " ", "ku");
	    spellAdd( " ", "gu");
	    spellAdd( " ", "di");
	    spellAdd( " ", "hou");
	    spellAdd( " ", "ge");
	    spellAdd( " ", "ke");
	    spellAdd( " ", "bi");
	    spellAdd( " ", "lou");
	    spellAdd( " ", "qia");
	    spellAdd( " ", "kuan");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "du");
	    spellAdd( " ", "mei");
	    spellAdd( " ", "ba");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "liang");
	    spellAdd( " ", "xiao");
	    spellAdd( " ", "wang");
	    spellAdd( " ", "chi");
	    spellAdd( " ", "xiang");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "tie");
	    spellAdd( " ", "tao");
	    spellAdd( " ", "yong");
	    spellAdd( " ", "biao");
	    spellAdd( " ", "kun");
	    spellAdd( " ", "mao");
	    spellAdd( " ", "ran");
	    spellAdd( " ", "tiao");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "zi");
	    spellAdd( " ", "xiu");
	    spellAdd( " ", "quan");
	    spellAdd( " ", "jiu");
	    spellAdd( " ", "bin");
	    spellAdd( " ", "huan");
	    spellAdd( " ", "lie");
	    spellAdd( " ", "me");
	    spellAdd( " ", "hui");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "ji");
	    spellAdd( " ", "jun");
	    spellAdd( " ", "zhu");
	    spellAdd( " ", "mi");
	    spellAdd( " ", "qi");
	    spellAdd( " ", "ao");
	    spellAdd( " ", "she");
	    spellAdd( " ", "lin");
	    spellAdd( " ", "dai");
	    spellAdd( " ", "chu");
	    spellAdd( " ", "you");
	    spellAdd( " ", "xia");
	    spellAdd( " ", "yi");
	    spellAdd( " ", "qu");
	    spellAdd( " ", "du");
	    spellAdd( " ", "li");
	    spellAdd( " ", "qing");
	    spellAdd( " ", "can");
	    spellAdd( " ", "an");
	    spellAdd( " ", "fen");
	    spellAdd( " ", "you");
	    spellAdd( " ", "wu");
	    spellAdd( " ", "yan");
	    spellAdd( " ", "xi");
	    spellAdd( " ", "qiu");
	    spellAdd( " ", "han");
	    spellAdd( " ", "zha");
    }

    /**
     *        Ascii.
     * @param cn char
     *     
     * @return int
     *      0,    ascii
     */
    public static int getCnAscii(char cn) 
    {
    	byte[] bytes = null;
    	try 
    	{
    		bytes = (String.valueOf(cn)).getBytes("GBK");
    	}
    	catch (UnsupportedEncodingException ex)
    	{
    	}
    	if (bytes == null || bytes.length > 2 || bytes.length <= 0) 
    	{ 
    		//  
    		return 0;
    	}
    	if (bytes.length == 1) 
    	{ 
    		//    
    		return bytes[0];
    	}
    	if (bytes.length == 2) 
    	{ 
    		//    
    		int hightByte = 256 + bytes[0];
    		int lowByte = 256 + bytes[1];
    		int ascii = (256 * hightByte + lowByte) - 256 * 256;
    		//System.out.println("ASCII=" + ascii);

    		return ascii;
    	}

    	return 0; //  
    }

    /**
     *   ASCII  SpellMap        
     * @param ascii int
     *      ASCII
     * @return String
     *   ,    ASCII  >0&<160,          ,
     *    SpellMap   ,        ,   null,         .
     */
    public static String getSpellByAscii(int ascii, char ch) 
    {
    	if (ascii > 0 && ascii < 160)
    	{ 
    		//   
    		return String.valueOf( (char) ascii);
    	}
    	if (ascii < -20319 || ascii > -2050) //-20319           -10247
    	{ 
    		//      
    		return null;
    	}
    	
    	if (ascii < -2050 && ascii >= -10247) //      ,    
    	{ 
    		//      
    		String pinyin = (String)spellMapTwo.get("" + ch);
    		return pinyin;
    	}
    	
    	Set keySet = spellMap.keySet();
    	Iterator it = keySet.iterator();

    	String spell0 = null; ;
    	String spell = null;

    	int asciiRang0 = -20319;
    	int asciiRang;
    	while (it.hasNext()) 
    	{
    		spell = (String) it.next();
    		Object valObj = spellMap.get(spell);
    		if (valObj instanceof Integer) 
    		{
    			asciiRang = ( (Integer) valObj).intValue();
    			if (ascii >= asciiRang0 && ascii < asciiRang) 
    			{ 
    				//    
    				return (spell0 == null) ? spell : spell0;
    			}
    			else 
    			{
    				spell0 = spell;
    				asciiRang0 = asciiRang;
    			}
    		}
    	}
    	return null;
  }

    /**
     *        
     * @param ascii int
     * @return boolean
     */
    private static boolean isAlphabet(int ascii) 
    {
    	if (ascii > 0 && ascii < 160) 
    	{
    		return true;
    	}
    	else
    	{
    		return false;
    	}
    }

    /**
     *         ,        ,         
     * @param cnStr String
     *    
     * @return String
     *           
     */
    public static String getFullSpell(String cnStr) 
    {
    	if (null == cnStr || "".equals(cnStr.trim())) 
    	{
    		return cnStr;
    	}

    	boolean isChinese = false;

    	char[] chars = cnStr.toCharArray();
    	StringBuffer retuBuf = new StringBuffer();
    	StringBuffer resultBuf = new StringBuffer();

    	for (int i = 0, Len = chars.length; i < Len; i++) 
    	{
    		int ascii = getCnAscii(chars[i]);
    		if (ascii == 0) 
    		{ 
    			// ascii   
    			retuBuf.append(chars[i]);
    		} else 
    		{
    			String spell = getSpellByAscii(ascii, chars[i]);
    			if (spell == null) 
    			{
    				retuBuf.append("ZZ" + chars[i]);
    			}else 
    			{
    				//System.out.println("spell:"+spell);
    				retuBuf.append(spell);
    			} // end of if spell == null
    			if (!isAlphabet(ascii)) 
    			{
    				isChinese = true;
    				retuBuf.append("ZZ");
    			}
    		} // end of if ascii <= -20400
    	} // end of for
    	if (isChinese) 
    	{
    		//resultBuf.append(cnStr);
    		//resultBuf.append("");
    		resultBuf.append(retuBuf.toString());
    	}else
    	{
    		resultBuf.append(retuBuf.toString());
    	}
    	return resultBuf.toString();
    }

    public static String getFirstSpell(String cnStr) 
    {
    	return null;
    }
}