From 8e57ee0759af8f814b1e7a974de102070389dc46 Mon Sep 17 00:00:00 2001 From: HibiKier <45528451+HibiKier@users.noreply.github.com> Date: Thu, 20 May 2021 18:47:06 +0800 Subject: [PATCH] Delete util directory --- util/__pycache__/img_utils.cpython-38.pyc | Bin 7812 -> 0 bytes util/__pycache__/img_utils.cpython-39.pyc | Bin 7837 -> 0 bytes util/__pycache__/init_result.cpython-38.pyc | Bin 2317 -> 0 bytes util/__pycache__/init_result.cpython-39.pyc | Bin 2455 -> 0 bytes util/__pycache__/langconv.cpython-38.pyc | Bin 7717 -> 0 bytes util/__pycache__/langconv.cpython-39.pyc | Bin 7711 -> 0 bytes util/__pycache__/user_agent.cpython-38.pyc | Bin 3897 -> 0 bytes util/__pycache__/user_agent.cpython-39.pyc | Bin 3776 -> 0 bytes util/__pycache__/utils.cpython-38.pyc | Bin 9115 -> 0 bytes util/__pycache__/utils.cpython-39.pyc | Bin 8436 -> 0 bytes util/__pycache__/zh_wiki.cpython-38.pyc | Bin 176553 -> 0 bytes util/__pycache__/zh_wiki.cpython-39.pyc | Bin 176569 -> 0 bytes util/get_bilibili_img.py | 140 - util/img_utils.py | 296 - util/init_result.py | 86 - util/langconv.py | 274 - util/user_agent.py | 47 - util/utils.py | 263 - util/zh_wiki.py | 8275 ------------------- 19 files changed, 9381 deletions(-) delete mode 100644 util/__pycache__/img_utils.cpython-38.pyc delete mode 100644 util/__pycache__/img_utils.cpython-39.pyc delete mode 100644 util/__pycache__/init_result.cpython-38.pyc delete mode 100644 util/__pycache__/init_result.cpython-39.pyc delete mode 100644 util/__pycache__/langconv.cpython-38.pyc delete mode 100644 util/__pycache__/langconv.cpython-39.pyc delete mode 100644 util/__pycache__/user_agent.cpython-38.pyc delete mode 100644 util/__pycache__/user_agent.cpython-39.pyc delete mode 100644 util/__pycache__/utils.cpython-38.pyc delete mode 100644 util/__pycache__/utils.cpython-39.pyc delete mode 100644 util/__pycache__/zh_wiki.cpython-38.pyc delete mode 100644 util/__pycache__/zh_wiki.cpython-39.pyc delete mode 100644 util/get_bilibili_img.py delete mode 100644 util/img_utils.py delete mode 100644 util/init_result.py delete mode 100644 util/langconv.py delete mode 100644 util/user_agent.py delete mode 100644 util/utils.py delete mode 100644 util/zh_wiki.py diff --git a/util/__pycache__/img_utils.cpython-38.pyc b/util/__pycache__/img_utils.cpython-38.pyc deleted file mode 100644 index b8b278af6edc9204f0c0c0df2c5e0d21a0959cd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7812 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 diff --git a/util/__pycache__/img_utils.cpython-39.pyc b/util/__pycache__/img_utils.cpython-39.pyc deleted file mode 100644 index 72badc06bbce8ab09cff9742cdda88244c76c2a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7837 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 F{R=o^!~_5U diff --git a/util/__pycache__/init_result.cpython-39.pyc b/util/__pycache__/init_result.cpython-39.pyc deleted file mode 100644 index 0836531c7251a9c865258caabf3e64856d662cab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2455 zcmbVOTW=dh6rPz~+iS;3-K0&@^cK;AWDpLQsz?zkE#+3Enu;JEtVm|#**Kf*uASL& zuWNzSN(jU+pj;e@mpmX;ka$3d-@x-e@Pew6zt9)>&TJyZZXZy_I%npbIWyB=u4eX*j?Ud34?vk*bDWiENk!7(neA{yUv9sz2 z-r~Z-f}(@pF0Qz-cm5m{JO84k_L|n+l-G7R&Dyo~Zu>D`=#lNi`+q$8;`4bke)Riq z4}W-2tCmyIi4`En(!6)mk9DkaB;@=M_mkSIek4;X)+)6EFG_Q9H}JI*Fj0ibv~a^! zksq~{18JM7W9S|)zO}e~?Ur8aM7v${Mn`QdulXzfhQHF$yQAfv_Jd_V@^w>raWBxd z?kzQi4Jg?788F6eUgi@bkA8xeL`690C%MCC`J9;Ld135Zbk@B_V+&*;L0P5QfG6e? zZu5FoWaksE1`fsMrinOXb1+sXz~(_Qosn@Px6GJiv?0iS4TUCfaLElA1i&x{FjxeJ zgy1FAD_Y3hz@ivtSYJdH$a%;V6@b|nSdX*>xExr2rE}}~LBYT`(#`;hn!&dZSPsEu z%)q6*3m4nK1@_rlCBbF9t|kznIs^tRgxyy&&{%i+wcEKn{e?SyHBJU)Vq;)Ey48Pv z`f=y`UsQ!;g2pabYJiKHhOB0Y(ML}6s~r`(S{)(HVPdpEO%gLe$}6wcQPQAA%|czZ z8>Q&!A_UWQQrCVDv`jvFI!)rq#^czQZe`0we$%+|Fb4BtKrH(Gg;F_)` z!!=MOP`YsYL#N8cYp(LDc53xhkmj_n11~L56sWh2qRH+irbfef4jW$p?VXt91D)8q z83xEOTe{jEb@DtmeRH1^k`Ls>UXMGGdI8HvUAze0JNsOad@vWQZp$Nh__8_bq=rr3 z-{*wnC!A2dFn30osPS}5Y%+#A-M$_YE+|) zAF9NJjV)AwAxspIt0>oU-!Z6MD^vGg#^^)Po)40%cHPvAI+aZ-%7zV%kEBxo)vDi) zYxF`lGa-8*EUajpjyjQtnqPCJ+tr?mYpqRsqH1CG7r;~rQ#sNya^pG*LtMjufvjL0 zC8zWxm^!THX>^7drH3MLDguw9>s9pm6@42;!9VSksq=c+k-fmXK(9nhwZ4KP;_$LH Peax{-la37z%6|U=QGVOx diff --git a/util/__pycache__/langconv.cpython-38.pyc b/util/__pycache__/langconv.cpython-38.pyc deleted file mode 100644 index 94b492277c8f9b53e7150a760f84e744ac1ad514..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7717 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 diff --git a/util/__pycache__/langconv.cpython-39.pyc b/util/__pycache__/langconv.cpython-39.pyc deleted file mode 100644 index 49ba2e1baed1dcbfa23fc0894207e454b94fa168..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7711 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

f>2gg zGQ1hXH`C0;y1_6b2PxRVK*Xq}gKQ1&1f^jP4F&Erpqp*jzU2!1>Sl4PR0yg+BmzTJ zvZ864{Cai$UOBHBk|d(J4_t#Fa34W+KIZfo9uicPrM#vZI*rJZ)dF#?9lUT&eimR-gkSG63?%6%{z&?% zCrLYaJxf*j(k2wkbRN=@FPuAC^elKk+B;focbMI#M@xOU+q8nae~$fy=xEuwU{sVecKVoGPrwqba{vR&55M|N(zQV(z^hoaLx;6UH~&(7+V=!Ey9hX di(l?B(s$_BNtpGjFkD|g!LOV|Ja diff --git a/util/__pycache__/user_agent.cpython-39.pyc b/util/__pycache__/user_agent.cpython-39.pyc deleted file mode 100644 index b7a1ed25b60e266d41560ac20598593cf465e09e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3776 zcmc&%OK;mo5T@)TH3B5P^jNfeDPT6$@+FdD)HanA#Zh9(iY3QEU_hnBwMCfb3M@AplDBR&qb44|B|mg^)KYqSxS^dNse73Xl0AyE_Y_Wo&DxP_s*T$5`116zka*^ zp(On!2D6_P7<>cY!N+j%Brg+4FQo&?TX~atnekS=8$U=dSG-J9l5hSEE2O&o89%F0 z?gxRZm{>*YHMi@B5gqgjXs3XxVMGE1b7-rHULZ|vTkU)SkuWVp&4K>|;m-*w>yq_|?>xUja8N`Oi_o&`N z7S`UM#p*JP!iuJ1wSacFcCB0ivE%zj9;@@n6D5C}=gNQ0R&STBcCLshTtZDqgtjc*ZJ<;- z(81x_(m*fw7(F722B(T0%fO~Jjdvk*8J*_Y05ZT-_cZF!P=trfHxl4iqf@M)MZzvb zV2ioOBp?h4UcUX8yaYuu|LQu%dj#!L7I-rM`8wj`>;aeys96Cgyg)S)xlM*3)|XC+ z95bI!79?fvTmy|^sm+Sai`Nh>9=l3Pg_a+<-vPnjt`bu`kZLu;$Ht`tEq@~3e3kPGP~1U1Ys@30HPC?L7K4D zDGPJhLM=M%_8P9IKuYGnr+_rijyk>@f@ufCc{d63$-q+MR=Z9QeYft|Sq&OY0ZfA~ zufgcPNKLis!$wwzuqe}T-#-{KXxyNME^j_8XQ2m}L#~@kagRaQH=z3jp}eN&csqq} zp`%N+gmFd|DcHt9#H6o-Yz;34m2nP@1s=DcrEU3<8_N8no$_v_Bw7GS1h%5*6~}S- zr}eF;)uL&us)Cj-_ymF=Jb@B@!ShKgyS(zpO`(iNv9{E}gdwmLttZtcU25`eHC<@t z{A^el(#*TwaiAj}6I9XEqG{L`Nyw5ng}B)j?_IN>8!#xtcW@UjUM7~OE=cl<-YL!;hPV5J&{!{d2}q(hw%5z;0Wicq zfSy^ISTCyNA`@5Hr8wpCDUqwd@`=YBQk9!4e}MmhOjSFA{iy{T1sH=24&uj(zM zYUnJRO|xZHEtR*Lb}LuSsl48_tG0SBU(MrgH=S0YT8P_<)uL*fs7~OXYfiSNs#Ch= z=0yIn{;*Und0O?6y7N)srZMrl$^p)`fkj5{MrkM-(Hs68d7 zQ9F&=S(HwT8I)#FI)l6#F;O3aaNprVpZqFO?Td1z~6Z>_oXG~#ljQ2 zdO@5Q7oKRy`=WRa&&Q;PK?gJg+;r{8=P{7U+-l zzE(5(OiiJ!YtQsb*^(AoL(^*qq21u?LbFwW1RyNmZEng*v_8{h3Ag8$m$y4DcX``; z;O%(v4Rc)X23}Jo{?hJ#=+tUn+Y4&7GkC`5+cmwY_s(QxT}t|l3C;dW=(EW5wTD_? zx3zgF&P~nKZb4Nbwoy5PHbHzj!J8qca0|^HcVEdFC8tzfU5I&Pe1(nPn;sGZjnDKj zC*7bc+hdY&S(GG;$V8IN^RDmM@}dBUlnoLY>rh`ThgFf3YGbWzD7h4LlGu+*WrGTh zoeOC39VD7Q4S+1YH!~!i>QpJ`323|Ca%;7)SgW-0K%q4l8C zX-ZByGc1=+5)sJ(DU(mjW_EMsgA>g)MSmr!Dfr!96Dm0HPR9 zf9$*R?jz4nxk+S_AM<>>0(TCX0XGBl(0mGzBYw&P8e@jamyr+c7H1b))J!Zt*F7^! zH9;crI<5ip=0~MDnSJS+M`9gnN*J(@>#kNC{3{!k4Xp7c4*m+0m-JrH1yKea_ zWJ&s+%s(z(hHsGsYi0f9!3%upTD|GJ?{IX2t?9jmF&xrvCl5}W6lf6;54AZ6vSZ0h zeeDo%Jk{ZcK!1P(t1?f)%*xS4Jh4_bBYa*%;Y2wVORu3vtOhfY8k`-IGf@S(z}Lag zYLeO$v3`*`HO`5or%0D^sc{tPNqg2da1H&)fK^=n`$$GUO<-hYm5;l_MMPI^vrVgbYZ{ z9ufDaQlc|l8KVlp%1|W@3WOxX`Os=198yrh<51ru zt(3e@nPU2+6&V~;|ML+##x|`8o0ijib0d>Xb#074oVXJIU1Spefa!+35V0t-wzuN8 z(cnm)j)dgXkqQ19bH}(S6)xOEqY4Eyy@bEsOQUikM*0eK(8nu=&B2_~MCj&?Y(4an zZq!VIrYNsMDhnaiqio-K=nCh#qYc*&y#qlPy-yN&t!p$!2nnEm=3F zZ6+#L*>Md?qHV5uXbHGtXqh3*Sj#ME8ACIAqbM{hU`xl1pN=h~+VWw`SOR#{;mn71 zueo38wjQ`LR>9uXcYLqDyuMv;Z*AATF^;AxMt{szt--|hwSDGMlHLfvtC66UuMPGV_3Lx;o}E*vvv+)YxQ z#>{fM0>c}-zA@O?4a7*SES)s49Aic3c%P06k?A;EB>l#q;KJPD!*qee;k9JU zeli@kbP+hy>?L3vw*aaWeKXN0PmcKJ(AwP(dZ9z-(!)`KWLOqijDf?x#ky}X`8Jb* zuU0wbZRmG5aVb(bdeLy~lH<^6v!#J+=*LN~;_|kx_BRo8^s(BZd z1SQ%Kt6GR{NKx64Q=zri72U>(n>@-p*yIg-t{ELZSWWB{;c0o3ucB{es;N)?CB>$0 zVJ9=i;ZltsqguMO^m+-)q4H389-Ji}-;f`oJ&TnTa) z4?Mw@2r{7riC*wxhHb@yMA4~YIySHr;5e0&-$cW&G6NOWK#|>eadaMGjajS6oJJ~& zZ;a4vy6qE3#Bq<;bAO!~vY>`!?HItR{U^5*fCVk1u>+4B=?^I;>8VCRq#^qPR{~-@ zHwJiP7^Wj}TG^3?MmZ+B2~Aj|f6R>HsOg}xQl1!5#z^nDwhDI@14=rIjN_(*&P+t{ zLQa~GrYoKHDuY^CzmdG1r6@xS4xrVYmRb+al05f|GYJLhkv<_Dl=sQKZsKe*z z+K;rhabN4r!MSTq;{c0#2){%kr@gH}-!$;VM)ryLNNPiE4b~7DUBOUc@soP9>)w^J zBg2Vq+iP@$i}TKUn1_vZrPl}x8~eLa2SnexFaHLQW#-K(hXv24J3zefdlY@1m1w%5 zJ8;e=T+A`(oxvr4h_Zlw+=-Psf4-=bKX|FBi)|;@y6Oa?*WONOU(SxaofPmYj1^mG1TH6W@vR_ zLBawYl4yEu*O%l{IWOJq}}!R!y)m#{z=s@ngE2cozX5$OyN zb>QzEeb%_B%R1T`xQ2eIrZ7BUg!5DjF!4nFO)PPABpo^&1n0KCWJr|}AtiO>@zLd9 z&>>b+DUj!}F!>U#UY6Fhxjb7`w0?jLR!@%tEreNGZ-whPuVKxuFz6BxO_*4xIS?8l z7-}rk*z-^Xl6w#JpF(&jg9U2;IHLBJmV-j9W35zpnX82Pmh1cVEf+_E;B9Es1Ly-HF-Hi<&l2-TBN{U# zUy(Gi8BDAIXJ`tN=lZ2AAT&vmy|9YVoH+sg)78o{sWy7<$Z+wkN`9nslMJvArSz& znk6M1PO7W3$j4f0z%>#3y;-=SoYGUepnK^Wpl+}R14;tXMn{Th0=pPitq)?abarY1 zo*7Y(_nRzdz%6O5Ec68o@IeQ83IOiWk zbM}U9lU*5*E}EQLvmQp2zhLqr{i50WA9Na-({!X=2WT0Z(-4_1qcsXBgnkxU1)sQp zd701}ZI1_$IQM$Wt*cczB4o;kJ=bXlzK3FHLJi>V=;ru!)BcPR!>F_c91GQgPVM^2 z|Kgc=YtFA&@-fQr5)+M1XUB8ZhpTaCLGsZOEB3D-!_9$EC%ESzGA{G6@!PX1+EGew z#7_E;pj_mvl>@LUJw)mpXt`%C1yJmdIlL+V7B|U&BDCm~p*>GnLjycIl~bfsEG^ae zIr_xs<8!+Fdz2cuhJM6biEbgIJ|7#E-kI$n*nNL_`TDyzm#*RO`ujKE`^L4*Xd?@* z#%*>Q^=55Xb{_3Rp<->#Nk;xdD@?#Rm>TtMWcsv~iw6L$uUoJrJG#7pwbrH8#y=74 z;bH)|X9)`{ZCAP`p84;8`&`|R{`9AfH6<9``Ol$_q0!jRNUFSE5kcOaZALS0k)qL9 zXox`OaLHdIKP2D~1sQ>GNBz%O%RexvGAq58V|eziFYPruTb-pwdwJ{I4?fu2yVBnI zpqIPie{g*zf(!P|!y85gn&{%AVy*re!;jM`Si1bpakAK`RA6z3lE|VYGXH>&6(E1Q zV7nQCwwIsl%RPH}<;Jz;2qApb-;$l~Zp{;;0!>B@kwj-Q68!_l1m%cH6d}G9ol9~R zqXQwRN3-cR7=rlGq1XeqQEFu@!W=fBo8DFwp{=4i%ss$q$I6Xxf{`=`tC~siY9amC zg6e4m*n!umMUwG<71YOF^{Go8<5wr*9-GZppiUXpK|!=vQ6~=!*yZO;sG*V|s(@3) ze=5L{bnnWgNxBtD8;h`zgV8i86QC4F@mO(1Es`WI84#61D6ToTqR-mjB4qw;B#d?$ uS26C5QygkoR%yC4TRP=frSqi)=FXNJYkE@sS<@5K6Hb0Q=MNl|3iBPXcT?az|a1dfBy8snqmBrmGNH&l?@!>KMKQ;h7@(9%(Gb+4N(>i zvuq01t-95)%eKC@>rNw6&gg4Vcgl`_E?ds(vs-p?cIvrCzMR*6GWEH}e0hG*f1$kK zWn}hHJSvn6-!Y^sb59JJJ2cB@P|M3X)aFoIL~UL!ptgY8S?{bY9E$Q1TF=Nuv@W9c z9BOCf5^77REqmwXxi5uWmgk??Me;&DfRI$cy}j7w1??uO3y4BA%1pPPJ2yq+g3r%_^_m@s)>5cl#&Xl@H(D{_Zmo z&xhSG@*0(vYCi6k*Mer?J#0pmR=u<92bF3otnGQSQ}d0{$go+nckaEh&cudC%wibdU4m69(C zHCCdxI3WaXLXjEeMI9B)NJ2GfNv`1{kz|!;vG1rW5};BxNMvroo}nJQq$t()X3^Ag zX(-isG)+t8fEu;^Ron?(6oyy?K(^>DO-QFZm5Nyc8dMuzr4r{Wl}3}K!u5Qm((Y92 z$sKi;!(2oW+Yg(~x`J~WAC~G=L`3CKuyaUPc_FHgJSrM{ycUr6V(7 zt0S}0#W^E$03shReiVA@gU5cDa+Syof4t_~HMlFd7;!bSj;yBuIpM3KvmG#2UBPwi zG&sB1rnwe{*83E=8VPD_#JtsMX-;Qfs`EswBSQ-V_EGOz+u&c(ENw%_FJTaMmBmRq zc0(_!Y^#oU{VQY{_B)+_WcL`~5(zdj{Zj|e@ui#9dg#%`49UMXgG1Ww^uhUp$Vh;A zWUN4teOq1a8%KcSsX!0{{Q(ZV%qj)5O2<^xX3c<wu98G%Co~<<;6F)Lw14sBaifP(=wzS}sZRx-% zJBX*Gy(nkAtZvWAJlb732Ot*WxlII)|F^Fm=YH($)SJ~P&IR7%sG5IKo#@3IQj570&4cEcgaewgqB~MwW1(ZhsL;{jRowU{j?_>JR^C!< zJ!a1uj)@<6w1FeMiz2m_dC$_8VrolaM$0q?;Q@By!hR<06-{M8RioSbF(@zQge7Zwi`%~ zG*pN)+v>ZllE;?f~)(X-n zP;Dmyz<9Au0En4ktpEV#VK)Zn-uY=T264z#H_>0MqnI^1ZD3^4C@0goOJai~d(&5% zF^quU#W6_9mNKrR*fwKr78*C$aTCSR+C1yXmI%eLGE-UuE3;u`OwAaLlGH4RbskrP zqMT3Gf#o?_0C()(4v-Ys<+4?Q(7!QR5Vp@Lzt zs3t^*VK7`fVa!1{bq@Vz+;XY`2Hs?7`mVk?TG)-m7l9p;;bPU{(`P}~E(*wJ2Gl@HJ`p)~t&)z%8^fQu<;u_8weKutlVfsgX z>&WcGQAp!g=BkFPeQns*H%Dy%5pdhap(Tu9@wO56ZfV#FyfFIQQ*cYMP;tiJ4Vud9 zIUj9rzVQ~&$#}#uj9o7Pj()Hki+pSh^4-{Ow!9$D!8~N$54G=upps3X+fVWpgn>FT5Pm9tB{{2&_?@@ z;X7e4cDI}uz^;*j?zW6udY`J8DaF}_7lzec4_g*scWhQ8^>Yjzo9#BDqWvgr2Ee~r z#ae9(?MeEX``~fSYejxDfFES{a<<)u7J!n~2zRG-R3Ko3aVpj5cX%LGR30`lkN=9c z5VebYwNpX)1b3%Exs!r&Z5EUfBvXJ`-H%TJL{%_``V>X%_zeJ)z+rV%9Z`@RQj&!R z!^71O0oQNrY6ujQfoTX9$00z^@L$ns2887Vgh#k{ItUzo#0n`6MDIR802{!J8yW-) zJg^gH00J1Pe;dKU3^(D#8hquvP|ayL$dA-`86AgkBxZ}OE}kFKjjTon zmnshNj)eWQ`r$MGflfoSZR2`E9}H5dr7}nj1%Q=~6A}R_wbEr=5A4%~_ayS|Wq8<( zw$QN<#g>r?~q?L4zabJOrYGm{=Cv2baeg~{vwfER@fUEBjtU>~rs zgSOLWy^XtLv%Z;{;T4AA=~<6v><>9-c1sE8{7IkWltzS0rl$23VmuYG7-bnc;!ao= z-PM1h)6|R@Zb2lbViPl(Akr(io1_|2T!1|xVy*&DL0x{1n9dl$I&7KQ5 zfY_=do>?#f1U?2leu{B)Y?zidhvjM|YF2LF`!9-_L6PjP>wE#RVXoF}?)#qJP@fGE z6U2KD&oXRDy|Z)?BIB?Q%`aATCZx^V91G!F215AV@er=pKz6B@O$J@>**7B?`1kN) zxV68=Nm0VsW~hc0{S8|_VlkzJGbGkPa+>oW(PyxSw<6RpQKJD){D}Pn96B+K4CO|! zh;+9@G36N>WfWKSQ1xc5T2H=g9rGQ;#mK0?MLD5hwx@YLzZ3N7B(EI+v%aw5MD~Tc z3{?wd2l&|8<_AxtHEmnkP_$F(Sa{}7|NcvTKK}jhw>Py+jN$mwBxAF-HzuU!V;&jc zgFU7--hboa!7hu70Otzz1T7N+PB4(`CMNp7fhvE??8++jUf7GG*4yjr?b|oo_2zE# zW-VCX{r1Cm+U@JX{yV+Q_3)kB_iiOp3H1SxS3o>L+XmQcSsNfvHx zX{~U_VJM51$oehzP{IA)`GG{OF@g5hpNsXLvwrXHt@VK{NRw2v)2jG#TA=ylMk3Mw zj7h}Ib^;xupGrjaG1^7^(gET>LI(7?33VLbpz8o8mkEF1}J?NdS9d zC9%N5@Xnx-(MSC~igGUfj;lYD>5m3_L$o}HB}L@dDm(Q?r1xu*CD#=`%C(2;vCum~ zKjjsZWSyewEKD&A(Xm%C{wan7WUlz+to^9=SK6|*)oEsHN-1hlBQl2G$b8-V$p^x3 z5v*_n1=Dn9fK1rk?ZvspIXAnQar15#UkB~~ E17$r^{Qv*} diff --git a/util/__pycache__/zh_wiki.cpython-38.pyc b/util/__pycache__/zh_wiki.cpython-38.pyc deleted file mode 100644 index 79955b22d6abdbc8f040686e19521e9d85a9b843..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 176553 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 N{aNi_mUy<${~t2eQRe^v diff --git a/util/__pycache__/zh_wiki.cpython-39.pyc b/util/__pycache__/zh_wiki.cpython-39.pyc deleted file mode 100644 index 0f8ca89d2f27ff8605e39ac21f1599b21b7e751a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 176569 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 dyTZK*r%mSsMTV diff --git a/util/get_bilibili_img.py b/util/get_bilibili_img.py deleted file mode 100644 index 19348e0b..00000000 --- a/util/get_bilibili_img.py +++ /dev/null @@ -1,140 +0,0 @@ -import requests -from util.user_agent import get_user_agent -from bs4 import BeautifulSoup -from time import sleep -import threading -import os -from configs.path_config import IMAGE_PATH - -lock = threading.Lock() - -url = "https://search.bilibili.com/article" -# path = IMAGE_PATH + "setu/" - -index = 1 -THREAD_SUM_REMAINDER = 2 # 越小线程越多 - - -class bilibiliThread (threading.Thread): - def __init__(self, threadId, url_list, path, nolist): - threading.Thread.__init__(self) - self.threadId = threadId - self.url_list = url_list - self.path = path - self.nolist = nolist - def run(self): - print("开始线程<><><><><><><><><> " + self.threadId) - thread_get_url(self.threadId, self.url_list, self.path, self.nolist) - - -def get_bilibili_img(name, path, nolist=None): - global index - index = get_dirfile_len(path) - print("index===", index) - threadId = 1 - params = { - 'keyword': name, - 'page': '1' - } - res = requests.get(url, headers=get_user_agent(), params=params) - sleep(8) - soup = BeautifulSoup(res.text, 'html.parser') - # print(soup.text) - try: - total_page = soup.find_all('button', {'class': 'pagination-btn'})[-1].text.strip() - print("1 try") - except: - try: - total_page = soup.find_all('button', {'class': 'pagination-btn num-btn'})[-1].text.strip() - print("2 try") - except: - total_page = 1 - print("3 except") - print(total_page) - url_list = [] - for page in range(1, int(total_page)+1): - url_r = "https://search.bilibili.com/article?keyword=" + name + "&page=" + str(page) - url_list.append(url_r) - if page % THREAD_SUM_REMAINDER == 0: - print('-----> ' + str(page) + " =======>", url_list) - # _thread.start_new_thread(thread_get_url, (url_list, path,)) - bilibiliThread(str(threadId), url_list, path, nolist).start() - threadId += 1 - sleep(0.5) - url_list = [] - if url_list: - print("=========================最后一个线程启动========================= url数量: ", len(url_list)) - bilibiliThread(str(threadId), url_list, path, nolist).start() - - -def thread_get_url(threadId, url_list, path, nolist): - for url in url_list: - res = requests.get(url, headers=get_user_agent()) - sleep(2) - soup = BeautifulSoup(res.text, 'lxml') - alist = soup.find_all('a', {'class': 'poster'}) - img_content_page = [] - # print(alist) - for a in alist: - if nolist != None: - if a.get('href') not in nolist: - img_content_page.append("https://" + a.get('href')[2:]) - else: - img_content_page.append("https://" + a.get('href')[2:]) - pic_url = [] - for img_content in img_content_page: - print("开始获取---------->", img_content) - res = requests.get(img_content, headers=get_user_agent()) - sleep(2) - soup = BeautifulSoup(res.text, 'lxml') - figure_ls = soup.body.find_all('figure') - # print(figure_ls) - for figure in figure_ls: - try: - _ = figure.img.attrs['class'] - except: - data_src = figure.img.attrs['data-src'] - pic_url.append('https:' + data_src) - print("线程 " + threadId + " 获取完毕------> 开始存储") - for url in pic_url: - print("线程 " + threadId + "正在存储---------------->", url) - res = requests.get(url, headers=get_user_agent()) - save_img(res.content, path, threadId) - pic_url = [] - print("线程 " + threadId + " ---------------->执行完毕") - - -def save_img(img, path, threadId): - global index - try: - lock.acquire() - img_index = index - finally: - lock.release() - try: - with open(path + str(img_index) + ".jpg", 'wb') as f: - f.write(img) - lock.acquire() - index += 1 - except: - print("线程 " + threadId + "存储失败-------->" + str(img_index) + ".jpg") - finally: - lock.release() - - -def get_dirfile_len(path): - return len(os.listdir(path)) - - -if __name__ == '__main__': - # url = "https://search.bilibili.com" \ - # "/article?keyword=%23%E4%BB%8A%E6%97%A5%E4%BB%BD%E7%9A%84%E5%8F%AF%E7%88%B1%" \ - # "E5%B0%8F%E8%90%9D%E8%8E%89%EF%BC%8C%E8%BF%9B%E6%9D%A5%E7%9C%8B%E7%9C%8B%EF%BC%8C%E" \ - # "6%8F%90%E7%A5%9E%E9%86%92%E8%84%91%EF%BC%81" - # res = requests.get(url, headers=get_user_agent()) - # sleep(2) - # soup = BeautifulSoup(res.text, 'lxml') - # alist = soup.find_all('button', {'class': 'pagination-btn num-btn'}) - # total_page = soup.find_all('button', {'class': 'pagination-btn num-btn'})[-1].text.strip() - # print(total_page) - get_bilibili_img("精选动漫壁纸手机电脑壁纸&动漫游戏专题", IMAGE_PATH + "bizhi/") \ No newline at end of file diff --git a/util/img_utils.py b/util/img_utils.py deleted file mode 100644 index 5e4528bd..00000000 --- a/util/img_utils.py +++ /dev/null @@ -1,296 +0,0 @@ -import os -from configs.path_config import IMAGE_PATH, TXT_PATH, TTF_PATH -from PIL import Image, ImageFile, ImageDraw, ImageFont -import cv2 -import imagehash -import base64 -from io import BytesIO -from matplotlib import pyplot as plt - - -# 扫描图库id是否连贯 -def scan_img(path): - path = IMAGE_PATH + path - nolist = [] - length = len(os.listdir(path)) - print(length) - for i in range(length): - if i in nolist: - continue - img_path = path + "{}.jpg".format(i) - if not os.path.exists(img_path): - print("不存在=== " + str(length) + ".jpg -------> " + str(i) + ".jpg") - os.rename(path + "{}.jpg".format(length - 1), img_path) - nolist.append(length) - length -= 1 - - -# 比较hash值 -def compare_image_with_hash(image_file1, image_file2, max_dif=1.5): - """ - max_dif: 允许最大hash差值, 越小越精确,最小为0 - 推荐使用 - """ - ImageFile.LOAD_TRUNCATED_IMAGES = True - hash_1 = None - hash_2 = None - hash_1 = get_img_hash(image_file1) - hash_2 = get_img_hash(image_file2) - dif = hash_1 - hash_2 - if dif < 0: - dif = -dif - if dif <= max_dif: - return True - else: - return False - - -# 比较图片与hash值 -def compare_one_img_hash(image_file, hash_2, max_dif=1.5): - hash_1 = get_img_hash(image_file) - dif = hash_1 - hash_2 - if dif < 0: - dif = -dif - if dif <= max_dif: - return True - else: - return False - - -def get_img_hash(image_file): - with open(image_file, 'rb') as fp: - hash_value = imagehash.average_hash(Image.open(fp)) - return hash_value - - -# 压缩图片 -def rar_imgs(inpath, outpath, ratio=0.9, start=0, end=0, lens=0, maxsize=0.0, in_file_name='', out_file_name='', - itype='jpg'): - in_path = IMAGE_PATH + inpath + '/' - out_path = IMAGE_PATH + outpath + '/' - # scan_img(inpath) - l = [] - if in_file_name != '' and out_file_name != '': - filein = in_path + in_file_name + "." + itype - fileout = out_path + out_file_name + "." + itype - h, w, d = cv2.imread(filein).shape - width = int(w * ratio) - height = int(h * ratio) - ResizeImage(filein, fileout, width, height) - else: - if lens == 0: - lens = len(os.listdir(in_path)) - if end == 0: - end = lens - for i in range(start, end): - if i in l: - continue - if maxsize != 0: - if os.path.getsize(in_path + str(i) + ".jpg") > maxsize: - print("压缩----->", i, ".jpg") - filein = in_path + str(i) + ".jpg" - fileout = out_path + str(i) + ".jpg" - h, w, d = cv2.imread(filein).shape - width = int(w * ratio) - height = int(h * ratio) - ResizeImage(filein, fileout, width, height) - else: - continue - else: - print("压缩----->", i, ".jpg") - filein = in_path + str(i) + ".jpg" - fileout = out_path + str(i) + ".jpg" - h, w, d = cv2.imread(filein).shape - width = int(w * ratio) - height = int(h * ratio) - ResizeImage(filein, fileout, width, height) - - -# 压缩 -def ResizeImage(filein, fileout, width, height): - img = cv2.resize(cv2.imread(filein), (int(width), int(height))) - cv2.imwrite(fileout, img) - - -# 保存图片压缩后的hash值 -def save_img_hash(path, name): - for file in os.listdir(IMAGE_PATH + path): - if os.path.getsize(IMAGE_PATH + path + file) > 1024 * 1024 * 1.5: - compare_img_hash_in_txt(IMAGE_PATH + 'rar/' + file, name) - else: - compare_img_hash_in_txt(IMAGE_PATH + path + file, name) - - -# 比较色图hash值 -def compare_img_hash_in_txt(file, name, mode=1): - with open(TXT_PATH + name + ".txt", 'a+') as txtfile: - txtfile.seek(0) - hash_list = txtfile.read()[:-1].strip(",") - txtfile.seek(2) - with open(file, 'rb') as fp: - img_hash = str(imagehash.average_hash(Image.open(fp))) - if img_hash not in hash_list: - if mode == 1: - txtfile.write(img_hash + ",") - return False - return True - - -# 透明背景 -> 白色 -def alphabg2white_PIL(img): - img = img.convert('RGBA') - sp = img.size - width = sp[0] - height = sp[1] - for yh in range(height): - for xw in range(width): - dot = (xw, yh) - color_d = img.getpixel(dot) - if color_d[3] == 0: - color_d = (255, 255, 255, 255) - img.putpixel(dot, color_d) - return img - - -def pic2b64(pic: Image) -> str: - buf = BytesIO() - pic.save(buf, format='PNG') - base64_str = base64.b64encode(buf.getvalue()).decode() - return 'base64://' + base64_str - - -def fig2b64(plt: plt) -> str: - buf = BytesIO() - plt.savefig(buf, format='PNG', dpi=100) - base64_str = base64.b64encode(buf.getvalue()).decode() - return 'base64://' + base64_str - - -class CreateImg: - def __init__(self, - w, - h, - img_w=0, - img_h=0, - color='white', - image_type='RGBA', - font_size=10, - background='', - ttf='yz.ttf', - divisor=1): - self.w = int(w) - self.h = int(h) - self.img_w = int(img_w) - self.img_h = int(img_h) - self.current_w = 0 - self.current_h = 0 - self.ttfont = ImageFont.truetype(TTF_PATH + ttf, int(font_size)) - if not background: - self.markImg = Image.new(image_type, (self.w, self.h), color) - else: - if w == 0 and h == 0: - self.markImg = Image.open(background) - w, h = self.markImg.size - if divisor: - self.w = int(divisor * w) - self.h = int(divisor * h) - self.markImg = self.markImg.resize((self.w, self.h), Image.ANTIALIAS) - else: - self.w = w - self.h = h - else: - self.markImg = Image.open(background).resize((self.w, self.h), Image.ANTIALIAS) - self.draw = ImageDraw.Draw(self.markImg) - self.size = self.w, self.h - - # 贴图 - def paste(self, img, pos=None, alpha=False): - if isinstance(img, CreateImg): - img = img.markImg - if self.current_w == self.w: - self.current_w = 0 - self.current_h += self.img_h - if not pos: - pos = (self.current_w, self.current_h) - if alpha: - try: - self.markImg.paste(img, pos, img) - except ValueError: - img = img.convert("RGBA") - self.markImg.paste(img, pos, img) - else: - self.markImg.paste(img, pos) - self.current_w += self.img_w - return self.markImg - - # 获取文字大小 - def getsize(self, msg): - return self.ttfont.getsize(msg) - - # 写字 - def text(self, pos, text, fill=(0, 0, 0)): - self.draw.text(pos, text, fill=fill, font=self.ttfont) - return self.markImg - - # 饼图 - def pieslice(self): - self.draw.pieslice((350, 50, 500, 200), -150, -30, 'pink', 'crimson') - return self.markImg - - # 保存 - def save(self, path): - self.markImg.save(path) - - # 显示 - def show(self): - self.markImg.show(self.markImg) - - # 压缩 - def resize(self, ratio): - self.markImg = self.markImg.resize((int(self.w * ratio), int(self.h * ratio)), Image.ANTIALIAS) - self.w, self.h = self.markImg.size - self.size = self.w, self.h - self.draw = ImageDraw.Draw(self.markImg) - - # 检查字体大小 - def check_font_size(self, word): - return self.ttfont.getsize(word)[0] > self.w - - # 透明化 - def transparent(self, n=0): - self.markImg = self.markImg.convert('RGBA') # 修改颜色通道为RGBA - x, y = self.markImg.size # 获得长和宽 - # 设置每个像素点颜色的透明度 - for i in range(n, x - n): - for k in range(n, y - n): - color = self.markImg.getpixel((i, k)) - color = color[:-1] + (100, ) - self.markImg.putpixel((i, k), color) - return self.markImg - - # 转bs4: - def pic2bs4(self): - buf = BytesIO() - self.markImg.save(buf, format='PNG') - base64_str = base64.b64encode(buf.getvalue()).decode() - return 'base64://' + base64_str - - # - def convert(self, itype): - self.markImg = self.markImg.convert(itype) - - -if __name__ == '__main__': - pass - - - - - - - - - - - - diff --git a/util/init_result.py b/util/init_result.py deleted file mode 100644 index 3b369ddf..00000000 --- a/util/init_result.py +++ /dev/null @@ -1,86 +0,0 @@ -from configs.path_config import IMAGE_PATH, VOICE_PATH -from nonebot.adapters.cqhttp.message import MessageSegment -import os -from services.log import logger - - -def image(img_name: str = None, path: str = '', abspath: str = None, b64: str = None): - if abspath: - if os.path.exists(abspath): - return MessageSegment.image("file:///" + abspath) - else: - return '' - elif b64: - if b64.find('base64://') != -1: - return MessageSegment.image(b64) - else: - return MessageSegment.image('base64://' + b64) - else: - img_name = str(img_name) - if img_name.find('http') == -1: - if len(img_name.split('.')) == 1: - img_name += '.jpg' - if os.path.exists(IMAGE_PATH + path + '/' + img_name): - return MessageSegment.image("file:///" + IMAGE_PATH + path + '/' + img_name) - else: - logger.warning(f"图片 {path}/{img_name}缺失.") - return '' - else: - return MessageSegment.image(img_name) - - -def at(qq): - return MessageSegment.at(qq) - - -def record(voice_name='', path=''): - if len(voice_name.split('.')) == 1: - voice_name += '.mp3' - if path == "": - name = VOICE_PATH + "{}.".format(voice_name) - else: - name = VOICE_PATH + "{}/{}".format(path, voice_name) - if voice_name.find('http') == -1: - if os.path.exists(name): - result = MessageSegment.record("file:///" + name) - return result - else: - logger.warning(f"语音{path}/{voice_name}缺失...") - return "" - else: - return MessageSegment.record(voice_name) - - -def text(msg): - return MessageSegment.text(msg) - - -def contact_user(qq): - return MessageSegment.contact_user(qq) - - -def share(url, title, content='', image_url=''): - return MessageSegment.share(url, title, content, image_url) - - -def xml(data): - return MessageSegment.xml(data) - - -def json(data): - return MessageSegment.json(data) - - -def face(id_): - return MessageSegment.face(id_) - - -def poke(qq): - return MessageSegment('poke', {"qq": qq}) - - -def forward(): - return MessageSegment.forward() - -# if __name__ == '__main__': -# print(get_record_result("dadada", "", type="amr")) diff --git a/util/langconv.py b/util/langconv.py deleted file mode 100644 index 4977161b..00000000 --- a/util/langconv.py +++ /dev/null @@ -1,274 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -from copy import deepcopy -import re - -try: - import psyco - psyco.full() -except: - pass - -from .zh_wiki import zh2Hant, zh2Hans - -import sys -py3k = sys.version_info >= (3, 0, 0) - -if py3k: - UEMPTY = '' -else: - _zh2Hant, _zh2Hans = {}, {} - for old, new in ((zh2Hant, _zh2Hant), (zh2Hans, _zh2Hans)): - for k, v in old.items(): - new[k.decode('utf8')] = v.decode('utf8') - zh2Hant = _zh2Hant - zh2Hans = _zh2Hans - UEMPTY = ''.decode('utf8') - -# states -(START, END, FAIL, WAIT_TAIL) = list(range(4)) -# conditions -(TAIL, ERROR, MATCHED_SWITCH, UNMATCHED_SWITCH, CONNECTOR) = list(range(5)) - -MAPS = {} - -class Node(object): - def __init__(self, from_word, to_word=None, is_tail=True, - have_child=False): - self.from_word = from_word - if to_word is None: - self.to_word = from_word - self.data = (is_tail, have_child, from_word) - self.is_original = True - else: - self.to_word = to_word or from_word - self.data = (is_tail, have_child, to_word) - self.is_original = False - self.is_tail = is_tail - self.have_child = have_child - - def is_original_long_word(self): - return self.is_original and len(self.from_word)>1 - - def is_follow(self, chars): - return chars != self.from_word[:-1] - - def __str__(self): - return '' % (repr(self.from_word), - repr(self.to_word), self.is_tail, self.have_child) - - __repr__ = __str__ - -class ConvertMap(object): - def __init__(self, name, mapping=None): - self.name = name - self._map = {} - if mapping: - self.set_convert_map(mapping) - - def set_convert_map(self, mapping): - convert_map = {} - have_child = {} - max_key_length = 0 - for key in sorted(mapping.keys()): - if len(key)>1: - for i in range(1, len(key)): - parent_key = key[:i] - have_child[parent_key] = True - have_child[key] = False - max_key_length = max(max_key_length, len(key)) - for key in sorted(have_child.keys()): - convert_map[key] = (key in mapping, have_child[key], - mapping.get(key, UEMPTY)) - self._map = convert_map - self.max_key_length = max_key_length - - def __getitem__(self, k): - try: - is_tail, have_child, to_word = self._map[k] - return Node(k, to_word, is_tail, have_child) - except: - return Node(k) - - def __contains__(self, k): - return k in self._map - - def __len__(self): - return len(self._map) - -class StatesMachineException(Exception): pass - -class StatesMachine(object): - def __init__(self): - self.state = START - self.final = UEMPTY - self.len = 0 - self.pool = UEMPTY - - def clone(self, pool): - new = deepcopy(self) - new.state = WAIT_TAIL - new.pool = pool - return new - - def feed(self, char, map): - node = map[self.pool+char] - - if node.have_child: - if node.is_tail: - if node.is_original: - cond = UNMATCHED_SWITCH - else: - cond = MATCHED_SWITCH - else: - cond = CONNECTOR - else: - if node.is_tail: - cond = TAIL - else: - cond = ERROR - - new = None - if cond == ERROR: - self.state = FAIL - elif cond == TAIL: - if self.state == WAIT_TAIL and node.is_original_long_word(): - self.state = FAIL - else: - self.final += node.to_word - self.len += 1 - self.pool = UEMPTY - self.state = END - elif self.state == START or self.state == WAIT_TAIL: - if cond == MATCHED_SWITCH: - new = self.clone(node.from_word) - self.final += node.to_word - self.len += 1 - self.state = END - self.pool = UEMPTY - elif cond == UNMATCHED_SWITCH or cond == CONNECTOR: - if self.state == START: - new = self.clone(node.from_word) - self.final += node.to_word - self.len += 1 - self.state = END - else: - if node.is_follow(self.pool): - self.state = FAIL - else: - self.pool = node.from_word - elif self.state == END: - # END is a new START - self.state = START - new = self.feed(char, map) - elif self.state == FAIL: - raise StatesMachineException('Translate States Machine ' - 'have error with input data %s' % node) - return new - - def __len__(self): - return self.len + 1 - - def __str__(self): - return '' % ( - id(self), self.pool, self.state, self.final) - __repr__ = __str__ - -class Converter(object): - def __init__(self, to_encoding): - self.to_encoding = to_encoding - self.map = MAPS[to_encoding] - self.start() - - def feed(self, char): - branches = [] - for fsm in self.machines: - new = fsm.feed(char, self.map) - if new: - branches.append(new) - if branches: - self.machines.extend(branches) - self.machines = [fsm for fsm in self.machines if fsm.state != FAIL] - all_ok = True - for fsm in self.machines: - if fsm.state != END: - all_ok = False - if all_ok: - self._clean() - return self.get_result() - - def _clean(self): - if len(self.machines): - self.machines.sort(key=lambda x: len(x)) - # self.machines.sort(cmp=lambda x,y: cmp(len(x), len(y))) - self.final += self.machines[0].final - self.machines = [StatesMachine()] - - def start(self): - self.machines = [StatesMachine()] - self.final = UEMPTY - - def end(self): - self.machines = [fsm for fsm in self.machines - if fsm.state == FAIL or fsm.state == END] - self._clean() - - def convert(self, string): - self.start() - for char in string: - self.feed(char) - self.end() - return self.get_result() - - def get_result(self): - return self.final - - -def registery(name, mapping): - global MAPS - MAPS[name] = ConvertMap(name, mapping) - -registery('zh-hant', zh2Hant) -registery('zh-hans', zh2Hans) -del zh2Hant, zh2Hans - - -def run(): - import sys - from optparse import OptionParser - parser = OptionParser() - parser.add_option('-e', type='string', dest='encoding', - help='encoding') - parser.add_option('-f', type='string', dest='file_in', - help='input file (- for stdin)') - parser.add_option('-t', type='string', dest='file_out', - help='output file') - (options, args) = parser.parse_args() - if not options.encoding: - parser.error('encoding must be set') - if options.file_in: - if options.file_in == '-': - file_in = sys.stdin - else: - file_in = open(options.file_in) - else: - file_in = sys.stdin - if options.file_out: - if options.file_out == '-': - file_out = sys.stdout - else: - file_out = open(options.file_out, 'wb') - else: - file_out = sys.stdout - - c = Converter(options.encoding) - for line in file_in: - # print >> file_out, c.convert(line.rstrip('\n').decode( - file_out.write(c.convert(line.rstrip('\n').decode( - 'utf8')).encode('utf8')) - - -if __name__ == '__main__': - run() - diff --git a/util/user_agent.py b/util/user_agent.py deleted file mode 100644 index 8cf7d94f..00000000 --- a/util/user_agent.py +++ /dev/null @@ -1,47 +0,0 @@ -import random - - -user_agent = [ - "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50", - "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50", - "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0", - "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; InfoPath.3; rv:11.0) like Gecko", - "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)", - "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)", - "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)", - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1", - "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1", - "Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.8.131 Version/11.11", - "Opera/9.80 (Windows NT 6.1; U; en) Presto/2.8.131 Version/11.11", - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; TencentTraveler 4.0)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; The World)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SE 2.X MetaSr 1.0; SE 2.X MetaSr 1.0; .NET CLR 2.0.50727; SE 2.X MetaSr 1.0)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360SE)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Avant Browser)", - "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)", - "Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5", - "Mozilla/5.0 (iPod; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5", - "Mozilla/5.0 (iPad; U; CPU OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5", - "Mozilla/5.0 (Linux; U; Android 2.3.7; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1", - "MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1", - "Opera/9.80 (Android 2.3.4; Linux; Opera Mobi/build-1107180945; U; en-GB) Presto/2.8.149 Version/11.10", - "Mozilla/5.0 (Linux; U; Android 3.0; en-us; Xoom Build/HRI39) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13", - "Mozilla/5.0 (BlackBerry; U; BlackBerry 9800; en) AppleWebKit/534.1+ (KHTML, like Gecko) Version/6.0.0.337 Mobile Safari/534.1+", - "Mozilla/5.0 (hp-tablet; Linux; hpwOS/3.0.0; U; en-US) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/233.70 Safari/534.6 TouchPad/1.0", - "Mozilla/5.0 (SymbianOS/9.4; Series60/5.0 NokiaN97-1/20.0.019; Profile/MIDP-2.1 Configuration/CLDC-1.1) AppleWebKit/525 (KHTML, like Gecko) BrowserNG/7.1.18124", - "Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; HTC; Titan)", - "UCWEB7.0.2.37/28/999", - "NOKIA5700/ UCWEB7.0.2.37/28/999", - "Openwave/ UCWEB7.0.2.37/28/999", - "Mozilla/4.0 (compatible; MSIE 6.0; ) Opera/UCWEB7.0.2.37/28/999", - # iPhone 6: - "Mozilla/6.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/8.0 Mobile/10A5376e Safari/8536.25" -] - - -def get_user_agent(): - return {'User-Agent': random.choice(user_agent)} diff --git a/util/utils.py b/util/utils.py deleted file mode 100644 index 491762f3..00000000 --- a/util/utils.py +++ /dev/null @@ -1,263 +0,0 @@ -import time -from datetime import datetime, timedelta -from collections import defaultdict -from nonebot import require -import nonebot -import json -import pytz -from configs.path_config import TXT_PATH -from configs.config import system_proxy -import pypinyin - - -scheduler = require('nonebot_plugin_apscheduler').scheduler - - -# 次数检测 -class CountLimiter: - def __init__(self, max): - self.count = defaultdict(int) - self.max = max - - def add(self, key): - self.count[key] += 1 - - def check(self, key) -> bool: - if self.count[key] >= self.max: - self.count[key] = 0 - return True - return False - - -# 用户正在执行此命令 -class UserExistLimiter: - def __init__(self): - self.mbool = defaultdict(bool) - self.time = time.time() - - def set_True(self, key): - self.time = time.time() - self.mbool[key] = True - - def set_False(self, key): - self.mbool[key] = False - - def check(self, key): - if time.time() - self.time > 30: - self.set_False(key) - return False - return self.mbool[key] - - -# 命令cd -class FreqLimiter: - def __init__(self, default_cd_seconds): - self.next_time = defaultdict(float) - self.default_cd = default_cd_seconds - - def check(self, key) -> bool: - return time.time() >= self.next_time[key] - - def start_cd(self, key, cd_time=0): - self.next_time[key] = time.time() + (cd_time if cd_time > 0 else self.default_cd) - - def left_time(self, key) -> float: - return self.next_time[key] - time.time() - - -static_flmt = FreqLimiter(15) - - -# 恶意触发命令检测 -class BanCheckLimiter: - def __init__(self, default_check_time: float = 5, default_count: int = 4): - self.mint = defaultdict(int) - self.mtime = defaultdict(float) - self.default_check_time = default_check_time - self.default_count = default_count - - def add(self, key): - if self.mint[key] == 1: - self.mtime[key] = time.time() - self.mint[key] += 1 - - def check(self, key) -> bool: - # print(self.mint[key]) - # print(time.time() - self.mtime[key]) - if time.time() - self.mtime[key] > self.default_check_time: - self.mtime[key] = time.time() - self.mint[key] = 0 - return False - if self.mint[key] >= self.default_count and time.time() - self.mtime[key] < self.default_check_time: - self.mtime[key] = time.time() - self.mint[key] = 0 - return True - return False - - -# 每日次数 -class DailyNumberLimiter: - tz = pytz.timezone('Asia/Shanghai') - - def __init__(self, max_num): - self.today = -1 - self.count = defaultdict(int) - self.max = max_num - - def check(self, key) -> bool: - now = datetime.now(self.tz) - day = (now - timedelta(hours=5)).day - if day != self.today: - self.today = day - self.count.clear() - return bool(self.count[key] < self.max) - - def get_num(self, key): - return self.count[key] - - def increase(self, key, num=1): - self.count[key] += num - - def reset(self, key): - self.count[key] = 0 - - -def is_number(s) -> bool: - try: - float(s) - return True - except ValueError: - pass - try: - import unicodedata - unicodedata.numeric(s) - return True - except (TypeError, ValueError): - pass - return False - - -def get_lines(path: str, start: int = 0, end: int = 0) -> list: - l = [] - with open(path, 'r', errors='ignore', encoding="UTF-8") as f: - lines = f.readlines() - for line in lines: - if line != "\n" and line != "": - if end == 0: - l.append(line[start:]) - else: - l.append(line[start: end]) - return l - - -# 获取bot -def get_bot(): - return list(nonebot.get_bots().values())[0] - - -def get_message_at(data: str) -> list: - qq_list = [] - data = json.loads(data) - try: - for msg in data['message']: - if msg['type'] == 'at': - qq_list.append(int(msg['data']['qq'])) - return qq_list - except Exception: - return [] - - -def get_message_imgs(data: str) -> list: - img_list = [] - data = json.loads(data) - try: - for msg in data['message']: - if msg['type'] == 'image': - img_list.append(msg['data']['url']) - return img_list - except Exception: - return [] - - -def get_message_text(data: str) -> str: - data = json.loads(data) - result = '' - try: - for msg in data['message']: - if msg['type'] == 'text': - result += msg['data']['text'].strip() + ' ' - return result.strip() - except Exception: - return '' - - -def get_message_type(data: str) -> str: - return json.loads(data)['message_type'] - - -def get_message_record(data: str) -> str: - data = json.loads(data) - try: - for msg in data['message']: - if msg['type'] == 'record': - return msg['data']['url'] - return '' - except Exception: - return '' - - -def get_message_json(data: str) -> dict: - data = json.loads(data) - try: - for msg in data['message']: - if msg['type'] == 'json': - return msg['data'] - return {} - except Exception: - return {} - - -def add_to_16(value): - while len(value) % 16 != 0: - value += '\0' - return str.encode(value) - - -# 获取文本加密后的cookie -def get_cookie_text(cookie_name: str) -> str: - with open(TXT_PATH + "cookie/" + cookie_name + ".txt", 'r') as f: - return f.read() - - -# 获取本地http代理 -def get_local_proxy(): - # from urllib.request import getproxies - # import platform - # proxy = getproxies()['http'] - # if platform.system() != 'Windows': - # proxy = 'http://' + proxy - return system_proxy if system_proxy else None - - -# 判断是否为中文 -def is_Chinese(word): - for ch in word: - if '\u4e00' <= ch <= '\u9fff': - return True - return False - - -def user_avatar(qq): - return f'http://q1.qlogo.cn/g?b=qq&nk={qq}&s=160' - - -def group_avatar(group_id): - return f'http://p.qlogo.cn/gh/{group_id}/{group_id}/640/' - - -def cn2py(word) -> str: - temp = "" - for i in pypinyin.pinyin(word, style=pypinyin.NORMAL): - temp += ''.join(i) - return temp - diff --git a/util/zh_wiki.py b/util/zh_wiki.py deleted file mode 100644 index 4f5720f7..00000000 --- a/util/zh_wiki.py +++ /dev/null @@ -1,8275 +0,0 @@ -# -*- coding: utf-8 -*- -# copy fom wikipedia - -zh2Hant = { -'呆': '獃', -"打印机": "印表機", -'帮助文件': '說明檔案', -"画": "畫", -"龙": "竜", -"板": "板", -"表": "表", -"才": "才", -"丑": "醜", -"出": "出", -"淀": "澱", -"冬": "冬", -"范": "範", -"丰": "豐", -"刮": "刮", -"后": "後", -"胡": "胡", -"回": "回", -"伙": "夥", -"姜": "薑", -"借": "借", -"克": "克", -"困": "困", -"漓": "漓", -"里": "里", -"帘": "簾", -"霉": "霉", -"面": "面", -"蔑": "蔑", -"千": "千", -"秋": "秋", -"松": "松", -"咸": "咸", -"向": "向", -"余": "餘", -"郁": "鬱", -"御": "御", -"愿": "願", -"云": "雲", -"芸": "芸", -"沄": "沄", -"致": "致", -"制": "制", -"朱": "朱", -"筑": "築", -"准": "準", -"厂": "廠", -"广": "廣", -"辟": "闢", -"别": "別", -"卜": "卜", -"沈": "沈", -"冲": "沖", -"种": "種", -"虫": "蟲", -"担": "擔", -"党": "黨", -"斗": "鬥", -"儿": "兒", -"干": "乾", -"谷": "谷", -"柜": "櫃", -"合": "合", -"划": "劃", -"坏": "壞", -"几": "幾", -"系": "系", -"家": "家", -"价": "價", -"据": "據", -"卷": "捲", -"适": "適", -"蜡": "蠟", -"腊": "臘", -"了": "了", -"累": "累", -"么": "麽", -"蒙": "蒙", -"万": "萬", -"宁": "寧", -"朴": "樸", -"苹": "蘋", -"仆": "僕", -"曲": "曲", -"确": "確", -"舍": "舍", -"胜": "勝", -"术": "術", -"台": "台", -"体": "體", -"涂": "塗", -"叶": "葉", -"吁": "吁", -"旋": "旋", -"佣": "傭", -"与": "與", -"折": "折", -"征": "徵", -"症": "症", -"恶": "惡", -"发": "發", -"复": "復", -"汇": "匯", -"获": "獲", -"饥": "飢", -"尽": "盡", -"历": "歷", -"卤": "滷", -"弥": "彌", -"签": "簽", -"纤": "纖", -"苏": "蘇", -"坛": "壇", -"团": "團", -"须": "須", -"脏": "臟", -"只": "只", -"钟": "鐘", -"药": "藥", -"同": "同", -"志": "志", -"杯": "杯", -"岳": "岳", -"布": "布", -"当": "當", -"吊": "弔", -"仇": "仇", -"蕴": "蘊", -"线": "線", -"为": "為", -"产": "產", -"众": "眾", -"伪": "偽", -"凫": "鳧", -"厕": "廁", -"启": "啟", -"墙": "牆", -"壳": "殼", -"奖": "獎", -"妫": "媯", -"并": "並", -"录": "錄", -"悫": "愨", -"极": "極", -"沩": "溈", -"瘘": "瘺", -"硷": "鹼", -"竖": "豎", -"绝": "絕", -"绣": "繡", -"绦": "絛", -"绱": "緔", -"绷": "綳", -"绿": "綠", -"缰": "韁", -"苧": "苎", -"莼": "蒓", -"说": "說", -"谣": "謠", -"谫": "譾", -"赃": "贓", -"赍": "齎", -"赝": "贗", -"酝": "醞", -"采": "採", -"钩": "鉤", -"钵": "缽", -"锈": "銹", -"锐": "銳", -"锨": "杴", -"镌": "鐫", -"镢": "钁", -"阅": "閱", -"颓": "頹", -"颜": "顏", -"骂": "罵", -"鲇": "鯰", -"鲞": "鯗", -"鳄": "鱷", -"鸡": "雞", -"鹚": "鶿", -"荡": "盪", -"锤": "錘", -"㟆": "㠏", -"㛟": "𡞵", -"专": "專", -"业": "業", -"丛": "叢", -"东": "東", -"丝": "絲", -"丢": "丟", -"两": "兩", -"严": "嚴", -"丧": "喪", -"个": "個", -"临": "臨", -"丽": "麗", -"举": "舉", -"义": "義", -"乌": "烏", -"乐": "樂", -"乔": "喬", -"习": "習", -"乡": "鄉", -"书": "書", -"买": "買", -"乱": "亂", -"争": "爭", -"于": "於", -"亏": "虧", -"亚": "亞", -"亩": "畝", -"亲": "親", -"亵": "褻", -"亸": "嚲", -"亿": "億", -"仅": "僅", -"从": "從", -"仑": "侖", -"仓": "倉", -"仪": "儀", -"们": "們", -"优": "優", -"会": "會", -"伛": "傴", -"伞": "傘", -"伟": "偉", -"传": "傳", -"伣": "俔", -"伤": "傷", -"伥": "倀", -"伦": "倫", -"伧": "傖", -"伫": "佇", -"佥": "僉", -"侠": "俠", -"侣": "侶", -"侥": "僥", -"侦": "偵", -"侧": "側", -"侨": "僑", -"侩": "儈", -"侪": "儕", -"侬": "儂", -"俣": "俁", -"俦": "儔", -"俨": "儼", -"俩": "倆", -"俪": "儷", -"俫": "倈", -"俭": "儉", -"债": "債", -"倾": "傾", -"偬": "傯", -"偻": "僂", -"偾": "僨", -"偿": "償", -"傥": "儻", -"傧": "儐", -"储": "儲", -"傩": "儺", -"㑩": "儸", -"兑": "兌", -"兖": "兗", -"兰": "蘭", -"关": "關", -"兴": "興", -"兹": "茲", -"养": "養", -"兽": "獸", -"冁": "囅", -"内": "內", -"冈": "岡", -"册": "冊", -"写": "寫", -"军": "軍", -"农": "農", -"冯": "馮", -"决": "決", -"况": "況", -"冻": "凍", -"净": "凈", -"凉": "涼", -"减": "減", -"凑": "湊", -"凛": "凜", -"凤": "鳳", -"凭": "憑", -"凯": "凱", -"击": "擊", -"凿": "鑿", -"刍": "芻", -"刘": "劉", -"则": "則", -"刚": "剛", -"创": "創", -"删": "刪", -"刬": "剗", -"刭": "剄", -"刹": "剎", -"刽": "劊", -"刿": "劌", -"剀": "剴", -"剂": "劑", -"剐": "剮", -"剑": "劍", -"剥": "剝", -"剧": "劇", -"㓥": "劏", -"㔉": "劚", -"劝": "勸", -"办": "辦", -"务": "務", -"劢": "勱", -"动": "動", -"励": "勵", -"劲": "勁", -"劳": "勞", -"势": "勢", -"勋": "勛", -"勚": "勩", -"匀": "勻", -"匦": "匭", -"匮": "匱", -"区": "區", -"医": "醫", -"华": "華", -"协": "協", -"单": "單", -"卖": "賣", -"卢": "盧", -"卫": "衛", -"却": "卻", -"厅": "廳", -"厉": "厲", -"压": "壓", -"厌": "厭", -"厍": "厙", -"厐": "龎", -"厘": "釐", -"厢": "廂", -"厣": "厴", -"厦": "廈", -"厨": "廚", -"厩": "廄", -"厮": "廝", -"县": "縣", -"叁": "叄", -"参": "參", -"双": "雙", -"变": "變", -"叙": "敘", -"叠": "疊", -"号": "號", -"叹": "嘆", -"叽": "嘰", -"吓": "嚇", -"吕": "呂", -"吗": "嗎", -"吣": "唚", -"吨": "噸", -"听": "聽", -"吴": "吳", -"呐": "吶", -"呒": "嘸", -"呓": "囈", -"呕": "嘔", -"呖": "嚦", -"呗": "唄", -"员": "員", -"呙": "咼", -"呛": "嗆", -"呜": "嗚", -"咏": "詠", -"咙": "嚨", -"咛": "嚀", -"咝": "噝", -"响": "響", -"哑": "啞", -"哒": "噠", -"哓": "嘵", -"哔": "嗶", -"哕": "噦", -"哗": "嘩", -"哙": "噲", -"哜": "嚌", -"哝": "噥", -"哟": "喲", -"唛": "嘜", -"唝": "嗊", -"唠": "嘮", -"唡": "啢", -"唢": "嗩", -"唤": "喚", -"啧": "嘖", -"啬": "嗇", -"啭": "囀", -"啮": "嚙", -"啴": "嘽", -"啸": "嘯", -"㖞": "喎", -"喷": "噴", -"喽": "嘍", -"喾": "嚳", -"嗫": "囁", -"嗳": "噯", -"嘘": "噓", -"嘤": "嚶", -"嘱": "囑", -"㖊": "噚", -"噜": "嚕", -"嚣": "囂", -"园": "園", -"囱": "囪", -"围": "圍", -"囵": "圇", -"国": "國", -"图": "圖", -"圆": "圓", -"圣": "聖", -"圹": "壙", -"场": "場", -"坂": "阪", -"块": "塊", -"坚": "堅", -"坜": "壢", -"坝": "壩", -"坞": "塢", -"坟": "墳", -"坠": "墜", -"垄": "壟", -"垅": "壠", -"垆": "壚", -"垒": "壘", -"垦": "墾", -"垩": "堊", -"垫": "墊", -"垭": "埡", -"垱": "壋", -"垲": "塏", -"垴": "堖", -"埘": "塒", -"埙": "塤", -"埚": "堝", -"埯": "垵", -"堑": "塹", -"堕": "墮", -"𡒄": "壈", -"壮": "壯", -"声": "聲", -"壶": "壺", -"壸": "壼", -"处": "處", -"备": "備", -"够": "夠", -"头": "頭", -"夸": "誇", -"夹": "夾", -"夺": "奪", -"奁": "奩", -"奂": "奐", -"奋": "奮", -"奥": "奧", -"奸": "姦", -"妆": "妝", -"妇": "婦", -"妈": "媽", -"妩": "嫵", -"妪": "嫗", -"姗": "姍", -"姹": "奼", -"娄": "婁", -"娅": "婭", -"娆": "嬈", -"娇": "嬌", -"娈": "孌", -"娱": "娛", -"娲": "媧", -"娴": "嫻", -"婳": "嫿", -"婴": "嬰", -"婵": "嬋", -"婶": "嬸", -"媪": "媼", -"嫒": "嬡", -"嫔": "嬪", -"嫱": "嬙", -"嬷": "嬤", -"孙": "孫", -"学": "學", -"孪": "孿", -"宝": "寶", -"实": "實", -"宠": "寵", -"审": "審", -"宪": "憲", -"宫": "宮", -"宽": "寬", -"宾": "賓", -"寝": "寢", -"对": "對", -"寻": "尋", -"导": "導", -"寿": "壽", -"将": "將", -"尔": "爾", -"尘": "塵", -"尝": "嘗", -"尧": "堯", -"尴": "尷", -"尸": "屍", -"层": "層", -"屃": "屓", -"屉": "屜", -"届": "屆", -"属": "屬", -"屡": "屢", -"屦": "屨", -"屿": "嶼", -"岁": "歲", -"岂": "豈", -"岖": "嶇", -"岗": "崗", -"岘": "峴", -"岙": "嶴", -"岚": "嵐", -"岛": "島", -"岭": "嶺", -"岽": "崬", -"岿": "巋", -"峄": "嶧", -"峡": "峽", -"峣": "嶢", -"峤": "嶠", -"峥": "崢", -"峦": "巒", -"崂": "嶗", -"崃": "崍", -"崄": "嶮", -"崭": "嶄", -"嵘": "嶸", -"嵚": "嶔", -"嵝": "嶁", -"巅": "巔", -"巩": "鞏", -"巯": "巰", -"币": "幣", -"帅": "帥", -"师": "師", -"帏": "幃", -"帐": "帳", -"帜": "幟", -"带": "帶", -"帧": "幀", -"帮": "幫", -"帱": "幬", -"帻": "幘", -"帼": "幗", -"幂": "冪", -"庄": "莊", -"庆": "慶", -"庐": "廬", -"庑": "廡", -"库": "庫", -"应": "應", -"庙": "廟", -"庞": "龐", -"废": "廢", -"廪": "廩", -"开": "開", -"异": "異", -"弃": "棄", -"弑": "弒", -"张": "張", -"弪": "弳", -"弯": "彎", -"弹": "彈", -"强": "強", -"归": "歸", -"彝": "彞", -"彦": "彥", -"彻": "徹", -"径": "徑", -"徕": "徠", -"忆": "憶", -"忏": "懺", -"忧": "憂", -"忾": "愾", -"怀": "懷", -"态": "態", -"怂": "慫", -"怃": "憮", -"怄": "慪", -"怅": "悵", -"怆": "愴", -"怜": "憐", -"总": "總", -"怼": "懟", -"怿": "懌", -"恋": "戀", -"恒": "恆", -"恳": "懇", -"恸": "慟", -"恹": "懨", -"恺": "愷", -"恻": "惻", -"恼": "惱", -"恽": "惲", -"悦": "悅", -"悬": "懸", -"悭": "慳", -"悮": "悞", -"悯": "憫", -"惊": "驚", -"惧": "懼", -"惨": "慘", -"惩": "懲", -"惫": "憊", -"惬": "愜", -"惭": "慚", -"惮": "憚", -"惯": "慣", -"愠": "慍", -"愤": "憤", -"愦": "憒", -"慑": "懾", -"懑": "懣", -"懒": "懶", -"懔": "懍", -"戆": "戇", -"戋": "戔", -"戏": "戲", -"戗": "戧", -"战": "戰", -"戬": "戩", -"戯": "戱", -"户": "戶", -"扑": "撲", -"执": "執", -"扩": "擴", -"扪": "捫", -"扫": "掃", -"扬": "揚", -"扰": "擾", -"抚": "撫", -"抛": "拋", -"抟": "摶", -"抠": "摳", -"抡": "掄", -"抢": "搶", -"护": "護", -"报": "報", -"拟": "擬", -"拢": "攏", -"拣": "揀", -"拥": "擁", -"拦": "攔", -"拧": "擰", -"拨": "撥", -"择": "擇", -"挂": "掛", -"挚": "摯", -"挛": "攣", -"挜": "掗", -"挝": "撾", -"挞": "撻", -"挟": "挾", -"挠": "撓", -"挡": "擋", -"挢": "撟", -"挣": "掙", -"挤": "擠", -"挥": "揮", -"挦": "撏", -"挽": "輓", -"捝": "挩", -"捞": "撈", -"损": "損", -"捡": "撿", -"换": "換", -"捣": "搗", -"掳": "擄", -"掴": "摑", -"掷": "擲", -"掸": "撣", -"掺": "摻", -"掼": "摜", -"揽": "攬", -"揾": "搵", -"揿": "撳", -"搀": "攙", -"搁": "擱", -"搂": "摟", -"搅": "攪", -"携": "攜", -"摄": "攝", -"摅": "攄", -"摆": "擺", -"摇": "搖", -"摈": "擯", -"摊": "攤", -"撄": "攖", -"撑": "撐", -"㧑": "撝", -"撵": "攆", -"撷": "擷", -"撸": "擼", -"撺": "攛", -"㧟": "擓", -"擞": "擻", -"攒": "攢", -"敌": "敵", -"敛": "斂", -"数": "數", -"斋": "齋", -"斓": "斕", -"斩": "斬", -"断": "斷", -"无": "無", -"旧": "舊", -"时": "時", -"旷": "曠", -"旸": "暘", -"昙": "曇", -"昼": "晝", -"昽": "曨", -"显": "顯", -"晋": "晉", -"晒": "曬", -"晓": "曉", -"晔": "曄", -"晕": "暈", -"晖": "暉", -"暂": "暫", -"暧": "曖", -"机": "機", -"杀": "殺", -"杂": "雜", -"权": "權", -"杆": "桿", -"条": "條", -"来": "來", -"杨": "楊", -"杩": "榪", -"杰": "傑", -"构": "構", -"枞": "樅", -"枢": "樞", -"枣": "棗", -"枥": "櫪", -"枧": "梘", -"枨": "棖", -"枪": "槍", -"枫": "楓", -"枭": "梟", -"柠": "檸", -"柽": "檉", -"栀": "梔", -"栅": "柵", -"标": "標", -"栈": "棧", -"栉": "櫛", -"栊": "櫳", -"栋": "棟", -"栌": "櫨", -"栎": "櫟", -"栏": "欄", -"树": "樹", -"栖": "棲", -"栗": "慄", -"样": "樣", -"栾": "欒", -"桠": "椏", -"桡": "橈", -"桢": "楨", -"档": "檔", -"桤": "榿", -"桥": "橋", -"桦": "樺", -"桧": "檜", -"桨": "槳", -"桩": "樁", -"梦": "夢", -"梼": "檮", -"梾": "棶", -"梿": "槤", -"检": "檢", -"棁": "梲", -"棂": "欞", -"椁": "槨", -"椟": "櫝", -"椠": "槧", -"椤": "欏", -"椭": "橢", -"楼": "樓", -"榄": "欖", -"榅": "榲", -"榇": "櫬", -"榈": "櫚", -"榉": "櫸", -"槚": "檟", -"槛": "檻", -"槟": "檳", -"槠": "櫧", -"横": "橫", -"樯": "檣", -"樱": "櫻", -"橥": "櫫", -"橱": "櫥", -"橹": "櫓", -"橼": "櫞", -"檩": "檁", -"欢": "歡", -"欤": "歟", -"欧": "歐", -"歼": "殲", -"殁": "歿", -"殇": "殤", -"残": "殘", -"殒": "殞", -"殓": "殮", -"殚": "殫", -"殡": "殯", -"㱮": "殨", -"㱩": "殰", -"殴": "毆", -"毁": "毀", -"毂": "轂", -"毕": "畢", -"毙": "斃", -"毡": "氈", -"毵": "毿", -"氇": "氌", -"气": "氣", -"氢": "氫", -"氩": "氬", -"氲": "氳", -"汉": "漢", -"汤": "湯", -"汹": "洶", -"沟": "溝", -"没": "沒", -"沣": "灃", -"沤": "漚", -"沥": "瀝", -"沦": "淪", -"沧": "滄", -"沪": "滬", -"泞": "濘", -"注": "註", -"泪": "淚", -"泶": "澩", -"泷": "瀧", -"泸": "瀘", -"泺": "濼", -"泻": "瀉", -"泼": "潑", -"泽": "澤", -"泾": "涇", -"洁": "潔", -"洒": "灑", -"洼": "窪", -"浃": "浹", -"浅": "淺", -"浆": "漿", -"浇": "澆", -"浈": "湞", -"浊": "濁", -"测": "測", -"浍": "澮", -"济": "濟", -"浏": "瀏", -"浐": "滻", -"浑": "渾", -"浒": "滸", -"浓": "濃", -"浔": "潯", -"涛": "濤", -"涝": "澇", -"涞": "淶", -"涟": "漣", -"涠": "潿", -"涡": "渦", -"涣": "渙", -"涤": "滌", -"润": "潤", -"涧": "澗", -"涨": "漲", -"涩": "澀", -"渊": "淵", -"渌": "淥", -"渍": "漬", -"渎": "瀆", -"渐": "漸", -"渑": "澠", -"渔": "漁", -"渖": "瀋", -"渗": "滲", -"温": "溫", -"湾": "灣", -"湿": "濕", -"溃": "潰", -"溅": "濺", -"溆": "漵", -"滗": "潷", -"滚": "滾", -"滞": "滯", -"滟": "灧", -"滠": "灄", -"满": "滿", -"滢": "瀅", -"滤": "濾", -"滥": "濫", -"滦": "灤", -"滨": "濱", -"滩": "灘", -"滪": "澦", -"漤": "灠", -"潆": "瀠", -"潇": "瀟", -"潋": "瀲", -"潍": "濰", -"潜": "潛", -"潴": "瀦", -"澜": "瀾", -"濑": "瀨", -"濒": "瀕", -"㲿": "瀇", -"灏": "灝", -"灭": "滅", -"灯": "燈", -"灵": "靈", -"灶": "竈", -"灾": "災", -"灿": "燦", -"炀": "煬", -"炉": "爐", -"炖": "燉", -"炜": "煒", -"炝": "熗", -"点": "點", -"炼": "煉", -"炽": "熾", -"烁": "爍", -"烂": "爛", -"烃": "烴", -"烛": "燭", -"烟": "煙", -"烦": "煩", -"烧": "燒", -"烨": "燁", -"烩": "燴", -"烫": "燙", -"烬": "燼", -"热": "熱", -"焕": "煥", -"焖": "燜", -"焘": "燾", -"㶽": "煱", -"煴": "熅", -"㶶": "燶", -"爱": "愛", -"爷": "爺", -"牍": "牘", -"牦": "氂", -"牵": "牽", -"牺": "犧", -"犊": "犢", -"状": "狀", -"犷": "獷", -"犸": "獁", -"犹": "猶", -"狈": "狽", -"狝": "獮", -"狞": "獰", -"独": "獨", -"狭": "狹", -"狮": "獅", -"狯": "獪", -"狰": "猙", -"狱": "獄", -"狲": "猻", -"猃": "獫", -"猎": "獵", -"猕": "獼", -"猡": "玀", -"猪": "豬", -"猫": "貓", -"猬": "蝟", -"献": "獻", -"獭": "獺", -"㺍": "獱", -"玑": "璣", -"玚": "瑒", -"玛": "瑪", -"玮": "瑋", -"环": "環", -"现": "現", -"玱": "瑲", -"玺": "璽", -"珐": "琺", -"珑": "瓏", -"珰": "璫", -"珲": "琿", -"琏": "璉", -"琐": "瑣", -"琼": "瓊", -"瑶": "瑤", -"瑷": "璦", -"璎": "瓔", -"瓒": "瓚", -"瓯": "甌", -"电": "電", -"画": "畫", -"畅": "暢", -"畴": "疇", -"疖": "癤", -"疗": "療", -"疟": "瘧", -"疠": "癘", -"疡": "瘍", -"疬": "癧", -"疭": "瘲", -"疮": "瘡", -"疯": "瘋", -"疱": "皰", -"疴": "痾", -"痈": "癰", -"痉": "痙", -"痒": "癢", -"痖": "瘂", -"痨": "癆", -"痪": "瘓", -"痫": "癇", -"瘅": "癉", -"瘆": "瘮", -"瘗": "瘞", -"瘪": "癟", -"瘫": "癱", -"瘾": "癮", -"瘿": "癭", -"癞": "癩", -"癣": "癬", -"癫": "癲", -"皑": "皚", -"皱": "皺", -"皲": "皸", -"盏": "盞", -"盐": "鹽", -"监": "監", -"盖": "蓋", -"盗": "盜", -"盘": "盤", -"眍": "瞘", -"眦": "眥", -"眬": "矓", -"睁": "睜", -"睐": "睞", -"睑": "瞼", -"瞆": "瞶", -"瞒": "瞞", -"䁖": "瞜", -"瞩": "矚", -"矫": "矯", -"矶": "磯", -"矾": "礬", -"矿": "礦", -"砀": "碭", -"码": "碼", -"砖": "磚", -"砗": "硨", -"砚": "硯", -"砜": "碸", -"砺": "礪", -"砻": "礱", -"砾": "礫", -"础": "礎", -"硁": "硜", -"硕": "碩", -"硖": "硤", -"硗": "磽", -"硙": "磑", -"碍": "礙", -"碛": "磧", -"碜": "磣", -"碱": "鹼", -"礼": "禮", -"祃": "禡", -"祎": "禕", -"祢": "禰", -"祯": "禎", -"祷": "禱", -"祸": "禍", -"禀": "稟", -"禄": "祿", -"禅": "禪", -"离": "離", -"秃": "禿", -"秆": "稈", -"积": "積", -"称": "稱", -"秽": "穢", -"秾": "穠", -"稆": "穭", -"税": "稅", -"䅉": "稏", -"稣": "穌", -"稳": "穩", -"穑": "穡", -"穷": "窮", -"窃": "竊", -"窍": "竅", -"窎": "窵", -"窑": "窯", -"窜": "竄", -"窝": "窩", -"窥": "窺", -"窦": "竇", -"窭": "窶", -"竞": "競", -"笃": "篤", -"笋": "筍", -"笔": "筆", -"笕": "筧", -"笺": "箋", -"笼": "籠", -"笾": "籩", -"筚": "篳", -"筛": "篩", -"筜": "簹", -"筝": "箏", -"䇲": "筴", -"筹": "籌", -"筼": "篔", -"简": "簡", -"箓": "籙", -"箦": "簀", -"箧": "篋", -"箨": "籜", -"箩": "籮", -"箪": "簞", -"箫": "簫", -"篑": "簣", -"篓": "簍", -"篮": "籃", -"篱": "籬", -"簖": "籪", -"籁": "籟", -"籴": "糴", -"类": "類", -"籼": "秈", -"粜": "糶", -"粝": "糲", -"粤": "粵", -"粪": "糞", -"粮": "糧", -"糁": "糝", -"糇": "餱", -"紧": "緊", -"䌷": "紬", -"䌹": "絅", -"絷": "縶", -"䌼": "綐", -"䌽": "綵", -"䌸": "縳", -"䍁": "繸", -"䍀": "繿", -"纟": "糹", -"纠": "糾", -"纡": "紆", -"红": "紅", -"纣": "紂", -"纥": "紇", -"约": "約", -"级": "級", -"纨": "紈", -"纩": "纊", -"纪": "紀", -"纫": "紉", -"纬": "緯", -"纭": "紜", -"纮": "紘", -"纯": "純", -"纰": "紕", -"纱": "紗", -"纲": "綱", -"纳": "納", -"纴": "紝", -"纵": "縱", -"纶": "綸", -"纷": "紛", -"纸": "紙", -"纹": "紋", -"纺": "紡", -"纻": "紵", -"纼": "紖", -"纽": "紐", -"纾": "紓", -"绀": "紺", -"绁": "紲", -"绂": "紱", -"练": "練", -"组": "組", -"绅": "紳", -"细": "細", -"织": "織", -"终": "終", -"绉": "縐", -"绊": "絆", -"绋": "紼", -"绌": "絀", -"绍": "紹", -"绎": "繹", -"经": "經", -"绐": "紿", -"绑": "綁", -"绒": "絨", -"结": "結", -"绔": "絝", -"绕": "繞", -"绖": "絰", -"绗": "絎", -"绘": "繪", -"给": "給", -"绚": "絢", -"绛": "絳", -"络": "絡", -"绞": "絞", -"统": "統", -"绠": "綆", -"绡": "綃", -"绢": "絹", -"绤": "綌", -"绥": "綏", -"继": "繼", -"绨": "綈", -"绩": "績", -"绪": "緒", -"绫": "綾", -"绬": "緓", -"续": "續", -"绮": "綺", -"绯": "緋", -"绰": "綽", -"绲": "緄", -"绳": "繩", -"维": "維", -"绵": "綿", -"绶": "綬", -"绸": "綢", -"绹": "綯", -"绺": "綹", -"绻": "綣", -"综": "綜", -"绽": "綻", -"绾": "綰", -"缀": "綴", -"缁": "緇", -"缂": "緙", -"缃": "緗", -"缄": "緘", -"缅": "緬", -"缆": "纜", -"缇": "緹", -"缈": "緲", -"缉": "緝", -"缊": "縕", -"缋": "繢", -"缌": "緦", -"缍": "綞", -"缎": "緞", -"缏": "緶", -"缑": "緱", -"缒": "縋", -"缓": "緩", -"缔": "締", -"缕": "縷", -"编": "編", -"缗": "緡", -"缘": "緣", -"缙": "縉", -"缚": "縛", -"缛": "縟", -"缜": "縝", -"缝": "縫", -"缞": "縗", -"缟": "縞", -"缠": "纏", -"缡": "縭", -"缢": "縊", -"缣": "縑", -"缤": "繽", -"缥": "縹", -"缦": "縵", -"缧": "縲", -"缨": "纓", -"缩": "縮", -"缪": "繆", -"缫": "繅", -"缬": "纈", -"缭": "繚", -"缮": "繕", -"缯": "繒", -"缱": "繾", -"缲": "繰", -"缳": "繯", -"缴": "繳", -"缵": "纘", -"罂": "罌", -"网": "網", -"罗": "羅", -"罚": "罰", -"罢": "罷", -"罴": "羆", -"羁": "羈", -"羟": "羥", -"翘": "翹", -"耢": "耮", -"耧": "耬", -"耸": "聳", -"耻": "恥", -"聂": "聶", -"聋": "聾", -"职": "職", -"聍": "聹", -"联": "聯", -"聩": "聵", -"聪": "聰", -"肃": "肅", -"肠": "腸", -"肤": "膚", -"肮": "骯", -"肴": "餚", -"肾": "腎", -"肿": "腫", -"胀": "脹", -"胁": "脅", -"胆": "膽", -"胧": "朧", -"胨": "腖", -"胪": "臚", -"胫": "脛", -"胶": "膠", -"脉": "脈", -"脍": "膾", -"脐": "臍", -"脑": "腦", -"脓": "膿", -"脔": "臠", -"脚": "腳", -"脱": "脫", -"脶": "腡", -"脸": "臉", -"腭": "齶", -"腻": "膩", -"腼": "靦", -"腽": "膃", -"腾": "騰", -"膑": "臏", -"臜": "臢", -"舆": "輿", -"舣": "艤", -"舰": "艦", -"舱": "艙", -"舻": "艫", -"艰": "艱", -"艳": "艷", -"艺": "藝", -"节": "節", -"芈": "羋", -"芗": "薌", -"芜": "蕪", -"芦": "蘆", -"苁": "蓯", -"苇": "葦", -"苈": "藶", -"苋": "莧", -"苌": "萇", -"苍": "蒼", -"苎": "苧", -"茎": "莖", -"茏": "蘢", -"茑": "蔦", -"茔": "塋", -"茕": "煢", -"茧": "繭", -"荆": "荊", -"荐": "薦", -"荙": "薘", -"荚": "莢", -"荛": "蕘", -"荜": "蓽", -"荞": "蕎", -"荟": "薈", -"荠": "薺", -"荣": "榮", -"荤": "葷", -"荥": "滎", -"荦": "犖", -"荧": "熒", -"荨": "蕁", -"荩": "藎", -"荪": "蓀", -"荫": "蔭", -"荬": "蕒", -"荭": "葒", -"荮": "葤", -"莅": "蒞", -"莱": "萊", -"莲": "蓮", -"莳": "蒔", -"莴": "萵", -"莶": "薟", -"莸": "蕕", -"莹": "瑩", -"莺": "鶯", -"萝": "蘿", -"萤": "螢", -"营": "營", -"萦": "縈", -"萧": "蕭", -"萨": "薩", -"葱": "蔥", -"蒇": "蕆", -"蒉": "蕢", -"蒋": "蔣", -"蒌": "蔞", -"蓝": "藍", -"蓟": "薊", -"蓠": "蘺", -"蓣": "蕷", -"蓥": "鎣", -"蓦": "驀", -"蔂": "虆", -"蔷": "薔", -"蔹": "蘞", -"蔺": "藺", -"蔼": "藹", -"蕰": "薀", -"蕲": "蘄", -"薮": "藪", -"䓕": "薳", -"藓": "蘚", -"蘖": "櫱", -"虏": "虜", -"虑": "慮", -"虚": "虛", -"虬": "虯", -"虮": "蟣", -"虽": "雖", -"虾": "蝦", -"虿": "蠆", -"蚀": "蝕", -"蚁": "蟻", -"蚂": "螞", -"蚕": "蠶", -"蚬": "蜆", -"蛊": "蠱", -"蛎": "蠣", -"蛏": "蟶", -"蛮": "蠻", -"蛰": "蟄", -"蛱": "蛺", -"蛲": "蟯", -"蛳": "螄", -"蛴": "蠐", -"蜕": "蛻", -"蜗": "蝸", -"蝇": "蠅", -"蝈": "蟈", -"蝉": "蟬", -"蝼": "螻", -"蝾": "蠑", -"螀": "螿", -"螨": "蟎", -"䗖": "螮", -"蟏": "蠨", -"衅": "釁", -"衔": "銜", -"补": "補", -"衬": "襯", -"衮": "袞", -"袄": "襖", -"袅": "裊", -"袆": "褘", -"袜": "襪", -"袭": "襲", -"袯": "襏", -"装": "裝", -"裆": "襠", -"裈": "褌", -"裢": "褳", -"裣": "襝", -"裤": "褲", -"裥": "襇", -"褛": "褸", -"褴": "襤", -"䙓": "襬", -"见": "見", -"观": "觀", -"觃": "覎", -"规": "規", -"觅": "覓", -"视": "視", -"觇": "覘", -"览": "覽", -"觉": "覺", -"觊": "覬", -"觋": "覡", -"觌": "覿", -"觍": "覥", -"觎": "覦", -"觏": "覯", -"觐": "覲", -"觑": "覷", -"觞": "觴", -"触": "觸", -"觯": "觶", -"訚": "誾", -"䜣": "訢", -"誉": "譽", -"誊": "謄", -"䜧": "譅", -"讠": "訁", -"计": "計", -"订": "訂", -"讣": "訃", -"认": "認", -"讥": "譏", -"讦": "訐", -"讧": "訌", -"讨": "討", -"让": "讓", -"讪": "訕", -"讫": "訖", -"讬": "託", -"训": "訓", -"议": "議", -"讯": "訊", -"记": "記", -"讱": "訒", -"讲": "講", -"讳": "諱", -"讴": "謳", -"讵": "詎", -"讶": "訝", -"讷": "訥", -"许": "許", -"讹": "訛", -"论": "論", -"讻": "訩", -"讼": "訟", -"讽": "諷", -"设": "設", -"访": "訪", -"诀": "訣", -"证": "證", -"诂": "詁", -"诃": "訶", -"评": "評", -"诅": "詛", -"识": "識", -"诇": "詗", -"诈": "詐", -"诉": "訴", -"诊": "診", -"诋": "詆", -"诌": "謅", -"词": "詞", -"诎": "詘", -"诏": "詔", -"诐": "詖", -"译": "譯", -"诒": "詒", -"诓": "誆", -"诔": "誄", -"试": "試", -"诖": "詿", -"诗": "詩", -"诘": "詰", -"诙": "詼", -"诚": "誠", -"诛": "誅", -"诜": "詵", -"话": "話", -"诞": "誕", -"诟": "詬", -"诠": "詮", -"诡": "詭", -"询": "詢", -"诣": "詣", -"诤": "諍", -"该": "該", -"详": "詳", -"诧": "詫", -"诨": "諢", -"诩": "詡", -"诪": "譸", -"诫": "誡", -"诬": "誣", -"语": "語", -"诮": "誚", -"误": "誤", -"诰": "誥", -"诱": "誘", -"诲": "誨", -"诳": "誑", -"诵": "誦", -"诶": "誒", -"请": "請", -"诸": "諸", -"诹": "諏", -"诺": "諾", -"读": "讀", -"诼": "諑", -"诽": "誹", -"课": "課", -"诿": "諉", -"谀": "諛", -"谁": "誰", -"谂": "諗", -"调": "調", -"谄": "諂", -"谅": "諒", -"谆": "諄", -"谇": "誶", -"谈": "談", -"谊": "誼", -"谋": "謀", -"谌": "諶", -"谍": "諜", -"谎": "謊", -"谏": "諫", -"谐": "諧", -"谑": "謔", -"谒": "謁", -"谓": "謂", -"谔": "諤", -"谕": "諭", -"谖": "諼", -"谗": "讒", -"谘": "諮", -"谙": "諳", -"谚": "諺", -"谛": "諦", -"谜": "謎", -"谝": "諞", -"谞": "諝", -"谟": "謨", -"谠": "讜", -"谡": "謖", -"谢": "謝", -"谤": "謗", -"谥": "謚", -"谦": "謙", -"谧": "謐", -"谨": "謹", -"谩": "謾", -"谪": "謫", -"谬": "謬", -"谭": "譚", -"谮": "譖", -"谯": "譙", -"谰": "讕", -"谱": "譜", -"谲": "譎", -"谳": "讞", -"谴": "譴", -"谵": "譫", -"谶": "讖", -"豮": "豶", -"䝙": "貙", -"䞐": "賰", -"贝": "貝", -"贞": "貞", -"负": "負", -"贠": "貟", -"贡": "貢", -"财": "財", -"责": "責", -"贤": "賢", -"败": "敗", -"账": "賬", -"货": "貨", -"质": "質", -"贩": "販", -"贪": "貪", -"贫": "貧", -"贬": "貶", -"购": "購", -"贮": "貯", -"贯": "貫", -"贰": "貳", -"贱": "賤", -"贲": "賁", -"贳": "貰", -"贴": "貼", -"贵": "貴", -"贶": "貺", -"贷": "貸", -"贸": "貿", -"费": "費", -"贺": "賀", -"贻": "貽", -"贼": "賊", -"贽": "贄", -"贾": "賈", -"贿": "賄", -"赀": "貲", -"赁": "賃", -"赂": "賂", -"资": "資", -"赅": "賅", -"赆": "贐", -"赇": "賕", -"赈": "賑", -"赉": "賚", -"赊": "賒", -"赋": "賦", -"赌": "賭", -"赎": "贖", -"赏": "賞", -"赐": "賜", -"赑": "贔", -"赒": "賙", -"赓": "賡", -"赔": "賠", -"赕": "賧", -"赖": "賴", -"赗": "賵", -"赘": "贅", -"赙": "賻", -"赚": "賺", -"赛": "賽", -"赜": "賾", -"赞": "贊", -"赟": "贇", -"赠": "贈", -"赡": "贍", -"赢": "贏", -"赣": "贛", -"赪": "赬", -"赵": "趙", -"赶": "趕", -"趋": "趨", -"趱": "趲", -"趸": "躉", -"跃": "躍", -"跄": "蹌", -"跞": "躒", -"践": "踐", -"跶": "躂", -"跷": "蹺", -"跸": "蹕", -"跹": "躚", -"跻": "躋", -"踊": "踴", -"踌": "躊", -"踪": "蹤", -"踬": "躓", -"踯": "躑", -"蹑": "躡", -"蹒": "蹣", -"蹰": "躕", -"蹿": "躥", -"躏": "躪", -"躜": "躦", -"躯": "軀", -"车": "車", -"轧": "軋", -"轨": "軌", -"轩": "軒", -"轪": "軑", -"轫": "軔", -"转": "轉", -"轭": "軛", -"轮": "輪", -"软": "軟", -"轰": "轟", -"轱": "軲", -"轲": "軻", -"轳": "轤", -"轴": "軸", -"轵": "軹", -"轶": "軼", -"轷": "軤", -"轸": "軫", -"轹": "轢", -"轺": "軺", -"轻": "輕", -"轼": "軾", -"载": "載", -"轾": "輊", -"轿": "轎", -"辀": "輈", -"辁": "輇", -"辂": "輅", -"较": "較", -"辄": "輒", -"辅": "輔", -"辆": "輛", -"辇": "輦", -"辈": "輩", -"辉": "輝", -"辊": "輥", -"辋": "輞", -"辌": "輬", -"辍": "輟", -"辎": "輜", -"辏": "輳", -"辐": "輻", -"辑": "輯", -"辒": "轀", -"输": "輸", -"辔": "轡", -"辕": "轅", -"辖": "轄", -"辗": "輾", -"辘": "轆", -"辙": "轍", -"辚": "轔", -"辞": "辭", -"辩": "辯", -"辫": "辮", -"边": "邊", -"辽": "遼", -"达": "達", -"迁": "遷", -"过": "過", -"迈": "邁", -"运": "運", -"还": "還", -"这": "這", -"进": "進", -"远": "遠", -"违": "違", -"连": "連", -"迟": "遲", -"迩": "邇", -"迳": "逕", -"迹": "跡", -"选": "選", -"逊": "遜", -"递": "遞", -"逦": "邐", -"逻": "邏", -"遗": "遺", -"遥": "遙", -"邓": "鄧", -"邝": "鄺", -"邬": "鄔", -"邮": "郵", -"邹": "鄒", -"邺": "鄴", -"邻": "鄰", -"郏": "郟", -"郐": "鄶", -"郑": "鄭", -"郓": "鄆", -"郦": "酈", -"郧": "鄖", -"郸": "鄲", -"酂": "酇", -"酦": "醱", -"酱": "醬", -"酽": "釅", -"酾": "釃", -"酿": "釀", -"释": "釋", -"鉴": "鑒", -"銮": "鑾", -"錾": "鏨", -"𨱏": "鎝", -"钅": "釒", -"钆": "釓", -"钇": "釔", -"针": "針", -"钉": "釘", -"钊": "釗", -"钋": "釙", -"钌": "釕", -"钍": "釷", -"钎": "釺", -"钏": "釧", -"钐": "釤", -"钑": "鈒", -"钒": "釩", -"钓": "釣", -"钔": "鍆", -"钕": "釹", -"钖": "鍚", -"钗": "釵", -"钘": "鈃", -"钙": "鈣", -"钚": "鈈", -"钛": "鈦", -"钜": "鉅", -"钝": "鈍", -"钞": "鈔", -"钠": "鈉", -"钡": "鋇", -"钢": "鋼", -"钣": "鈑", -"钤": "鈐", -"钥": "鑰", -"钦": "欽", -"钧": "鈞", -"钨": "鎢", -"钪": "鈧", -"钫": "鈁", -"钬": "鈥", -"钭": "鈄", -"钮": "鈕", -"钯": "鈀", -"钰": "鈺", -"钱": "錢", -"钲": "鉦", -"钳": "鉗", -"钴": "鈷", -"钶": "鈳", -"钷": "鉕", -"钸": "鈽", -"钹": "鈸", -"钺": "鉞", -"钻": "鑽", -"钼": "鉬", -"钽": "鉭", -"钾": "鉀", -"钿": "鈿", -"铀": "鈾", -"铁": "鐵", -"铂": "鉑", -"铃": "鈴", -"铄": "鑠", -"铅": "鉛", -"铆": "鉚", -"铇": "鉋", -"铈": "鈰", -"铉": "鉉", -"铊": "鉈", -"铋": "鉍", -"铌": "鈮", -"铍": "鈹", -"铎": "鐸", -"铏": "鉶", -"铐": "銬", -"铑": "銠", -"铒": "鉺", -"铓": "鋩", -"铔": "錏", -"铕": "銪", -"铖": "鋮", -"铗": "鋏", -"铘": "鋣", -"铙": "鐃", -"铚": "銍", -"铛": "鐺", -"铜": "銅", -"铝": "鋁", -"铞": "銱", -"铟": "銦", -"铠": "鎧", -"铡": "鍘", -"铢": "銖", -"铣": "銑", -"铤": "鋌", -"铥": "銩", -"铦": "銛", -"铧": "鏵", -"铨": "銓", -"铩": "鎩", -"铪": "鉿", -"铫": "銚", -"铬": "鉻", -"铭": "銘", -"铮": "錚", -"铯": "銫", -"铰": "鉸", -"铱": "銥", -"铲": "鏟", -"铳": "銃", -"铴": "鐋", -"铵": "銨", -"银": "銀", -"铷": "銣", -"铸": "鑄", -"铹": "鐒", -"铺": "鋪", -"铻": "鋙", -"铼": "錸", -"铽": "鋱", -"链": "鏈", -"铿": "鏗", -"销": "銷", -"锁": "鎖", -"锂": "鋰", -"锃": "鋥", -"锄": "鋤", -"锅": "鍋", -"锆": "鋯", -"锇": "鋨", -"锉": "銼", -"锊": "鋝", -"锋": "鋒", -"锌": "鋅", -"锍": "鋶", -"锎": "鐦", -"锏": "鐧", -"锑": "銻", -"锒": "鋃", -"锓": "鋟", -"锔": "鋦", -"锕": "錒", -"锖": "錆", -"锗": "鍺", -"锘": "鍩", -"错": "錯", -"锚": "錨", -"锛": "錛", -"锜": "錡", -"锝": "鍀", -"锞": "錁", -"锟": "錕", -"锠": "錩", -"锡": "錫", -"锢": "錮", -"锣": "鑼", -"锥": "錐", -"锦": "錦", -"锧": "鑕", -"锩": "錈", -"锪": "鍃", -"锫": "錇", -"锬": "錟", -"锭": "錠", -"键": "鍵", -"锯": "鋸", -"锰": "錳", -"锱": "錙", -"锲": "鍥", -"锳": "鍈", -"锴": "鍇", -"锵": "鏘", -"锶": "鍶", -"锷": "鍔", -"锸": "鍤", -"锹": "鍬", -"锺": "鍾", -"锻": "鍛", -"锼": "鎪", -"锽": "鍠", -"锾": "鍰", -"锿": "鎄", -"镀": "鍍", -"镁": "鎂", -"镂": "鏤", -"镃": "鎡", -"镄": "鐨", -"镅": "鎇", -"镆": "鏌", -"镇": "鎮", -"镈": "鎛", -"镉": "鎘", -"镊": "鑷", -"镋": "鎲", -"镍": "鎳", -"镎": "鎿", -"镏": "鎦", -"镐": "鎬", -"镑": "鎊", -"镒": "鎰", -"镓": "鎵", -"镔": "鑌", -"镕": "鎔", -"镖": "鏢", -"镗": "鏜", -"镘": "鏝", -"镙": "鏍", -"镚": "鏰", -"镛": "鏞", -"镜": "鏡", -"镝": "鏑", -"镞": "鏃", -"镟": "鏇", -"镠": "鏐", -"镡": "鐔", -"镣": "鐐", -"镤": "鏷", -"镥": "鑥", -"镦": "鐓", -"镧": "鑭", -"镨": "鐠", -"镩": "鑹", -"镪": "鏹", -"镫": "鐙", -"镬": "鑊", -"镭": "鐳", -"镮": "鐶", -"镯": "鐲", -"镰": "鐮", -"镱": "鐿", -"镲": "鑔", -"镳": "鑣", -"镴": "鑞", -"镵": "鑱", -"镶": "鑲", -"长": "長", -"门": "門", -"闩": "閂", -"闪": "閃", -"闫": "閆", -"闬": "閈", -"闭": "閉", -"问": "問", -"闯": "闖", -"闰": "閏", -"闱": "闈", -"闲": "閑", -"闳": "閎", -"间": "間", -"闵": "閔", -"闶": "閌", -"闷": "悶", -"闸": "閘", -"闹": "鬧", -"闺": "閨", -"闻": "聞", -"闼": "闥", -"闽": "閩", -"闾": "閭", -"闿": "闓", -"阀": "閥", -"阁": "閣", -"阂": "閡", -"阃": "閫", -"阄": "鬮", -"阆": "閬", -"阇": "闍", -"阈": "閾", -"阉": "閹", -"阊": "閶", -"阋": "鬩", -"阌": "閿", -"阍": "閽", -"阎": "閻", -"阏": "閼", -"阐": "闡", -"阑": "闌", -"阒": "闃", -"阓": "闠", -"阔": "闊", -"阕": "闋", -"阖": "闔", -"阗": "闐", -"阘": "闒", -"阙": "闕", -"阚": "闞", -"阛": "闤", -"队": "隊", -"阳": "陽", -"阴": "陰", -"阵": "陣", -"阶": "階", -"际": "際", -"陆": "陸", -"陇": "隴", -"陈": "陳", -"陉": "陘", -"陕": "陝", -"陧": "隉", -"陨": "隕", -"险": "險", -"随": "隨", -"隐": "隱", -"隶": "隸", -"隽": "雋", -"难": "難", -"雏": "雛", -"雠": "讎", -"雳": "靂", -"雾": "霧", -"霁": "霽", -"霡": "霢", -"霭": "靄", -"靓": "靚", -"静": "靜", -"靥": "靨", -"䩄": "靦", -"鞑": "韃", -"鞒": "鞽", -"鞯": "韉", -"韦": "韋", -"韧": "韌", -"韨": "韍", -"韩": "韓", -"韪": "韙", -"韫": "韞", -"韬": "韜", -"韵": "韻", -"页": "頁", -"顶": "頂", -"顷": "頃", -"顸": "頇", -"项": "項", -"顺": "順", -"顼": "頊", -"顽": "頑", -"顾": "顧", -"顿": "頓", -"颀": "頎", -"颁": "頒", -"颂": "頌", -"颃": "頏", -"预": "預", -"颅": "顱", -"领": "領", -"颇": "頗", -"颈": "頸", -"颉": "頡", -"颊": "頰", -"颋": "頲", -"颌": "頜", -"颍": "潁", -"颎": "熲", -"颏": "頦", -"颐": "頤", -"频": "頻", -"颒": "頮", -"颔": "頷", -"颕": "頴", -"颖": "穎", -"颗": "顆", -"题": "題", -"颙": "顒", -"颚": "顎", -"颛": "顓", -"额": "額", -"颞": "顳", -"颟": "顢", -"颠": "顛", -"颡": "顙", -"颢": "顥", -"颤": "顫", -"颥": "顬", -"颦": "顰", -"颧": "顴", -"风": "風", -"飏": "颺", -"飐": "颭", -"飑": "颮", -"飒": "颯", -"飓": "颶", -"飔": "颸", -"飕": "颼", -"飖": "颻", -"飗": "飀", -"飘": "飄", -"飙": "飆", -"飚": "飈", -"飞": "飛", -"飨": "饗", -"餍": "饜", -"饣": "飠", -"饤": "飣", -"饦": "飥", -"饧": "餳", -"饨": "飩", -"饩": "餼", -"饪": "飪", -"饫": "飫", -"饬": "飭", -"饭": "飯", -"饮": "飲", -"饯": "餞", -"饰": "飾", -"饱": "飽", -"饲": "飼", -"饳": "飿", -"饴": "飴", -"饵": "餌", -"饶": "饒", -"饷": "餉", -"饸": "餄", -"饹": "餎", -"饺": "餃", -"饻": "餏", -"饼": "餅", -"饽": "餑", -"饾": "餖", -"饿": "餓", -"馀": "餘", -"馁": "餒", -"馂": "餕", -"馃": "餜", -"馄": "餛", -"馅": "餡", -"馆": "館", -"馇": "餷", -"馈": "饋", -"馉": "餶", -"馊": "餿", -"馋": "饞", -"馌": "饁", -"馍": "饃", -"馎": "餺", -"馏": "餾", -"馐": "饈", -"馑": "饉", -"馒": "饅", -"馓": "饊", -"馔": "饌", -"馕": "饢", -"䯄": "騧", -"马": "馬", -"驭": "馭", -"驮": "馱", -"驯": "馴", -"驰": "馳", -"驱": "驅", -"驲": "馹", -"驳": "駁", -"驴": "驢", -"驵": "駔", -"驶": "駛", -"驷": "駟", -"驸": "駙", -"驹": "駒", -"驺": "騶", -"驻": "駐", -"驼": "駝", -"驽": "駑", -"驾": "駕", -"驿": "驛", -"骀": "駘", -"骁": "驍", -"骃": "駰", -"骄": "驕", -"骅": "驊", -"骆": "駱", -"骇": "駭", -"骈": "駢", -"骉": "驫", -"骊": "驪", -"骋": "騁", -"验": "驗", -"骍": "騂", -"骎": "駸", -"骏": "駿", -"骐": "騏", -"骑": "騎", -"骒": "騍", -"骓": "騅", -"骔": "騌", -"骕": "驌", -"骖": "驂", -"骗": "騙", -"骘": "騭", -"骙": "騤", -"骚": "騷", -"骛": "騖", -"骜": "驁", -"骝": "騮", -"骞": "騫", -"骟": "騸", -"骠": "驃", -"骡": "騾", -"骢": "驄", -"骣": "驏", -"骤": "驟", -"骥": "驥", -"骦": "驦", -"骧": "驤", -"髅": "髏", -"髋": "髖", -"髌": "髕", -"鬓": "鬢", -"魇": "魘", -"魉": "魎", -"鱼": "魚", -"鱽": "魛", -"鱾": "魢", -"鱿": "魷", -"鲀": "魨", -"鲁": "魯", -"鲂": "魴", -"鲃": "䰾", -"鲄": "魺", -"鲅": "鮁", -"鲆": "鮃", -"鲈": "鱸", -"鲉": "鮋", -"鲊": "鮓", -"鲋": "鮒", -"鲌": "鮊", -"鲍": "鮑", -"鲎": "鱟", -"鲏": "鮍", -"鲐": "鮐", -"鲑": "鮭", -"鲒": "鮚", -"鲓": "鮳", -"鲔": "鮪", -"鲕": "鮞", -"鲖": "鮦", -"鲗": "鰂", -"鲘": "鮜", -"鲙": "鱠", -"鲚": "鱭", -"鲛": "鮫", -"鲜": "鮮", -"鲝": "鮺", -"鲟": "鱘", -"鲠": "鯁", -"鲡": "鱺", -"鲢": "鰱", -"鲣": "鰹", -"鲤": "鯉", -"鲥": "鰣", -"鲦": "鰷", -"鲧": "鯀", -"鲨": "鯊", -"鲩": "鯇", -"鲪": "鮶", -"鲫": "鯽", -"鲬": "鯒", -"鲭": "鯖", -"鲮": "鯪", -"鲯": "鯕", -"鲰": "鯫", -"鲱": "鯡", -"鲲": "鯤", -"鲳": "鯧", -"鲴": "鯝", -"鲵": "鯢", -"鲶": "鯰", -"鲷": "鯛", -"鲸": "鯨", -"鲹": "鰺", -"鲺": "鯴", -"鲻": "鯔", -"鲼": "鱝", -"鲽": "鰈", -"鲾": "鰏", -"鲿": "鱨", -"鳀": "鯷", -"鳁": "鰮", -"鳂": "鰃", -"鳃": "鰓", -"鳅": "鰍", -"鳆": "鰒", -"鳇": "鰉", -"鳈": "鰁", -"鳉": "鱂", -"鳊": "鯿", -"鳋": "鰠", -"鳌": "鰲", -"鳍": "鰭", -"鳎": "鰨", -"鳏": "鰥", -"鳐": "鰩", -"鳑": "鰟", -"鳒": "鰜", -"鳓": "鰳", -"鳔": "鰾", -"鳕": "鱈", -"鳖": "鱉", -"鳗": "鰻", -"鳘": "鰵", -"鳙": "鱅", -"鳚": "䲁", -"鳛": "鰼", -"鳜": "鱖", -"鳝": "鱔", -"鳞": "鱗", -"鳟": "鱒", -"鳠": "鱯", -"鳡": "鱤", -"鳢": "鱧", -"鳣": "鱣", -"䴓": "鳾", -"䴕": "鴷", -"䴔": "鵁", -"䴖": "鶄", -"䴗": "鶪", -"䴘": "鷈", -"䴙": "鷿", -"㶉": "鸂", -"鸟": "鳥", -"鸠": "鳩", -"鸢": "鳶", -"鸣": "鳴", -"鸤": "鳲", -"鸥": "鷗", -"鸦": "鴉", -"鸧": "鶬", -"鸨": "鴇", -"鸩": "鴆", -"鸪": "鴣", -"鸫": "鶇", -"鸬": "鸕", -"鸭": "鴨", -"鸮": "鴞", -"鸯": "鴦", -"鸰": "鴒", -"鸱": "鴟", -"鸲": "鴝", -"鸳": "鴛", -"鸴": "鷽", -"鸵": "鴕", -"鸶": "鷥", -"鸷": "鷙", -"鸸": "鴯", -"鸹": "鴰", -"鸺": "鵂", -"鸻": "鴴", -"鸼": "鵃", -"鸽": "鴿", -"鸾": "鸞", -"鸿": "鴻", -"鹀": "鵐", -"鹁": "鵓", -"鹂": "鸝", -"鹃": "鵑", -"鹄": "鵠", -"鹅": "鵝", -"鹆": "鵒", -"鹇": "鷳", -"鹈": "鵜", -"鹉": "鵡", -"鹊": "鵲", -"鹋": "鶓", -"鹌": "鵪", -"鹍": "鵾", -"鹎": "鵯", -"鹏": "鵬", -"鹐": "鵮", -"鹑": "鶉", -"鹒": "鶊", -"鹓": "鵷", -"鹔": "鷫", -"鹕": "鶘", -"鹖": "鶡", -"鹗": "鶚", -"鹘": "鶻", -"鹙": "鶖", -"鹛": "鶥", -"鹜": "鶩", -"鹝": "鷊", -"鹞": "鷂", -"鹟": "鶲", -"鹠": "鶹", -"鹡": "鶺", -"鹢": "鷁", -"鹣": "鶼", -"鹤": "鶴", -"鹥": "鷖", -"鹦": "鸚", -"鹧": "鷓", -"鹨": "鷚", -"鹩": "鷯", -"鹪": "鷦", -"鹫": "鷲", -"鹬": "鷸", -"鹭": "鷺", -"鹯": "鸇", -"鹰": "鷹", -"鹱": "鸌", -"鹲": "鸏", -"鹳": "鸛", -"鹴": "鸘", -"鹾": "鹺", -"麦": "麥", -"麸": "麩", -"黄": "黃", -"黉": "黌", -"黡": "黶", -"黩": "黷", -"黪": "黲", -"黾": "黽", -"鼋": "黿", -"鼍": "鼉", -"鼗": "鞀", -"鼹": "鼴", -"齐": "齊", -"齑": "齏", -"齿": "齒", -"龀": "齔", -"龁": "齕", -"龂": "齗", -"龃": "齟", -"龄": "齡", -"龅": "齙", -"龆": "齠", -"龇": "齜", -"龈": "齦", -"龉": "齬", -"龊": "齪", -"龋": "齲", -"龌": "齷", -"龙": "龍", -"龚": "龔", -"龛": "龕", -"龟": "龜", -"一伙": "一伙", -"一并": "一併", -"一准": "一准", -"一划": "一划", -"一地里": "一地裡", -"一干": "一干", -"一树百获": "一樹百穫", -"一台": "一臺", -"一冲": "一衝", -"一只": "一隻", -"一发千钧": "一髮千鈞", -"一出": "一齣", -"七只": "七隻", -"三元里": "三元裡", -"三国志": "三國誌", -"三复": "三複", -"三只": "三隻", -"上吊": "上吊", -"上台": "上臺", -"下不了台": "下不了臺", -"下台": "下臺", -"下面": "下麵", -"不准": "不准", -"不吊": "不吊", -"不知就里": "不知就裡", -"不知所云": "不知所云", -"不锈钢": "不鏽鋼", -"丑剧": "丑劇", -"丑旦": "丑旦", -"丑角": "丑角", -"并存着": "並存著", -"中岳": "中嶽", -"中台医专": "中臺醫專", -"丰南": "丰南", -"丰台": "丰台", -"丰姿": "丰姿", -"丰采": "丰采", -"丰韵": "丰韻", -"主干": "主幹", -"么么唱唱": "么么唱唱", -"么儿": "么兒", -"么喝": "么喝", -"么妹": "么妹", -"么弟": "么弟", -"么爷": "么爺", -"九世之雠": "九世之讎", -"九只": "九隻", -"干丝": "乾絲", -"干着急": "乾著急", -"乱发": "亂髮", -"云云": "云云", -"云尔": "云爾", -"五岳": "五嶽", -"五斗柜": "五斗櫃", -"五斗橱": "五斗櫥", -"五谷": "五穀", -"五行生克": "五行生剋", -"五只": "五隻", -"五出": "五齣", -"交卷": "交卷", -"人云亦云": "人云亦云", -"人物志": "人物誌", -"什锦面": "什錦麵", -"什么": "什麼", -"仆倒": "仆倒", -"介系词": "介係詞", -"介系词": "介繫詞", -"仿制": "仿製", -"伙伕": "伙伕", -"伙伴": "伙伴", -"伙同": "伙同", -"伙夫": "伙夫", -"伙房": "伙房", -"伙计": "伙計", -"伙食": "伙食", -"布下": "佈下", -"布告": "佈告", -"布哨": "佈哨", -"布局": "佈局", -"布岗": "佈崗", -"布施": "佈施", -"布景": "佈景", -"布满": "佈滿", -"布线": "佈線", -"布置": "佈置", -"布署": "佈署", -"布道": "佈道", -"布达": "佈達", -"布防": "佈防", -"布阵": "佈陣", -"布雷": "佈雷", -"体育锻鍊": "体育鍛鍊", -"何干": "何干", -"作准": "作准", -"佣人": "佣人", -"佣工": "佣工", -"佣金": "佣金", -"并入": "併入", -"并列": "併列", -"并到": "併到", -"并合": "併合", -"并吞": "併吞", -"并在": "併在", -"并成": "併成", -"并排": "併排", -"并拢": "併攏", -"并案": "併案", -"并为": "併為", -"并发": "併發", -"并科": "併科", -"并购": "併購", -"并进": "併進", -"来复": "來複", -"供制": "供製", -"依依不舍": "依依不捨", -"侵并": "侵併", -"便辟": "便辟", -"系数": "係數", -"系为": "係為", -"保险柜": "保險柜", -"信号台": "信號臺", -"修复": "修複", -"修胡刀": "修鬍刀", -"俯冲": "俯衝", -"个里": "個裡", -"借着": "借著", -"假发": "假髮", -"停制": "停製", -"偷鸡不着": "偷雞不著", -"家伙": "傢伙", -"家俱": "傢俱", -"家具": "傢具", -"传布": "傳佈", -"债台高筑": "債臺高築", -"傻里傻气": "傻裡傻氣", -"倾家荡产": "傾家蕩產", -"倾覆": "傾複", -"倾覆": "傾覆", -"僱佣": "僱佣", -"仪表": "儀錶", -"亿只": "億隻", -"尽尽": "儘儘", -"尽先": "儘先", -"尽其所有": "儘其所有", -"尽力": "儘力", -"尽快": "儘快", -"尽早": "儘早", -"尽是": "儘是", -"尽管": "儘管", -"尽速": "儘速", -"尽量": "儘量", -"允准": "允准", -"兄台": "兄臺", -"充饥": "充饑", -"光采": "光采", -"克里": "克裡", -"克复": "克複", -"入伙": "入伙", -"内制": "內製", -"两只": "兩隻", -"八字胡": "八字鬍", -"八只": "八隻", -"公布": "公佈", -"公干": "公幹", -"公斗": "公斗", -"公历": "公曆", -"六只": "六隻", -"六出": "六齣", -"兼并": "兼併", -"冤雠": "冤讎", -"准予": "准予", -"准假": "准假", -"准将": "准將", -"准考证": "准考證", -"准许": "准許", -"几几": "几几", -"几案": "几案", -"几丝": "几絲", -"凹洞里": "凹洞裡", -"出征": "出征", -"出锤": "出鎚", -"刀削面": "刀削麵", -"刁斗": "刁斗", -"分布": "分佈", -"切面": "切麵", -"刊布": "刊佈", -"划上": "划上", -"划下": "划下", -"划不来": "划不來", -"划了": "划了", -"划具": "划具", -"划出": "划出", -"划到": "划到", -"划动": "划動", -"划去": "划去", -"划子": "划子", -"划得来": "划得來", -"划拳": "划拳", -"划桨": "划槳", -"划水": "划水", -"划算": "划算", -"划船": "划船", -"划艇": "划艇", -"划着": "划著", -"划着走": "划著走", -"划行": "划行", -"划走": "划走", -"划起": "划起", -"划进": "划進", -"划过": "划過", -"初征": "初征", -"别致": "別緻", -"别着": "別著", -"别只": "別隻", -"利比里亚": "利比裡亞", -"刮着": "刮著", -"刮胡刀": "刮鬍刀", -"剃发": "剃髮", -"剃须": "剃鬚", -"削发": "削髮", -"克制": "剋制", -"克星": "剋星", -"克服": "剋服", -"克死": "剋死", -"克薄": "剋薄", -"前仆后继": "前仆後繼", -"前台": "前臺", -"前车之复": "前車之覆", -"刚才": "剛纔", -"剪发": "剪髮", -"割舍": "割捨", -"创制": "創製", -"加里宁": "加裡寧", -"动荡": "動蕩", -"劳力士表": "勞力士錶", -"包准": "包准", -"包谷": "包穀", -"北斗": "北斗", -"北回": "北迴", -"匡复": "匡複", -"匪干": "匪幹", -"十卷": "十卷", -"十台": "十臺", -"十只": "十隻", -"十出": "十齣", -"千丝万缕": "千絲萬縷", -"千回百折": "千迴百折", -"千回百转": "千迴百轉", -"千钧一发": "千鈞一髮", -"千只": "千隻", -"升斗小民": "升斗小民", -"半只": "半隻", -"南岳": "南嶽", -"南征": "南征", -"南台": "南臺", -"南回": "南迴", -"卡里": "卡裡", -"印制": "印製", -"卷入": "卷入", -"卷取": "卷取", -"卷土重来": "卷土重來", -"卷子": "卷子", -"卷宗": "卷宗", -"卷尺": "卷尺", -"卷层云": "卷層雲", -"卷帙": "卷帙", -"卷扬机": "卷揚機", -"卷曲": "卷曲", -"卷染": "卷染", -"卷烟": "卷煙", -"卷筒": "卷筒", -"卷纬": "卷緯", -"卷绕": "卷繞", -"卷装": "卷裝", -"卷轴": "卷軸", -"卷云": "卷雲", -"卷领": "卷領", -"卷发": "卷髮", -"卷须": "卷鬚", -"参与": "參与", -"参与者": "參与者", -"参合": "參合", -"参考价值": "參考價值", -"参与": "參與", -"参与人员": "參與人員", -"参与制": "參與制", -"参与感": "參與感", -"参与者": "參與者", -"参观团": "參觀團", -"参观团体": "參觀團體", -"参阅": "參閱", -"反冲": "反衝", -"反复": "反複", -"反复": "反覆", -"取舍": "取捨", -"口里": "口裡", -"只准": "只准", -"只冲": "只衝", -"叮当": "叮噹", -"可怜虫": "可憐虫", -"可紧可松": "可緊可鬆", -"台制": "台製", -"司令台": "司令臺", -"吃着不尽": "吃著不盡", -"吃里扒外": "吃裡扒外", -"吃里爬外": "吃裡爬外", -"各吊": "各吊", -"合伙": "合伙", -"合并": "合併", -"吊上": "吊上", -"吊下": "吊下", -"吊了": "吊了", -"吊个": "吊個", -"吊儿郎当": "吊兒郎當", -"吊到": "吊到", -"吊去": "吊去", -"吊取": "吊取", -"吊吊": "吊吊", -"吊嗓": "吊嗓", -"吊好": "吊好", -"吊子": "吊子", -"吊带": "吊帶", -"吊带裤": "吊帶褲", -"吊床": "吊床", -"吊得": "吊得", -"吊挂": "吊掛", -"吊挂着": "吊掛著", -"吊杆": "吊杆", -"吊架": "吊架", -"吊桶": "吊桶", -"吊杆": "吊桿", -"吊桥": "吊橋", -"吊死": "吊死", -"吊灯": "吊燈", -"吊环": "吊環", -"吊盘": "吊盤", -"吊索": "吊索", -"吊着": "吊著", -"吊装": "吊裝", -"吊裤": "吊褲", -"吊裤带": "吊褲帶", -"吊袜": "吊襪", -"吊走": "吊走", -"吊起": "吊起", -"吊车": "吊車", -"吊钩": "吊鉤", -"吊销": "吊銷", -"吊钟": "吊鐘", -"同伙": "同伙", -"名表": "名錶", -"后冠": "后冠", -"后土": "后土", -"后妃": "后妃", -"后座": "后座", -"后稷": "后稷", -"后羿": "后羿", -"后里": "后里", -"向着": "向著", -"吞并": "吞併", -"吹发": "吹髮", -"吕后": "呂后", -"獃里獃气": "呆裡呆氣", -"周而复始": "周而複始", -"呼吁": "呼籲", -"和面": "和麵", -"哪里": "哪裡", -"哭脏": "哭髒", -"问卷": "問卷", -"喝采": "喝采", -"单干": "單干", -"单只": "單隻", -"嘴里": "嘴裡", -"恶心": "噁心", -"当啷": "噹啷", -"当当": "噹噹", -"噜苏": "嚕囌", -"向导": "嚮導", -"向往": "嚮往", -"向应": "嚮應", -"向日": "嚮日", -"向迩": "嚮邇", -"严丝合缝": "嚴絲合縫", -"严复": "嚴複", -"四舍五入": "四捨五入", -"四只": "四隻", -"四出": "四齣", -"回丝": "回絲", -"回着": "回著", -"回荡": "回蕩", -"回复": "回覆", -"回采": "回采", -"圈子里": "圈子裡", -"圈里": "圈裡", -"国历": "國曆", -"国雠": "國讎", -"园里": "園裡", -"图里": "圖裡", -"土里": "土裡", -"土制": "土製", -"地志": "地誌", -"坍台": "坍臺", -"坑里": "坑裡", -"坦荡": "坦蕩", -"垂发": "垂髮", -"垮台": "垮臺", -"埋布": "埋佈", -"城里": "城裡", -"基干": "基幹", -"报复": "報複", -"塌台": "塌臺", -"塔台": "塔臺", -"涂着": "塗著", -"墓志": "墓誌", -"墨斗": "墨斗", -"墨索里尼": "墨索裡尼", -"垦复": "墾複", -"垄断价格": "壟斷價格", -"垄断资产": "壟斷資產", -"垄断集团": "壟斷集團", -"壶里": "壺裡", -"寿面": "壽麵", -"夏天里": "夏天裡", -"夏历": "夏曆", -"外制": "外製", -"多冲": "多衝", -"多采多姿": "多采多姿", -"多么": "多麼", -"夜光表": "夜光錶", -"夜里": "夜裡", -"梦里": "夢裡", -"大伙": "大伙", -"大卷": "大卷", -"大干": "大干", -"大干": "大幹", -"大锤": "大鎚", -"大只": "大隻", -"天后": "天后", -"天干": "天干", -"天文台": "天文臺", -"太后": "太后", -"奏折": "奏摺", -"女丑": "女丑", -"女佣": "女佣", -"好家夥": "好傢夥", -"好戏连台": "好戲連臺", -"如法泡制": "如法泡製", -"妆台": "妝臺", -"姜太公": "姜太公", -"姜子牙": "姜子牙", -"姜丝": "姜絲", -"字汇": "字彙", -"字里行间": "字裡行間", -"存折": "存摺", -"孟姜女": "孟姜女", -"宇宙志": "宇宙誌", -"定准": "定准", -"定制": "定製", -"宣布": "宣佈", -"宫里": "宮裡", -"家伙": "家伙", -"家里": "家裡", -"密布": "密佈", -"寇雠": "寇讎", -"实干": "實幹", -"写字台": "寫字檯", -"写字台": "寫字臺", -"宽松": "寬鬆", -"封面里": "封面裡", -"射干": "射干", -"对表": "對錶", -"小丑": "小丑", -"小伙": "小伙", -"小只": "小隻", -"少吊": "少吊", -"尺布斗粟": "尺布斗粟", -"尼克松": "尼克鬆", -"尼采": "尼采", -"尿斗": "尿斗", -"局里": "局裡", -"居里": "居裡", -"屋子里": "屋子裡", -"屋里": "屋裡", -"展布": "展佈", -"屡仆屡起": "屢仆屢起", -"屯里": "屯裡", -"山岳": "山嶽", -"山里": "山裡", -"峰回": "峰迴", -"巡回": "巡迴", -"巧干": "巧幹", -"巴尔干": "巴爾幹", -"巴里": "巴裡", -"巷里": "巷裡", -"市里": "市裡", -"布谷": "布穀", -"希腊": "希腊", -"帘子": "帘子", -"帘布": "帘布", -"席卷": "席卷", -"带团参加": "帶團參加", -"带发修行": "帶髮修行", -"干休": "干休", -"干系": "干係", -"干卿何事": "干卿何事", -"干将": "干將", -"干戈": "干戈", -"干挠": "干撓", -"干扰": "干擾", -"干支": "干支", -"干政": "干政", -"干时": "干時", -"干涉": "干涉", -"干犯": "干犯", -"干与": "干與", -"干着急": "干著急", -"干贝": "干貝", -"干预": "干預", -"平台": "平臺", -"年历": "年曆", -"年里": "年裡", -"干上": "幹上", -"干下去": "幹下去", -"干了": "幹了", -"干事": "幹事", -"干些": "幹些", -"干个": "幹個", -"干劲": "幹勁", -"干员": "幹員", -"干吗": "幹嗎", -"干嘛": "幹嘛", -"干坏事": "幹壞事", -"干完": "幹完", -"干得": "幹得", -"干性油": "幹性油", -"干才": "幹才", -"干掉": "幹掉", -"干校": "幹校", -"干活": "幹活", -"干流": "幹流", -"干球温度": "幹球溫度", -"干线": "幹線", -"干练": "幹練", -"干警": "幹警", -"干起来": "幹起來", -"干路": "幹路", -"干道": "幹道", -"干部": "幹部", -"干么": "幹麼", -"几丝": "幾絲", -"几只": "幾隻", -"几出": "幾齣", -"底里": "底裡", -"康采恩": "康采恩", -"庙里": "廟裡", -"建台": "建臺", -"弄脏": "弄髒", -"弔卷": "弔卷", -"弘历": "弘曆", -"别扭": "彆扭", -"别拗": "彆拗", -"别气": "彆氣", -"别脚": "彆腳", -"别着": "彆著", -"弹子台": "彈子檯", -"弹药": "彈葯", -"汇报": "彙報", -"汇整": "彙整", -"汇编": "彙編", -"汇总": "彙總", -"汇纂": "彙纂", -"汇辑": "彙輯", -"汇集": "彙集", -"形单影只": "形單影隻", -"影后": "影后", -"往里": "往裡", -"往复": "往複", -"征伐": "征伐", -"征兵": "征兵", -"征尘": "征塵", -"征夫": "征夫", -"征战": "征戰", -"征收": "征收", -"征服": "征服", -"征求": "征求", -"征发": "征發", -"征衣": "征衣", -"征讨": "征討", -"征途": "征途", -"后台": "後臺", -"从里到外": "從裡到外", -"从里向外": "從裡向外", -"复雠": "復讎", -"复辟": "復辟", -"德干高原": "德干高原", -"心愿": "心愿", -"心荡神驰": "心蕩神馳", -"心里": "心裡", -"忙里": "忙裡", -"快干": "快幹", -"快冲": "快衝", -"怎么": "怎麼", -"怎么着": "怎麼著", -"怒发冲冠": "怒髮衝冠", -"急冲而下": "急衝而下", -"怪里怪气": "怪裡怪氣", -"恩准": "恩准", -"情有所钟": "情有所鍾", -"意面": "意麵", -"慌里慌张": "慌裡慌張", -"慰借": "慰藉", -"忧郁": "憂郁", -"凭吊": "憑吊", -"凭借": "憑藉", -"凭借着": "憑藉著", -"蒙懂": "懞懂", -"怀里": "懷裡", -"怀表": "懷錶", -"悬吊": "懸吊", -"恋恋不舍": "戀戀不捨", -"戏台": "戲臺", -"戴表": "戴錶", -"戽斗": "戽斗", -"房里": "房裡", -"手不释卷": "手不釋卷", -"手卷": "手卷", -"手折": "手摺", -"手里": "手裡", -"手表": "手錶", -"手松": "手鬆", -"才干": "才幹", -"才高八斗": "才高八斗", -"打谷": "打穀", -"扞御": "扞禦", -"批准": "批准", -"批复": "批複", -"批复": "批覆", -"承制": "承製", -"抗御": "抗禦", -"折冲": "折衝", -"披复": "披覆", -"披发": "披髮", -"抱朴": "抱朴", -"抵御": "抵禦", -"拆伙": "拆伙", -"拆台": "拆臺", -"拈须": "拈鬚", -"拉纤": "拉縴", -"拉面": "拉麵", -"拖吊": "拖吊", -"拗别": "拗彆", -"拮据": "拮据", -"振荡": "振蕩", -"捍御": "捍禦", -"舍不得": "捨不得", -"舍出": "捨出", -"舍去": "捨去", -"舍命": "捨命", -"舍己从人": "捨己從人", -"舍己救人": "捨己救人", -"舍己为人": "捨己為人", -"舍己为公": "捨己為公", -"舍己为国": "捨己為國", -"舍得": "捨得", -"舍我其谁": "捨我其誰", -"舍本逐末": "捨本逐末", -"舍弃": "捨棄", -"舍死忘生": "捨死忘生", -"舍生": "捨生", -"舍短取长": "捨短取長", -"舍身": "捨身", -"舍车保帅": "捨車保帥", -"舍近求远": "捨近求遠", -"捲发": "捲髮", -"捵面": "捵麵", -"扫荡": "掃蕩", -"掌柜": "掌柜", -"排骨面": "排骨麵", -"挂帘": "掛帘", -"挂面": "掛麵", -"接着说": "接著說", -"提心吊胆": "提心吊膽", -"插图卷": "插圖卷", -"换吊": "換吊", -"换只": "換隻", -"换发": "換髮", -"摇荡": "搖蕩", -"搭伙": "搭伙", -"折合": "摺合", -"折奏": "摺奏", -"折子": "摺子", -"折尺": "摺尺", -"折扇": "摺扇", -"折梯": "摺梯", -"折椅": "摺椅", -"折叠": "摺疊", -"折痕": "摺痕", -"折篷": "摺篷", -"折纸": "摺紙", -"折裙": "摺裙", -"撒布": "撒佈", -"撚须": "撚鬚", -"撞球台": "撞球檯", -"擂台": "擂臺", -"担仔面": "擔仔麵", -"担担面": "擔擔麵", -"担着": "擔著", -"担负着": "擔負著", -"据云": "據云", -"擢发难数": "擢髮難數", -"摆布": "擺佈", -"摄制": "攝製", -"支干": "支幹", -"收获": "收穫", -"改制": "改製", -"攻克": "攻剋", -"放荡": "放蕩", -"放松": "放鬆", -"叙说着": "敘說著", -"散伙": "散伙", -"散布": "散佈", -"散荡": "散蕩", -"散发": "散髮", -"整只": "整隻", -"整出": "整齣", -"文采": "文采", -"斗六": "斗六", -"斗南": "斗南", -"斗大": "斗大", -"斗子": "斗子", -"斗室": "斗室", -"斗方": "斗方", -"斗栱": "斗栱", -"斗笠": "斗笠", -"斗箕": "斗箕", -"斗篷": "斗篷", -"斗胆": "斗膽", -"斗转参横": "斗轉參橫", -"斗量": "斗量", -"斗门": "斗門", -"料斗": "料斗", -"斯里兰卡": "斯裡蘭卡", -"新历": "新曆", -"断头台": "斷頭臺", -"方才": "方纔", -"施舍": "施捨", -"旋绕着": "旋繞著", -"旋回": "旋迴", -"族里": "族裡", -"日历": "日曆", -"日志": "日誌", -"日进斗金": "日進斗金", -"明了": "明瞭", -"明窗净几": "明窗淨几", -"明里": "明裡", -"星斗": "星斗", -"星历": "星曆", -"星移斗换": "星移斗換", -"星移斗转": "星移斗轉", -"星罗棋布": "星羅棋佈", -"星辰表": "星辰錶", -"春假里": "春假裡", -"春天里": "春天裡", -"晃荡": "晃蕩", -"景致": "景緻", -"暗地里": "暗地裡", -"暗沟里": "暗溝裡", -"暗里": "暗裡", -"历数": "曆數", -"历书": "曆書", -"历法": "曆法", -"书卷": "書卷", -"会干": "會幹", -"会里": "會裡", -"月历": "月曆", -"月台": "月臺", -"有只": "有隻", -"木制": "木製", -"本台": "本臺", -"朴子": "朴子", -"朴实": "朴實", -"朴硝": "朴硝", -"朴素": "朴素", -"朴资茅斯": "朴資茅斯", -"村里": "村裡", -"束发": "束髮", -"东岳": "東嶽", -"东征": "東征", -"松赞干布": "松贊干布", -"板着脸": "板著臉", -"板荡": "板蕩", -"枕借": "枕藉", -"林宏岳": "林宏嶽", -"枝干": "枝幹", -"枯干": "枯幹", -"某只": "某隻", -"染发": "染髮", -"柜上": "柜上", -"柜台": "柜台", -"柜子": "柜子", -"查卷": "查卷", -"查号台": "查號臺", -"校雠学": "校讎學", -"核准": "核准", -"核复": "核覆", -"格里": "格裡", -"案卷": "案卷", -"条干": "條幹", -"棉卷": "棉卷", -"棉制": "棉製", -"植发": "植髮", -"楼台": "樓臺", -"标志着": "標志著", -"标致": "標緻", -"标志": "標誌", -"模制": "模製", -"树干": "樹幹", -"横征暴敛": "橫征暴斂", -"横冲": "橫衝", -"档卷": "檔卷", -"检复": "檢覆", -"台子": "檯子", -"台布": "檯布", -"台灯": "檯燈", -"台球": "檯球", -"台面": "檯面", -"柜台": "櫃檯", -"柜台": "櫃臺", -"栏干": "欄干", -"欺蒙": "欺矇", -"歌后": "歌后", -"欧几里得": "歐幾裡得", -"正当着": "正當著", -"武后": "武后", -"武松": "武鬆", -"归并": "歸併", -"死里求生": "死裡求生", -"死里逃生": "死裡逃生", -"残卷": "殘卷", -"杀虫药": "殺虫藥", -"壳里": "殼裡", -"母后": "母后", -"每只": "每隻", -"比干": "比干", -"毛卷": "毛卷", -"毛发": "毛髮", -"毫发": "毫髮", -"气冲牛斗": "氣沖牛斗", -"气象台": "氣象臺", -"氯霉素": "氯黴素", -"水斗": "水斗", -"水里": "水裡", -"水表": "水錶", -"永历": "永曆", -"污蔑": "汙衊", -"池里": "池裡", -"污蔑": "污衊", -"沈着": "沈著", -"没事干": "沒事幹", -"没精打采": "沒精打采", -"冲着": "沖著", -"沙里淘金": "沙裡淘金", -"河里": "河裡", -"油面": "油麵", -"泡面": "泡麵", -"泰斗": "泰斗", -"洗手不干": "洗手不幹", -"洗发精": "洗髮精", -"派团参加": "派團參加", -"流荡": "流蕩", -"浩荡": "浩蕩", -"浪琴表": "浪琴錶", -"浪荡": "浪蕩", -"浮荡": "浮蕩", -"海里": "海裡", -"涂着": "涂著", -"液晶表": "液晶錶", -"凉面": "涼麵", -"淡朱": "淡硃", -"淫荡": "淫蕩", -"测验卷": "測驗卷", -"港制": "港製", -"游荡": "游蕩", -"凑合着": "湊合著", -"湖里": "湖裡", -"汤团": "湯糰", -"汤面": "湯麵", -"卤制": "滷製", -"卤面": "滷麵", -"满布": "滿佈", -"漂荡": "漂蕩", -"漏斗": "漏斗", -"演奏台": "演奏臺", -"潭里": "潭裡", -"激荡": "激蕩", -"浓郁": "濃郁", -"浓发": "濃髮", -"湿地松": "濕地鬆", -"蒙蒙": "濛濛", -"蒙雾": "濛霧", -"瀛台": "瀛臺", -"弥漫": "瀰漫", -"弥漫着": "瀰漫著", -"火并": "火併", -"灰蒙": "灰濛", -"炒面": "炒麵", -"炮制": "炮製", -"炸药": "炸葯", -"炸酱面": "炸醬麵", -"为着": "為著", -"乌干达": "烏干達", -"乌苏里江": "烏蘇裡江", -"乌发": "烏髮", -"乌龙面": "烏龍麵", -"烘制": "烘製", -"烽火台": "烽火臺", -"无干": "無干", -"无精打采": "無精打采", -"炼制": "煉製", -"烟卷儿": "煙卷兒", -"烟斗": "煙斗", -"烟斗丝": "煙斗絲", -"烟台": "煙臺", -"照准": "照准", -"熨斗": "熨斗", -"灯台": "燈臺", -"燎发": "燎髮", -"烫发": "燙髮", -"烫面": "燙麵", -"烛台": "燭臺", -"炉台": "爐臺", -"爽荡": "爽蕩", -"片言只语": "片言隻語", -"牛肉面": "牛肉麵", -"牛只": "牛隻", -"特准": "特准", -"特征": "特征", -"特里": "特裡", -"特制": "特製", -"牵系": "牽繫", -"狼借": "狼藉", -"猛冲": "猛衝", -"奖杯": "獎盃", -"获准": "獲准", -"率团参加": "率團參加", -"王侯后": "王侯后", -"王后": "王后", -"班里": "班裡", -"理发": "理髮", -"瑶台": "瑤臺", -"甚么": "甚麼", -"甜面酱": "甜麵醬", -"生力面": "生力麵", -"生锈": "生鏽", -"生发": "生髮", -"田里": "田裡", -"由馀": "由余", -"男佣": "男佣", -"男用表": "男用錶", -"留发": "留髮", -"畚斗": "畚斗", -"当着": "當著", -"疏松": "疏鬆", -"疲困": "疲睏", -"病症": "病癥", -"症候": "癥候", -"症状": "癥狀", -"症结": "癥結", -"登台": "登臺", -"发布": "發佈", -"发着": "發著", -"发面": "發麵", -"发霉": "發黴", -"白卷": "白卷", -"白干儿": "白干兒", -"白发": "白髮", -"白面": "白麵", -"百里": "百裡", -"百只": "百隻", -"皇后": "皇后", -"皇历": "皇曆", -"皓发": "皓髮", -"皮里阳秋": "皮裏陽秋", -"皮里春秋": "皮裡春秋", -"皮制": "皮製", -"皱折": "皺摺", -"盒里": "盒裡", -"监制": "監製", -"盘里": "盤裡", -"盘回": "盤迴", -"直接参与": "直接參与", -"直冲": "直衝", -"相克": "相剋", -"相干": "相干", -"相冲": "相衝", -"看台": "看臺", -"眼帘": "眼帘", -"眼眶里": "眼眶裡", -"眼里": "眼裡", -"困乏": "睏乏", -"睡着了": "睡著了", -"了如": "瞭如", -"了望": "瞭望", -"了然": "瞭然", -"了若指掌": "瞭若指掌", -"了解": "瞭解", -"蒙住": "矇住", -"蒙昧无知": "矇昧無知", -"蒙混": "矇混", -"蒙蒙": "矇矇", -"蒙眬": "矇矓", -"蒙蔽": "矇蔽", -"蒙骗": "矇騙", -"短发": "短髮", -"石英表": "石英錶", -"研制": "研製", -"砰当": "砰噹", -"砲台": "砲臺", -"朱唇皓齿": "硃唇皓齒", -"朱批": "硃批", -"朱砂": "硃砂", -"朱笔": "硃筆", -"朱红色": "硃紅色", -"朱色": "硃色", -"硬干": "硬幹", -"砚台": "硯臺", -"碑志": "碑誌", -"磁制": "磁製", -"磨制": "磨製", -"示复": "示覆", -"社里": "社裡", -"神采": "神采", -"御侮": "禦侮", -"御寇": "禦寇", -"御寒": "禦寒", -"御敌": "禦敵", -"秃发": "禿髮", -"秀发": "秀髮", -"私下里": "私下裡", -"秋天里": "秋天裡", -"秋裤": "秋褲", -"秒表": "秒錶", -"稀松": "稀鬆", -"禀复": "稟覆", -"稻谷": "稻穀", -"稽征": "稽征", -"谷仓": "穀倉", -"谷场": "穀場", -"谷子": "穀子", -"谷壳": "穀殼", -"谷物": "穀物", -"谷皮": "穀皮", -"谷神": "穀神", -"谷粒": "穀粒", -"谷舱": "穀艙", -"谷苗": "穀苗", -"谷草": "穀草", -"谷贱伤农": "穀賤傷農", -"谷道": "穀道", -"谷雨": "穀雨", -"谷类": "穀類", -"积极参与": "積极參与", -"积极参加": "積极參加", -"空荡": "空蕩", -"窗帘": "窗帘", -"窗明几净": "窗明几淨", -"窗台": "窗檯", -"窗台": "窗臺", -"窝里": "窩裡", -"窝阔台": "窩闊臺", -"穷追不舍": "窮追不捨", -"笆斗": "笆斗", -"笑里藏刀": "笑裡藏刀", -"第一卷": "第一卷", -"筋斗": "筋斗", -"答卷": "答卷", -"答复": "答複", -"答复": "答覆", -"筵几": "筵几", -"箕斗": "箕斗", -"签着": "簽著", -"吁求": "籲求", -"吁请": "籲請", -"粗制": "粗製", -"粗卤": "粗鹵", -"精干": "精幹", -"精明强干": "精明強幹", -"精致": "精緻", -"精制": "精製", -"精辟": "精辟", -"精采": "精采", -"糊里糊涂": "糊裡糊塗", -"团子": "糰子", -"系着": "系著", -"纪历": "紀曆", -"红发": "紅髮", -"红霉素": "紅黴素", -"纡回": "紆迴", -"纳采": "納采", -"素食面": "素食麵", -"素面": "素麵", -"紫微斗数": "紫微斗數", -"细致": "細緻", -"组里": "組裡", -"结发": "結髮", -"绝对参照": "絕對參照", -"丝来线去": "絲來線去", -"丝布": "絲布", -"丝板": "絲板", -"丝瓜布": "絲瓜布", -"丝绒布": "絲絨布", -"丝线": "絲線", -"丝织厂": "絲織廠", -"丝虫": "絲蟲", -"綑吊": "綑吊", -"经卷": "經卷", -"绿霉素": "綠黴素", -"维系": "維繫", -"绾发": "綰髮", -"网里": "網裡", -"紧绷": "緊繃", -"紧绷着": "緊繃著", -"紧追不舍": "緊追不捨", -"编制": "編製", -"编发": "編髮", -"缓冲": "緩衝", -"致密": "緻密", -"萦回": "縈迴", -"县里": "縣裡", -"县志": "縣誌", -"缝里": "縫裡", -"缝制": "縫製", -"纤夫": "縴夫", -"繁复": "繁複", -"绷住": "繃住", -"绷子": "繃子", -"绷带": "繃帶", -"绷紧": "繃緊", -"绷脸": "繃臉", -"绷着": "繃著", -"绷着脸": "繃著臉", -"绷着脸儿": "繃著臉兒", -"绷开": "繃開", -"绘制": "繪製", -"系上": "繫上", -"系到": "繫到", -"系囚": "繫囚", -"系心": "繫心", -"系念": "繫念", -"系怀": "繫懷", -"系数": "繫數", -"系于": "繫於", -"系系": "繫系", -"系紧": "繫緊", -"系绳": "繫繩", -"系着": "繫著", -"系辞": "繫辭", -"缴卷": "繳卷", -"累囚": "纍囚", -"累累": "纍纍", -"坛子": "罈子", -"坛坛罐罐": "罈罈罐罐", -"骂着": "罵著", -"美制": "美製", -"美发": "美髮", -"翻来覆去": "翻來覆去", -"翻云覆雨": "翻雲覆雨", -"老么": "老么", -"老板": "老闆", -"考卷": "考卷", -"耕获": "耕穫", -"聊斋志异": "聊齋誌異", -"联系": "聯係", -"联系": "聯繫", -"肉丝面": "肉絲麵", -"肉羹面": "肉羹麵", -"肉松": "肉鬆", -"肢体": "肢体", -"背向着": "背向著", -"背地里": "背地裡", -"胡里胡涂": "胡裡胡塗", -"能干": "能幹", -"脉冲": "脈衝", -"脱发": "脫髮", -"腊味": "腊味", -"腊笔": "腊筆", -"腊肉": "腊肉", -"脑子里": "腦子裡", -"腰里": "腰裡", -"胶卷": "膠卷", -"自制": "自製", -"自觉自愿": "自覺自愿", -"台上": "臺上", -"台下": "臺下", -"台中": "臺中", -"台北": "臺北", -"台南": "臺南", -"台地": "臺地", -"台塑": "臺塑", -"台大": "臺大", -"台币": "臺幣", -"台座": "臺座", -"台东": "臺東", -"台柱": "臺柱", -"台榭": "臺榭", -"台汽": "臺汽", -"台海": "臺海", -"台澎金马": "臺澎金馬", -"台湾": "臺灣", -"台灯": "臺燈", -"台球": "臺球", -"台省": "臺省", -"台端": "臺端", -"台糖": "臺糖", -"台肥": "臺肥", -"台航": "臺航", -"台视": "臺視", -"台词": "臺詞", -"台车": "臺車", -"台铁": "臺鐵", -"台阶": "臺階", -"台电": "臺電", -"台面": "臺面", -"舂谷": "舂穀", -"兴致": "興緻", -"兴高采烈": "興高采烈", -"旧历": "舊曆", -"舒卷": "舒卷", -"舞台": "舞臺", -"航海历": "航海曆", -"船只": "船隻", -"舰只": "艦隻", -"芬郁": "芬郁", -"花卷": "花卷", -"花盆里": "花盆裡", -"花采": "花采", -"苑里": "苑裡", -"若干": "若干", -"苦干": "苦幹", -"苦里": "苦裏", -"苦卤": "苦鹵", -"范仲淹": "范仲淹", -"范蠡": "范蠡", -"范阳": "范陽", -"茅台": "茅臺", -"茶几": "茶几", -"草丛里": "草叢裡", -"庄里": "莊裡", -"茎干": "莖幹", -"莽荡": "莽蕩", -"菌丝体": "菌絲体", -"菌丝体": "菌絲體", -"华里": "華裡", -"华发": "華髮", -"万卷": "萬卷", -"万历": "萬曆", -"万只": "萬隻", -"落发": "落髮", -"着儿": "著兒", -"着书立说": "著書立說", -"着色软体": "著色軟體", -"着重指出": "著重指出", -"着录": "著錄", -"着录规则": "著錄規則", -"蓄发": "蓄髮", -"蓄须": "蓄鬚", -"蓬发": "蓬髮", -"蓬松": "蓬鬆", -"莲台": "蓮臺", -"荡来荡去": "蕩來蕩去", -"荡女": "蕩女", -"荡妇": "蕩婦", -"荡寇": "蕩寇", -"荡平": "蕩平", -"荡涤": "蕩滌", -"荡漾": "蕩漾", -"荡然": "蕩然", -"荡舟": "蕩舟", -"荡船": "蕩船", -"荡荡": "蕩蕩", -"薑丝": "薑絲", -"薙发": "薙髮", -"借以": "藉以", -"借口": "藉口", -"借故": "藉故", -"借机": "藉機", -"借此": "藉此", -"借由": "藉由", -"借端": "藉端", -"借着": "藉著", -"借借": "藉藉", -"借词": "藉詞", -"借资": "藉資", -"借酒浇愁": "藉酒澆愁", -"藤制": "藤製", -"蕴含着": "蘊含著", -"蕴涵着": "蘊涵著", -"蕴借": "蘊藉", -"萝卜": "蘿蔔", -"虎须": "虎鬚", -"号志": "號誌", -"蜂后": "蜂后", -"蛮干": "蠻幹", -"行事历": "行事曆", -"胡同": "衚衕", -"冲上": "衝上", -"冲下": "衝下", -"冲来": "衝來", -"冲倒": "衝倒", -"冲出": "衝出", -"冲到": "衝到", -"冲刺": "衝刺", -"冲克": "衝剋", -"冲力": "衝力", -"冲劲": "衝勁", -"冲动": "衝動", -"冲去": "衝去", -"冲口": "衝口", -"冲垮": "衝垮", -"冲堂": "衝堂", -"冲压": "衝壓", -"冲天": "衝天", -"冲掉": "衝掉", -"冲撞": "衝撞", -"冲击": "衝擊", -"冲散": "衝散", -"冲决": "衝決", -"冲浪": "衝浪", -"冲激": "衝激", -"冲破": "衝破", -"冲程": "衝程", -"冲突": "衝突", -"冲线": "衝線", -"冲着": "衝著", -"冲冲": "衝衝", -"冲要": "衝要", -"冲起": "衝起", -"冲进": "衝進", -"冲过": "衝過", -"冲锋": "衝鋒", -"表里": "表裡", -"袖里": "袖裡", -"被里": "被裡", -"被复": "被複", -"被复": "被覆", -"被复着": "被覆著", -"被发": "被髮", -"裁并": "裁併", -"裁制": "裁製", -"里面": "裏面", -"里人": "裡人", -"里加": "裡加", -"里外": "裡外", -"里子": "裡子", -"里屋": "裡屋", -"里层": "裡層", -"里布": "裡布", -"里带": "裡帶", -"里弦": "裡弦", -"里应外合": "裡應外合", -"里拉": "裡拉", -"里斯": "裡斯", -"里海": "裡海", -"里脊": "裡脊", -"里衣": "裡衣", -"里里": "裡裡", -"里通外国": "裡通外國", -"里通外敌": "裡通外敵", -"里边": "裡邊", -"里间": "裡間", -"里面": "裡面", -"里头": "裡頭", -"制件": "製件", -"制作": "製作", -"制做": "製做", -"制备": "製備", -"制冰": "製冰", -"制冷": "製冷", -"制剂": "製劑", -"制品": "製品", -"制图": "製圖", -"制成": "製成", -"制法": "製法", -"制为": "製為", -"制片": "製片", -"制版": "製版", -"制程": "製程", -"制糖": "製糖", -"制纸": "製紙", -"制药": "製藥", -"制表": "製表", -"制裁": "製裁", -"制造": "製造", -"制革": "製革", -"制鞋": "製鞋", -"制盐": "製鹽", -"复仞年如": "複仞年如", -"复以百万": "複以百萬", -"复位": "複位", -"复信": "複信", -"复分数": "複分數", -"复列": "複列", -"复利": "複利", -"复印": "複印", -"复原": "複原", -"复句": "複句", -"复合": "複合", -"复名": "複名", -"复员": "複員", -"复壁": "複壁", -"复壮": "複壯", -"复姓": "複姓", -"复字键": "複字鍵", -"复审": "複審", -"复写": "複寫", -"复式": "複式", -"复复": "複復", -"复数": "複數", -"复本": "複本", -"复查": "複查", -"复核": "複核", -"复检": "複檢", -"复次": "複次", -"复比": "複比", -"复决": "複決", -"复活": "複活", -"复测": "複測", -"复亩珍": "複畝珍", -"复发": "複發", -"复目": "複目", -"复眼": "複眼", -"复种": "複種", -"复线": "複線", -"复习": "複習", -"复兴社": "複興社", -"复旧": "複舊", -"复色": "複色", -"复叶": "複葉", -"复盖": "複蓋", -"复苏": "複蘇", -"复制": "複製", -"复诊": "複診", -"复词": "複詞", -"复试": "複試", -"复课": "複課", -"复议": "複議", -"复变函数": "複變函數", -"复赛": "複賽", -"复述": "複述", -"复选": "複選", -"复钱": "複錢", -"复杂": "複雜", -"复电": "複電", -"复音": "複音", -"复韵": "複韻", -"衬里": "襯裡", -"西岳": "西嶽", -"西征": "西征", -"西历": "西曆", -"要冲": "要衝", -"要么": "要麼", -"复上": "覆上", -"复亡": "覆亡", -"复住": "覆住", -"复信": "覆信", -"复命": "覆命", -"复在": "覆在", -"复审": "覆審", -"复成": "覆成", -"复败": "覆敗", -"复文": "覆文", -"复校": "覆校", -"复核": "覆核", -"覆水难收": "覆水難收", -"复没": "覆沒", -"复灭": "覆滅", -"复盆": "覆盆", -"复舟": "覆舟", -"复着": "覆著", -"复盖": "覆蓋", -"复盖着": "覆蓋著", -"复试": "覆試", -"复议": "覆議", -"复车": "覆車", -"复载": "覆載", -"复辙": "覆轍", -"复电": "覆電", -"见复": "見覆", -"亲征": "親征", -"观众台": "觀眾臺", -"观台": "觀臺", -"观象台": "觀象臺", -"角落里": "角落裡", -"觔斗": "觔斗", -"触须": "觸鬚", -"订制": "訂製", -"诉说着": "訴說著", -"词汇": "詞彙", -"试卷": "試卷", -"诗卷": "詩卷", -"话里有话": "話裡有話", -"志哀": "誌哀", -"志喜": "誌喜", -"志庆": "誌慶", -"语云": "語云", -"语汇": "語彙", -"诬蔑": "誣衊", -"诵经台": "誦經臺", -"说着": "說著", -"课征": "課征", -"调制": "調製", -"调频台": "調頻臺", -"请参阅": "請參閱", -"讲台": "講臺", -"谢绝参观": "謝絕參觀", -"护发": "護髮", -"雠隙": "讎隙", -"豆腐干": "豆腐干", -"竖着": "豎著", -"丰富多采": "豐富多采", -"丰滨": "豐濱", -"丰滨乡": "豐濱鄉", -"丰采": "豐采", -"象征着": "象徵著", -"贵干": "貴幹", -"贾后": "賈后", -"赈饥": "賑饑", -"贤后": "賢后", -"质朴": "質朴", -"赌台": "賭檯", -"购并": "購併", -"赤松": "赤鬆", -"起吊": "起吊", -"起复": "起複", -"赶制": "趕製", -"跌荡": "跌蕩", -"跟斗": "跟斗", -"跳荡": "跳蕩", -"跳表": "跳錶", -"踬仆": "躓仆", -"躯干": "軀幹", -"车库里": "車庫裡", -"车站里": "車站裡", -"车里": "車裡", -"轻松": "輕鬆", -"轮回": "輪迴", -"转台": "轉檯", -"辛丑": "辛丑", -"辟邪": "辟邪", -"办伙": "辦伙", -"办公台": "辦公檯", -"辞汇": "辭彙", -"农历": "農曆", -"迂回": "迂迴", -"近日里": "近日裡", -"迥然回异": "迥然迴異", -"回光返照": "迴光返照", -"回向": "迴向", -"回圈": "迴圈", -"回廊": "迴廊", -"回形夹": "迴形夾", -"回文": "迴文", -"回旋": "迴旋", -"回流": "迴流", -"回环": "迴環", -"回荡": "迴盪", -"回纹针": "迴紋針", -"回绕": "迴繞", -"回肠": "迴腸", -"回荡": "迴蕩", -"回诵": "迴誦", -"回路": "迴路", -"回转": "迴轉", -"回递性": "迴遞性", -"回避": "迴避", -"回响": "迴響", -"回风": "迴風", -"回首": "迴首", -"迷蒙": "迷濛", -"退伙": "退伙", -"这么着": "這么著", -"这里": "這裏", -"这里": "這裡", -"这只": "這隻", -"这么": "這麼", -"这么着": "這麼著", -"通心面": "通心麵", -"速食面": "速食麵", -"连系": "連繫", -"连台好戏": "連臺好戲", -"游荡": "遊蕩", -"遍布": "遍佈", -"递回": "遞迴", -"远征": "遠征", -"适才": "適纔", -"遮复": "遮覆", -"还冲": "還衝", -"邋里邋遢": "邋裡邋遢", -"那里": "那裡", -"那只": "那隻", -"那么": "那麼", -"那么着": "那麼著", -"邪辟": "邪辟", -"郁烈": "郁烈", -"郁穆": "郁穆", -"郁郁": "郁郁", -"郁闭": "郁閉", -"郁馥": "郁馥", -"乡愿": "鄉愿", -"乡里": "鄉裡", -"邻里": "鄰裡", -"配合着": "配合著", -"配制": "配製", -"酒杯": "酒盃", -"酒坛": "酒罈", -"酥松": "酥鬆", -"醋坛": "醋罈", -"酝借": "醞藉", -"酝酿着": "醞釀著", -"医药": "醫葯", -"醲郁": "醲郁", -"酿制": "釀製", -"采地": "采地", -"采女": "采女", -"采声": "采聲", -"采色": "采色", -"采邑": "采邑", -"里程表": "里程錶", -"重折": "重摺", -"重复": "重複", -"重复": "重覆", -"重锤": "重鎚", -"野台戏": "野臺戲", -"金斗": "金斗", -"金表": "金錶", -"金发": "金髮", -"金霉素": "金黴素", -"钉锤": "釘鎚", -"银朱": "銀硃", -"银发": "銀髮", -"铜制": "銅製", -"铝制": "鋁製", -"钢制": "鋼製", -"录着": "錄著", -"录制": "錄製", -"表带": "錶帶", -"表店": "錶店", -"表厂": "錶廠", -"表壳": "錶殼", -"表链": "錶鏈", -"表面": "錶面", -"锅台": "鍋臺", -"锻鍊出": "鍛鍊出", -"锻鍊身体": "鍛鍊身体", -"锲而不舍": "鍥而不捨", -"锤儿": "鎚兒", -"锤子": "鎚子", -"锤头": "鎚頭", -"链霉素": "鏈黴素", -"镜台": "鏡臺", -"锈病": "鏽病", -"锈菌": "鏽菌", -"锈蚀": "鏽蝕", -"钟表": "鐘錶", -"铁锤": "鐵鎚", -"铁锈": "鐵鏽", -"长征": "長征", -"长发": "長髮", -"长须鲸": "長鬚鯨", -"门帘": "門帘", -"门斗": "門斗", -"门里": "門裡", -"开伙": "開伙", -"开卷": "開卷", -"开诚布公": "開誠佈公", -"开采": "開采", -"閒情逸致": "閒情逸緻", -"閒荡": "閒蕩", -"间不容发": "間不容髮", -"闵采尔": "閔采爾", -"阅卷": "閱卷", -"阑干": "闌干", -"关系": "關係", -"关系着": "關係著", -"防御": "防禦", -"防锈": "防鏽", -"防台": "防颱", -"阿斗": "阿斗", -"阿里": "阿裡", -"除旧布新": "除舊佈新", -"阴干": "陰干", -"阴历": "陰曆", -"阴郁": "陰郁", -"陆征祥": "陸征祥", -"阳春面": "陽春麵", -"阳历": "陽曆", -"阳台": "陽臺", -"只字": "隻字", -"只影": "隻影", -"只手遮天": "隻手遮天", -"只眼": "隻眼", -"只言片语": "隻言片語", -"只身": "隻身", -"雅致": "雅緻", -"雇佣": "雇佣", -"双折": "雙摺", -"杂志": "雜誌", -"鸡丝": "雞絲", -"鸡丝面": "雞絲麵", -"鸡腿面": "雞腿麵", -"鸡只": "雞隻", -"难舍": "難捨", -"雪里": "雪裡", -"云须": "雲鬚", -"电子表": "電子錶", -"电台": "電臺", -"电冲": "電衝", -"电复": "電覆", -"电视台": "電視臺", -"电表": "電錶", -"震荡": "震蕩", -"雾里": "霧裡", -"露台": "露臺", -"灵台": "靈臺", -"青瓦台": "青瓦臺", -"青霉": "青黴", -"面朝着": "面朝著", -"面临着": "面臨著", -"鞋里": "鞋裡", -"鞣制": "鞣製", -"秋千": "鞦韆", -"鞭辟入里": "鞭辟入裡", -"韩国制": "韓國製", -"韩制": "韓製", -"预制": "預製", -"颁布": "頒佈", -"头里": "頭裡", -"头发": "頭髮", -"颊须": "頰鬚", -"颠仆": "顛仆", -"颠复": "顛複", -"颠复": "顛覆", -"显着标志": "顯著標志", -"风土志": "風土誌", -"风斗": "風斗", -"风物志": "風物誌", -"风里": "風裡", -"风采": "風采", -"台风": "颱風", -"刮了": "颳了", -"刮倒": "颳倒", -"刮去": "颳去", -"刮得": "颳得", -"刮着": "颳著", -"刮走": "颳走", -"刮起": "颳起", -"刮风": "颳風", -"飘荡": "飄蕩", -"饭团": "飯糰", -"饼干": "餅干", -"馄饨面": "餛飩麵", -"饥不择食": "饑不擇食", -"饥寒": "饑寒", -"饥民": "饑民", -"饥渴": "饑渴", -"饥溺": "饑溺", -"饥荒": "饑荒", -"饥饱": "饑飽", -"饥饿": "饑餓", -"饥馑": "饑饉", -"首当其冲": "首當其衝", -"香郁": "香郁", -"馥郁": "馥郁", -"马里": "馬裡", -"马表": "馬錶", -"骀荡": "駘蕩", -"腾冲": "騰衝", -"骨子里": "骨子裡", -"骨干": "骨幹", -"骨灰坛": "骨灰罈", -"肮脏": "骯髒", -"脏乱": "髒亂", -"脏兮兮": "髒兮兮", -"脏字": "髒字", -"脏得": "髒得", -"脏东西": "髒東西", -"脏水": "髒水", -"脏的": "髒的", -"脏话": "髒話", -"脏钱": "髒錢", -"高干": "高幹", -"高台": "高臺", -"髭须": "髭鬚", -"发型": "髮型", -"发夹": "髮夾", -"发妻": "髮妻", -"发姐": "髮姐", -"发带": "髮帶", -"发廊": "髮廊", -"发式": "髮式", -"发指": "髮指", -"发捲": "髮捲", -"发根": "髮根", -"发毛": "髮毛", -"发油": "髮油", -"发状": "髮狀", -"发短心长": "髮短心長", -"发端": "髮端", -"发结": "髮結", -"发丝": "髮絲", -"发网": "髮網", -"发肤": "髮膚", -"发胶": "髮膠", -"发菜": "髮菜", -"发蜡": "髮蠟", -"发辫": "髮辮", -"发针": "髮針", -"发长": "髮長", -"发际": "髮際", -"发霜": "髮霜", -"发髻": "髮髻", -"发鬓": "髮鬢", -"鬅松": "鬅鬆", -"松了": "鬆了", -"松些": "鬆些", -"松劲": "鬆勁", -"松动": "鬆動", -"松口": "鬆口", -"松土": "鬆土", -"松弛": "鬆弛", -"松快": "鬆快", -"松懈": "鬆懈", -"松手": "鬆手", -"松散": "鬆散", -"松林": "鬆林", -"松柔": "鬆柔", -"松毛虫": "鬆毛蟲", -"松浮": "鬆浮", -"松涛": "鬆濤", -"松科": "鬆科", -"松节油": "鬆節油", -"松绑": "鬆綁", -"松紧": "鬆緊", -"松缓": "鬆緩", -"松脆": "鬆脆", -"松脱": "鬆脫", -"松起": "鬆起", -"松软": "鬆軟", -"松通": "鬆通", -"松开": "鬆開", -"松饼": "鬆餅", -"松松": "鬆鬆", -"鬈发": "鬈髮", -"胡子": "鬍子", -"胡梢": "鬍梢", -"胡渣": "鬍渣", -"胡髭": "鬍髭", -"胡须": "鬍鬚", -"须根": "鬚根", -"须毛": "鬚毛", -"须生": "鬚生", -"须眉": "鬚眉", -"须发": "鬚髮", -"须须": "鬚鬚", -"鬓发": "鬢髮", -"斗着": "鬥著", -"闹着玩儿": "鬧著玩儿", -"闹着玩儿": "鬧著玩兒", -"郁郁": "鬱郁", -"鱼松": "魚鬆", -"鲸须": "鯨鬚", -"鲇鱼": "鯰魚", -"鹤发": "鶴髮", -"卤化": "鹵化", -"卤味": "鹵味", -"卤族": "鹵族", -"卤水": "鹵水", -"卤汁": "鹵汁", -"卤簿": "鹵簿", -"卤素": "鹵素", -"卤莽": "鹵莽", -"卤钝": "鹵鈍", -"咸味": "鹹味", -"咸土": "鹹土", -"咸度": "鹹度", -"咸得": "鹹得", -"咸水": "鹹水", -"咸海": "鹹海", -"咸淡": "鹹淡", -"咸湖": "鹹湖", -"咸汤": "鹹湯", -"咸的": "鹹的", -"咸肉": "鹹肉", -"咸菜": "鹹菜", -"咸蛋": "鹹蛋", -"咸猪肉": "鹹豬肉", -"咸类": "鹹類", -"咸鱼": "鹹魚", -"咸鸭蛋": "鹹鴨蛋", -"咸卤": "鹹鹵", -"咸咸": "鹹鹹", -"盐卤": "鹽鹵", -"面价": "麵價", -"面包": "麵包", -"面团": "麵團", -"面店": "麵店", -"面厂": "麵廠", -"面杖": "麵杖", -"面条": "麵條", -"面灰": "麵灰", -"面皮": "麵皮", -"面筋": "麵筋", -"面粉": "麵粉", -"面糊": "麵糊", -"面线": "麵線", -"面茶": "麵茶", -"面食": "麵食", -"面饺": "麵餃", -"面饼": "麵餅", -"麻酱面": "麻醬麵", -"黄历": "黃曆", -"黄发垂髫": "黃髮垂髫", -"黑发": "黑髮", -"黑松": "黑鬆", -"霉毒": "黴毒", -"霉菌": "黴菌", -"鼓里": "鼓裡", -"冬冬": "鼕鼕", -"龙卷": "龍卷", -"龙须": "龍鬚", -} - -zh2Hans = { -'顯著': '显著', -'土著': '土著', -'印表機': '打印机', -'說明檔案': '帮助文件', -"瀋": "沈", -"畫": "划", -"鍾": "钟", -"靦": "腼", -"餘": "余", -"鯰": "鲇", -"鹼": "碱", -"㠏": "㟆", -"𡞵": "㛟", -"万": "万", -"与": "与", -"丑": "丑", -"丟": "丢", -"並": "并", -"丰": "丰", -"么": "么", -"乾": "干", -"乾坤": "乾坤", -"乾隆": "乾隆", -"亂": "乱", -"云": "云", -"亙": "亘", -"亞": "亚", -"仆": "仆", -"价": "价", -"伙": "伙", -"佇": "伫", -"佈": "布", -"体": "体", -"余": "余", -"佣": "佣", -"併": "并", -"來": "来", -"侖": "仑", -"侶": "侣", -"俁": "俣", -"係": "系", -"俔": "伣", -"俠": "侠", -"倀": "伥", -"倆": "俩", -"倈": "俫", -"倉": "仓", -"個": "个", -"們": "们", -"倫": "伦", -"偉": "伟", -"側": "侧", -"偵": "侦", -"偽": "伪", -"傑": "杰", -"傖": "伧", -"傘": "伞", -"備": "备", -"傢": "家", -"傭": "佣", -"傯": "偬", -"傳": "传", -"傴": "伛", -"債": "债", -"傷": "伤", -"傾": "倾", -"僂": "偻", -"僅": "仅", -"僉": "佥", -"僑": "侨", -"僕": "仆", -"僞": "伪", -"僥": "侥", -"僨": "偾", -"價": "价", -"儀": "仪", -"儂": "侬", -"億": "亿", -"儈": "侩", -"儉": "俭", -"儐": "傧", -"儔": "俦", -"儕": "侪", -"儘": "尽", -"償": "偿", -"優": "优", -"儲": "储", -"儷": "俪", -"儸": "㑩", -"儺": "傩", -"儻": "傥", -"儼": "俨", -"儿": "儿", -"兇": "凶", -"兌": "兑", -"兒": "儿", -"兗": "兖", -"党": "党", -"內": "内", -"兩": "两", -"冊": "册", -"冪": "幂", -"准": "准", -"凈": "净", -"凍": "冻", -"凜": "凛", -"几": "几", -"凱": "凯", -"划": "划", -"別": "别", -"刪": "删", -"剄": "刭", -"則": "则", -"剋": "克", -"剎": "刹", -"剗": "刬", -"剛": "刚", -"剝": "剥", -"剮": "剐", -"剴": "剀", -"創": "创", -"劃": "划", -"劇": "剧", -"劉": "刘", -"劊": "刽", -"劌": "刿", -"劍": "剑", -"劏": "㓥", -"劑": "剂", -"劚": "㔉", -"勁": "劲", -"動": "动", -"務": "务", -"勛": "勋", -"勝": "胜", -"勞": "劳", -"勢": "势", -"勩": "勚", -"勱": "劢", -"勵": "励", -"勸": "劝", -"勻": "匀", -"匭": "匦", -"匯": "汇", -"匱": "匮", -"區": "区", -"協": "协", -"卷": "卷", -"卻": "却", -"厂": "厂", -"厙": "厍", -"厠": "厕", -"厭": "厌", -"厲": "厉", -"厴": "厣", -"參": "参", -"叄": "叁", -"叢": "丛", -"台": "台", -"叶": "叶", -"吊": "吊", -"后": "后", -"吳": "吴", -"吶": "呐", -"呂": "吕", -"獃": "呆", -"咼": "呙", -"員": "员", -"唄": "呗", -"唚": "吣", -"問": "问", -"啓": "启", -"啞": "哑", -"啟": "启", -"啢": "唡", -"喎": "㖞", -"喚": "唤", -"喪": "丧", -"喬": "乔", -"單": "单", -"喲": "哟", -"嗆": "呛", -"嗇": "啬", -"嗊": "唝", -"嗎": "吗", -"嗚": "呜", -"嗩": "唢", -"嗶": "哔", -"嘆": "叹", -"嘍": "喽", -"嘔": "呕", -"嘖": "啧", -"嘗": "尝", -"嘜": "唛", -"嘩": "哗", -"嘮": "唠", -"嘯": "啸", -"嘰": "叽", -"嘵": "哓", -"嘸": "呒", -"嘽": "啴", -"噁": "恶", -"噓": "嘘", -"噚": "㖊", -"噝": "咝", -"噠": "哒", -"噥": "哝", -"噦": "哕", -"噯": "嗳", -"噲": "哙", -"噴": "喷", -"噸": "吨", -"噹": "当", -"嚀": "咛", -"嚇": "吓", -"嚌": "哜", -"嚕": "噜", -"嚙": "啮", -"嚥": "咽", -"嚦": "呖", -"嚨": "咙", -"嚮": "向", -"嚲": "亸", -"嚳": "喾", -"嚴": "严", -"嚶": "嘤", -"囀": "啭", -"囁": "嗫", -"囂": "嚣", -"囅": "冁", -"囈": "呓", -"囌": "苏", -"囑": "嘱", -"囪": "囱", -"圇": "囵", -"國": "国", -"圍": "围", -"園": "园", -"圓": "圆", -"圖": "图", -"團": "团", -"坏": "坏", -"垵": "埯", -"埡": "垭", -"埰": "采", -"執": "执", -"堅": "坚", -"堊": "垩", -"堖": "垴", -"堝": "埚", -"堯": "尧", -"報": "报", -"場": "场", -"塊": "块", -"塋": "茔", -"塏": "垲", -"塒": "埘", -"塗": "涂", -"塚": "冢", -"塢": "坞", -"塤": "埙", -"塵": "尘", -"塹": "堑", -"墊": "垫", -"墜": "坠", -"墮": "堕", -"墳": "坟", -"墻": "墙", -"墾": "垦", -"壇": "坛", -"壈": "𡒄", -"壋": "垱", -"壓": "压", -"壘": "垒", -"壙": "圹", -"壚": "垆", -"壞": "坏", -"壟": "垄", -"壠": "垅", -"壢": "坜", -"壩": "坝", -"壯": "壮", -"壺": "壶", -"壼": "壸", -"壽": "寿", -"夠": "够", -"夢": "梦", -"夾": "夹", -"奐": "奂", -"奧": "奥", -"奩": "奁", -"奪": "夺", -"奬": "奖", -"奮": "奋", -"奼": "姹", -"妝": "妆", -"姍": "姗", -"姜": "姜", -"姦": "奸", -"娛": "娱", -"婁": "娄", -"婦": "妇", -"婭": "娅", -"媧": "娲", -"媯": "妫", -"媼": "媪", -"媽": "妈", -"嫗": "妪", -"嫵": "妩", -"嫻": "娴", -"嫿": "婳", -"嬀": "妫", -"嬈": "娆", -"嬋": "婵", -"嬌": "娇", -"嬙": "嫱", -"嬡": "嫒", -"嬤": "嬷", -"嬪": "嫔", -"嬰": "婴", -"嬸": "婶", -"孌": "娈", -"孫": "孙", -"學": "学", -"孿": "孪", -"宁": "宁", -"宮": "宫", -"寢": "寝", -"實": "实", -"寧": "宁", -"審": "审", -"寫": "写", -"寬": "宽", -"寵": "宠", -"寶": "宝", -"將": "将", -"專": "专", -"尋": "寻", -"對": "对", -"導": "导", -"尷": "尴", -"屆": "届", -"屍": "尸", -"屓": "屃", -"屜": "屉", -"屢": "屡", -"層": "层", -"屨": "屦", -"屬": "属", -"岡": "冈", -"峴": "岘", -"島": "岛", -"峽": "峡", -"崍": "崃", -"崗": "岗", -"崢": "峥", -"崬": "岽", -"嵐": "岚", -"嶁": "嵝", -"嶄": "崭", -"嶇": "岖", -"嶔": "嵚", -"嶗": "崂", -"嶠": "峤", -"嶢": "峣", -"嶧": "峄", -"嶮": "崄", -"嶴": "岙", -"嶸": "嵘", -"嶺": "岭", -"嶼": "屿", -"嶽": "岳", -"巋": "岿", -"巒": "峦", -"巔": "巅", -"巰": "巯", -"帘": "帘", -"帥": "帅", -"師": "师", -"帳": "帐", -"帶": "带", -"幀": "帧", -"幃": "帏", -"幗": "帼", -"幘": "帻", -"幟": "帜", -"幣": "币", -"幫": "帮", -"幬": "帱", -"幹": "干", -"幺": "么", -"幾": "几", -"广": "广", -"庫": "库", -"廁": "厕", -"廂": "厢", -"廄": "厩", -"廈": "厦", -"廚": "厨", -"廝": "厮", -"廟": "庙", -"廠": "厂", -"廡": "庑", -"廢": "废", -"廣": "广", -"廩": "廪", -"廬": "庐", -"廳": "厅", -"弒": "弑", -"弳": "弪", -"張": "张", -"強": "强", -"彆": "别", -"彈": "弹", -"彌": "弥", -"彎": "弯", -"彙": "汇", -"彞": "彝", -"彥": "彦", -"征": "征", -"後": "后", -"徑": "径", -"從": "从", -"徠": "徕", -"復": "复", -"徵": "征", -"徹": "彻", -"志": "志", -"恆": "恒", -"恥": "耻", -"悅": "悦", -"悞": "悮", -"悵": "怅", -"悶": "闷", -"惡": "恶", -"惱": "恼", -"惲": "恽", -"惻": "恻", -"愛": "爱", -"愜": "惬", -"愨": "悫", -"愴": "怆", -"愷": "恺", -"愾": "忾", -"愿": "愿", -"慄": "栗", -"態": "态", -"慍": "愠", -"慘": "惨", -"慚": "惭", -"慟": "恸", -"慣": "惯", -"慤": "悫", -"慪": "怄", -"慫": "怂", -"慮": "虑", -"慳": "悭", -"慶": "庆", -"憂": "忧", -"憊": "惫", -"憐": "怜", -"憑": "凭", -"憒": "愦", -"憚": "惮", -"憤": "愤", -"憫": "悯", -"憮": "怃", -"憲": "宪", -"憶": "忆", -"懇": "恳", -"應": "应", -"懌": "怿", -"懍": "懔", -"懞": "蒙", -"懟": "怼", -"懣": "懑", -"懨": "恹", -"懲": "惩", -"懶": "懒", -"懷": "怀", -"懸": "悬", -"懺": "忏", -"懼": "惧", -"懾": "慑", -"戀": "恋", -"戇": "戆", -"戔": "戋", -"戧": "戗", -"戩": "戬", -"戰": "战", -"戱": "戯", -"戲": "戏", -"戶": "户", -"担": "担", -"拋": "抛", -"挩": "捝", -"挾": "挟", -"捨": "舍", -"捫": "扪", -"据": "据", -"掃": "扫", -"掄": "抡", -"掗": "挜", -"掙": "挣", -"掛": "挂", -"採": "采", -"揀": "拣", -"揚": "扬", -"換": "换", -"揮": "挥", -"損": "损", -"搖": "摇", -"搗": "捣", -"搵": "揾", -"搶": "抢", -"摑": "掴", -"摜": "掼", -"摟": "搂", -"摯": "挚", -"摳": "抠", -"摶": "抟", -"摺": "折", -"摻": "掺", -"撈": "捞", -"撏": "挦", -"撐": "撑", -"撓": "挠", -"撝": "㧑", -"撟": "挢", -"撣": "掸", -"撥": "拨", -"撫": "抚", -"撲": "扑", -"撳": "揿", -"撻": "挞", -"撾": "挝", -"撿": "捡", -"擁": "拥", -"擄": "掳", -"擇": "择", -"擊": "击", -"擋": "挡", -"擓": "㧟", -"擔": "担", -"據": "据", -"擠": "挤", -"擬": "拟", -"擯": "摈", -"擰": "拧", -"擱": "搁", -"擲": "掷", -"擴": "扩", -"擷": "撷", -"擺": "摆", -"擻": "擞", -"擼": "撸", -"擾": "扰", -"攄": "摅", -"攆": "撵", -"攏": "拢", -"攔": "拦", -"攖": "撄", -"攙": "搀", -"攛": "撺", -"攜": "携", -"攝": "摄", -"攢": "攒", -"攣": "挛", -"攤": "摊", -"攪": "搅", -"攬": "揽", -"敗": "败", -"敘": "叙", -"敵": "敌", -"數": "数", -"斂": "敛", -"斃": "毙", -"斕": "斓", -"斗": "斗", -"斬": "斩", -"斷": "断", -"於": "于", -"時": "时", -"晉": "晋", -"晝": "昼", -"暈": "晕", -"暉": "晖", -"暘": "旸", -"暢": "畅", -"暫": "暂", -"曄": "晔", -"曆": "历", -"曇": "昙", -"曉": "晓", -"曏": "向", -"曖": "暧", -"曠": "旷", -"曨": "昽", -"曬": "晒", -"書": "书", -"會": "会", -"朧": "胧", -"朮": "术", -"术": "术", -"朴": "朴", -"東": "东", -"杴": "锨", -"极": "极", -"柜": "柜", -"柵": "栅", -"桿": "杆", -"梔": "栀", -"梘": "枧", -"條": "条", -"梟": "枭", -"梲": "棁", -"棄": "弃", -"棖": "枨", -"棗": "枣", -"棟": "栋", -"棧": "栈", -"棲": "栖", -"棶": "梾", -"椏": "桠", -"楊": "杨", -"楓": "枫", -"楨": "桢", -"業": "业", -"極": "极", -"榪": "杩", -"榮": "荣", -"榲": "榅", -"榿": "桤", -"構": "构", -"槍": "枪", -"槤": "梿", -"槧": "椠", -"槨": "椁", -"槳": "桨", -"樁": "桩", -"樂": "乐", -"樅": "枞", -"樓": "楼", -"標": "标", -"樞": "枢", -"樣": "样", -"樸": "朴", -"樹": "树", -"樺": "桦", -"橈": "桡", -"橋": "桥", -"機": "机", -"橢": "椭", -"橫": "横", -"檁": "檩", -"檉": "柽", -"檔": "档", -"檜": "桧", -"檟": "槚", -"檢": "检", -"檣": "樯", -"檮": "梼", -"檯": "台", -"檳": "槟", -"檸": "柠", -"檻": "槛", -"櫃": "柜", -"櫓": "橹", -"櫚": "榈", -"櫛": "栉", -"櫝": "椟", -"櫞": "橼", -"櫟": "栎", -"櫥": "橱", -"櫧": "槠", -"櫨": "栌", -"櫪": "枥", -"櫫": "橥", -"櫬": "榇", -"櫱": "蘖", -"櫳": "栊", -"櫸": "榉", -"櫻": "樱", -"欄": "栏", -"權": "权", -"欏": "椤", -"欒": "栾", -"欖": "榄", -"欞": "棂", -"欽": "钦", -"歐": "欧", -"歟": "欤", -"歡": "欢", -"歲": "岁", -"歷": "历", -"歸": "归", -"歿": "殁", -"殘": "残", -"殞": "殒", -"殤": "殇", -"殨": "㱮", -"殫": "殚", -"殮": "殓", -"殯": "殡", -"殰": "㱩", -"殲": "歼", -"殺": "杀", -"殻": "壳", -"殼": "壳", -"毀": "毁", -"毆": "殴", -"毿": "毵", -"氂": "牦", -"氈": "毡", -"氌": "氇", -"氣": "气", -"氫": "氢", -"氬": "氩", -"氳": "氲", -"汙": "污", -"決": "决", -"沒": "没", -"沖": "冲", -"況": "况", -"洶": "汹", -"浹": "浃", -"涂": "涂", -"涇": "泾", -"涼": "凉", -"淀": "淀", -"淒": "凄", -"淚": "泪", -"淥": "渌", -"淨": "净", -"淩": "凌", -"淪": "沦", -"淵": "渊", -"淶": "涞", -"淺": "浅", -"渙": "涣", -"減": "减", -"渦": "涡", -"測": "测", -"渾": "浑", -"湊": "凑", -"湞": "浈", -"湯": "汤", -"溈": "沩", -"準": "准", -"溝": "沟", -"溫": "温", -"滄": "沧", -"滅": "灭", -"滌": "涤", -"滎": "荥", -"滬": "沪", -"滯": "滞", -"滲": "渗", -"滷": "卤", -"滸": "浒", -"滻": "浐", -"滾": "滚", -"滿": "满", -"漁": "渔", -"漚": "沤", -"漢": "汉", -"漣": "涟", -"漬": "渍", -"漲": "涨", -"漵": "溆", -"漸": "渐", -"漿": "浆", -"潁": "颍", -"潑": "泼", -"潔": "洁", -"潙": "沩", -"潛": "潜", -"潤": "润", -"潯": "浔", -"潰": "溃", -"潷": "滗", -"潿": "涠", -"澀": "涩", -"澆": "浇", -"澇": "涝", -"澐": "沄", -"澗": "涧", -"澠": "渑", -"澤": "泽", -"澦": "滪", -"澩": "泶", -"澮": "浍", -"澱": "淀", -"濁": "浊", -"濃": "浓", -"濕": "湿", -"濘": "泞", -"濛": "蒙", -"濟": "济", -"濤": "涛", -"濫": "滥", -"濰": "潍", -"濱": "滨", -"濺": "溅", -"濼": "泺", -"濾": "滤", -"瀅": "滢", -"瀆": "渎", -"瀇": "㲿", -"瀉": "泻", -"瀋": "沈", -"瀏": "浏", -"瀕": "濒", -"瀘": "泸", -"瀝": "沥", -"瀟": "潇", -"瀠": "潆", -"瀦": "潴", -"瀧": "泷", -"瀨": "濑", -"瀰": "弥", -"瀲": "潋", -"瀾": "澜", -"灃": "沣", -"灄": "滠", -"灑": "洒", -"灕": "漓", -"灘": "滩", -"灝": "灏", -"灠": "漤", -"灣": "湾", -"灤": "滦", -"灧": "滟", -"災": "灾", -"為": "为", -"烏": "乌", -"烴": "烃", -"無": "无", -"煉": "炼", -"煒": "炜", -"煙": "烟", -"煢": "茕", -"煥": "焕", -"煩": "烦", -"煬": "炀", -"煱": "㶽", -"熅": "煴", -"熒": "荧", -"熗": "炝", -"熱": "热", -"熲": "颎", -"熾": "炽", -"燁": "烨", -"燈": "灯", -"燉": "炖", -"燒": "烧", -"燙": "烫", -"燜": "焖", -"營": "营", -"燦": "灿", -"燭": "烛", -"燴": "烩", -"燶": "㶶", -"燼": "烬", -"燾": "焘", -"爍": "烁", -"爐": "炉", -"爛": "烂", -"爭": "争", -"爲": "为", -"爺": "爷", -"爾": "尔", -"牆": "墙", -"牘": "牍", -"牽": "牵", -"犖": "荦", -"犢": "犊", -"犧": "牺", -"狀": "状", -"狹": "狭", -"狽": "狈", -"猙": "狰", -"猶": "犹", -"猻": "狲", -"獁": "犸", -"獄": "狱", -"獅": "狮", -"獎": "奖", -"獨": "独", -"獪": "狯", -"獫": "猃", -"獮": "狝", -"獰": "狞", -"獱": "㺍", -"獲": "获", -"獵": "猎", -"獷": "犷", -"獸": "兽", -"獺": "獭", -"獻": "献", -"獼": "猕", -"玀": "猡", -"現": "现", -"琺": "珐", -"琿": "珲", -"瑋": "玮", -"瑒": "玚", -"瑣": "琐", -"瑤": "瑶", -"瑩": "莹", -"瑪": "玛", -"瑲": "玱", -"璉": "琏", -"璣": "玑", -"璦": "瑷", -"璫": "珰", -"環": "环", -"璽": "玺", -"瓊": "琼", -"瓏": "珑", -"瓔": "璎", -"瓚": "瓒", -"甌": "瓯", -"產": "产", -"産": "产", -"畝": "亩", -"畢": "毕", -"異": "异", -"畵": "画", -"當": "当", -"疇": "畴", -"疊": "叠", -"痙": "痉", -"痾": "疴", -"瘂": "痖", -"瘋": "疯", -"瘍": "疡", -"瘓": "痪", -"瘞": "瘗", -"瘡": "疮", -"瘧": "疟", -"瘮": "瘆", -"瘲": "疭", -"瘺": "瘘", -"瘻": "瘘", -"療": "疗", -"癆": "痨", -"癇": "痫", -"癉": "瘅", -"癘": "疠", -"癟": "瘪", -"癢": "痒", -"癤": "疖", -"癥": "症", -"癧": "疬", -"癩": "癞", -"癬": "癣", -"癭": "瘿", -"癮": "瘾", -"癰": "痈", -"癱": "瘫", -"癲": "癫", -"發": "发", -"皚": "皑", -"皰": "疱", -"皸": "皲", -"皺": "皱", -"盃": "杯", -"盜": "盗", -"盞": "盏", -"盡": "尽", -"監": "监", -"盤": "盘", -"盧": "卢", -"盪": "荡", -"眥": "眦", -"眾": "众", -"睏": "困", -"睜": "睁", -"睞": "睐", -"瞘": "眍", -"瞜": "䁖", -"瞞": "瞒", -"瞭": "了", -"瞶": "瞆", -"瞼": "睑", -"矇": "蒙", -"矓": "眬", -"矚": "瞩", -"矯": "矫", -"硃": "朱", -"硜": "硁", -"硤": "硖", -"硨": "砗", -"确": "确", -"硯": "砚", -"碩": "硕", -"碭": "砀", -"碸": "砜", -"確": "确", -"碼": "码", -"磑": "硙", -"磚": "砖", -"磣": "碜", -"磧": "碛", -"磯": "矶", -"磽": "硗", -"礆": "硷", -"礎": "础", -"礙": "碍", -"礦": "矿", -"礪": "砺", -"礫": "砾", -"礬": "矾", -"礱": "砻", -"祿": "禄", -"禍": "祸", -"禎": "祯", -"禕": "祎", -"禡": "祃", -"禦": "御", -"禪": "禅", -"禮": "礼", -"禰": "祢", -"禱": "祷", -"禿": "秃", -"秈": "籼", -"种": "种", -"稅": "税", -"稈": "秆", -"稏": "䅉", -"稟": "禀", -"種": "种", -"稱": "称", -"穀": "谷", -"穌": "稣", -"積": "积", -"穎": "颖", -"穠": "秾", -"穡": "穑", -"穢": "秽", -"穩": "稳", -"穫": "获", -"穭": "稆", -"窩": "窝", -"窪": "洼", -"窮": "穷", -"窯": "窑", -"窵": "窎", -"窶": "窭", -"窺": "窥", -"竄": "窜", -"竅": "窍", -"竇": "窦", -"竈": "灶", -"竊": "窃", -"竪": "竖", -"競": "竞", -"筆": "笔", -"筍": "笋", -"筑": "筑", -"筧": "笕", -"筴": "䇲", -"箋": "笺", -"箏": "筝", -"節": "节", -"範": "范", -"築": "筑", -"篋": "箧", -"篔": "筼", -"篤": "笃", -"篩": "筛", -"篳": "筚", -"簀": "箦", -"簍": "篓", -"簞": "箪", -"簡": "简", -"簣": "篑", -"簫": "箫", -"簹": "筜", -"簽": "签", -"簾": "帘", -"籃": "篮", -"籌": "筹", -"籖": "签", -"籙": "箓", -"籜": "箨", -"籟": "籁", -"籠": "笼", -"籩": "笾", -"籪": "簖", -"籬": "篱", -"籮": "箩", -"籲": "吁", -"粵": "粤", -"糝": "糁", -"糞": "粪", -"糧": "粮", -"糰": "团", -"糲": "粝", -"糴": "籴", -"糶": "粜", -"糹": "纟", -"糾": "纠", -"紀": "纪", -"紂": "纣", -"約": "约", -"紅": "红", -"紆": "纡", -"紇": "纥", -"紈": "纨", -"紉": "纫", -"紋": "纹", -"納": "纳", -"紐": "纽", -"紓": "纾", -"純": "纯", -"紕": "纰", -"紖": "纼", -"紗": "纱", -"紘": "纮", -"紙": "纸", -"級": "级", -"紛": "纷", -"紜": "纭", -"紝": "纴", -"紡": "纺", -"紬": "䌷", -"細": "细", -"紱": "绂", -"紲": "绁", -"紳": "绅", -"紵": "纻", -"紹": "绍", -"紺": "绀", -"紼": "绋", -"紿": "绐", -"絀": "绌", -"終": "终", -"組": "组", -"絅": "䌹", -"絆": "绊", -"絎": "绗", -"結": "结", -"絕": "绝", -"絛": "绦", -"絝": "绔", -"絞": "绞", -"絡": "络", -"絢": "绚", -"給": "给", -"絨": "绒", -"絰": "绖", -"統": "统", -"絲": "丝", -"絳": "绛", -"絶": "绝", -"絹": "绢", -"綁": "绑", -"綃": "绡", -"綆": "绠", -"綈": "绨", -"綉": "绣", -"綌": "绤", -"綏": "绥", -"綐": "䌼", -"經": "经", -"綜": "综", -"綞": "缍", -"綠": "绿", -"綢": "绸", -"綣": "绻", -"綫": "线", -"綬": "绶", -"維": "维", -"綯": "绹", -"綰": "绾", -"綱": "纲", -"網": "网", -"綳": "绷", -"綴": "缀", -"綵": "䌽", -"綸": "纶", -"綹": "绺", -"綺": "绮", -"綻": "绽", -"綽": "绰", -"綾": "绫", -"綿": "绵", -"緄": "绲", -"緇": "缁", -"緊": "紧", -"緋": "绯", -"緑": "绿", -"緒": "绪", -"緓": "绬", -"緔": "绱", -"緗": "缃", -"緘": "缄", -"緙": "缂", -"線": "线", -"緝": "缉", -"緞": "缎", -"締": "缔", -"緡": "缗", -"緣": "缘", -"緦": "缌", -"編": "编", -"緩": "缓", -"緬": "缅", -"緯": "纬", -"緱": "缑", -"緲": "缈", -"練": "练", -"緶": "缏", -"緹": "缇", -"緻": "致", -"縈": "萦", -"縉": "缙", -"縊": "缢", -"縋": "缒", -"縐": "绉", -"縑": "缣", -"縕": "缊", -"縗": "缞", -"縛": "缚", -"縝": "缜", -"縞": "缟", -"縟": "缛", -"縣": "县", -"縧": "绦", -"縫": "缝", -"縭": "缡", -"縮": "缩", -"縱": "纵", -"縲": "缧", -"縳": "䌸", -"縴": "纤", -"縵": "缦", -"縶": "絷", -"縷": "缕", -"縹": "缥", -"總": "总", -"績": "绩", -"繃": "绷", -"繅": "缫", -"繆": "缪", -"繒": "缯", -"織": "织", -"繕": "缮", -"繚": "缭", -"繞": "绕", -"繡": "绣", -"繢": "缋", -"繩": "绳", -"繪": "绘", -"繫": "系", -"繭": "茧", -"繮": "缰", -"繯": "缳", -"繰": "缲", -"繳": "缴", -"繸": "䍁", -"繹": "绎", -"繼": "继", -"繽": "缤", -"繾": "缱", -"繿": "䍀", -"纈": "缬", -"纊": "纩", -"續": "续", -"纍": "累", -"纏": "缠", -"纓": "缨", -"纔": "才", -"纖": "纤", -"纘": "缵", -"纜": "缆", -"缽": "钵", -"罈": "坛", -"罌": "罂", -"罰": "罚", -"罵": "骂", -"罷": "罢", -"羅": "罗", -"羆": "罴", -"羈": "羁", -"羋": "芈", -"羥": "羟", -"義": "义", -"習": "习", -"翹": "翘", -"耬": "耧", -"耮": "耢", -"聖": "圣", -"聞": "闻", -"聯": "联", -"聰": "聪", -"聲": "声", -"聳": "耸", -"聵": "聩", -"聶": "聂", -"職": "职", -"聹": "聍", -"聽": "听", -"聾": "聋", -"肅": "肃", -"胜": "胜", -"脅": "胁", -"脈": "脉", -"脛": "胫", -"脫": "脱", -"脹": "胀", -"腊": "腊", -"腎": "肾", -"腖": "胨", -"腡": "脶", -"腦": "脑", -"腫": "肿", -"腳": "脚", -"腸": "肠", -"膃": "腽", -"膚": "肤", -"膠": "胶", -"膩": "腻", -"膽": "胆", -"膾": "脍", -"膿": "脓", -"臉": "脸", -"臍": "脐", -"臏": "膑", -"臘": "腊", -"臚": "胪", -"臟": "脏", -"臠": "脔", -"臢": "臜", -"臥": "卧", -"臨": "临", -"臺": "台", -"與": "与", -"興": "兴", -"舉": "举", -"舊": "旧", -"艙": "舱", -"艤": "舣", -"艦": "舰", -"艫": "舻", -"艱": "艰", -"艷": "艳", -"芻": "刍", -"苧": "苎", -"苹": "苹", -"范": "范", -"茲": "兹", -"荊": "荆", -"莊": "庄", -"莖": "茎", -"莢": "荚", -"莧": "苋", -"華": "华", -"萇": "苌", -"萊": "莱", -"萬": "万", -"萵": "莴", -"葉": "叶", -"葒": "荭", -"著名": "著名", -"葤": "荮", -"葦": "苇", -"葯": "药", -"葷": "荤", -"蒓": "莼", -"蒔": "莳", -"蒞": "莅", -"蒼": "苍", -"蓀": "荪", -"蓋": "盖", -"蓮": "莲", -"蓯": "苁", -"蓴": "莼", -"蓽": "荜", -"蔔": "卜", -"蔞": "蒌", -"蔣": "蒋", -"蔥": "葱", -"蔦": "茑", -"蔭": "荫", -"蕁": "荨", -"蕆": "蒇", -"蕎": "荞", -"蕒": "荬", -"蕓": "芸", -"蕕": "莸", -"蕘": "荛", -"蕢": "蒉", -"蕩": "荡", -"蕪": "芜", -"蕭": "萧", -"蕷": "蓣", -"薀": "蕰", -"薈": "荟", -"薊": "蓟", -"薌": "芗", -"薔": "蔷", -"薘": "荙", -"薟": "莶", -"薦": "荐", -"薩": "萨", -"薳": "䓕", -"薴": "苧", -"薺": "荠", -"藉": "借", -"藍": "蓝", -"藎": "荩", -"藝": "艺", -"藥": "药", -"藪": "薮", -"藴": "蕴", -"藶": "苈", -"藹": "蔼", -"藺": "蔺", -"蘄": "蕲", -"蘆": "芦", -"蘇": "苏", -"蘊": "蕴", -"蘋": "苹", -"蘚": "藓", -"蘞": "蔹", -"蘢": "茏", -"蘭": "兰", -"蘺": "蓠", -"蘿": "萝", -"虆": "蔂", -"處": "处", -"虛": "虚", -"虜": "虏", -"號": "号", -"虧": "亏", -"虫": "虫", -"虯": "虬", -"蛺": "蛱", -"蛻": "蜕", -"蜆": "蚬", -"蜡": "蜡", -"蝕": "蚀", -"蝟": "猬", -"蝦": "虾", -"蝸": "蜗", -"螄": "蛳", -"螞": "蚂", -"螢": "萤", -"螮": "䗖", -"螻": "蝼", -"螿": "螀", -"蟄": "蛰", -"蟈": "蝈", -"蟎": "螨", -"蟣": "虮", -"蟬": "蝉", -"蟯": "蛲", -"蟲": "虫", -"蟶": "蛏", -"蟻": "蚁", -"蠅": "蝇", -"蠆": "虿", -"蠐": "蛴", -"蠑": "蝾", -"蠟": "蜡", -"蠣": "蛎", -"蠨": "蟏", -"蠱": "蛊", -"蠶": "蚕", -"蠻": "蛮", -"衆": "众", -"衊": "蔑", -"術": "术", -"衕": "同", -"衚": "胡", -"衛": "卫", -"衝": "冲", -"衹": "只", -"袞": "衮", -"裊": "袅", -"裏": "里", -"補": "补", -"裝": "装", -"裡": "里", -"製": "制", -"複": "复", -"褌": "裈", -"褘": "袆", -"褲": "裤", -"褳": "裢", -"褸": "褛", -"褻": "亵", -"襇": "裥", -"襏": "袯", -"襖": "袄", -"襝": "裣", -"襠": "裆", -"襤": "褴", -"襪": "袜", -"襬": "䙓", -"襯": "衬", -"襲": "袭", -"覆蓋": "覆盖", -"翻來覆去": "翻来覆去", -"見": "见", -"覎": "觃", -"規": "规", -"覓": "觅", -"視": "视", -"覘": "觇", -"覡": "觋", -"覥": "觍", -"覦": "觎", -"親": "亲", -"覬": "觊", -"覯": "觏", -"覲": "觐", -"覷": "觑", -"覺": "觉", -"覽": "览", -"覿": "觌", -"觀": "观", -"觴": "觞", -"觶": "觯", -"觸": "触", -"訁": "讠", -"訂": "订", -"訃": "讣", -"計": "计", -"訊": "讯", -"訌": "讧", -"討": "讨", -"訐": "讦", -"訒": "讱", -"訓": "训", -"訕": "讪", -"訖": "讫", -"託": "讬", -"記": "记", -"訛": "讹", -"訝": "讶", -"訟": "讼", -"訢": "䜣", -"訣": "诀", -"訥": "讷", -"訩": "讻", -"訪": "访", -"設": "设", -"許": "许", -"訴": "诉", -"訶": "诃", -"診": "诊", -"註": "注", -"詁": "诂", -"詆": "诋", -"詎": "讵", -"詐": "诈", -"詒": "诒", -"詔": "诏", -"評": "评", -"詖": "诐", -"詗": "诇", -"詘": "诎", -"詛": "诅", -"詞": "词", -"詠": "咏", -"詡": "诩", -"詢": "询", -"詣": "诣", -"試": "试", -"詩": "诗", -"詫": "诧", -"詬": "诟", -"詭": "诡", -"詮": "诠", -"詰": "诘", -"話": "话", -"該": "该", -"詳": "详", -"詵": "诜", -"詼": "诙", -"詿": "诖", -"誄": "诔", -"誅": "诛", -"誆": "诓", -"誇": "夸", -"誌": "志", -"認": "认", -"誑": "诳", -"誒": "诶", -"誕": "诞", -"誘": "诱", -"誚": "诮", -"語": "语", -"誠": "诚", -"誡": "诫", -"誣": "诬", -"誤": "误", -"誥": "诰", -"誦": "诵", -"誨": "诲", -"說": "说", -"説": "说", -"誰": "谁", -"課": "课", -"誶": "谇", -"誹": "诽", -"誼": "谊", -"誾": "訚", -"調": "调", -"諂": "谄", -"諄": "谆", -"談": "谈", -"諉": "诿", -"請": "请", -"諍": "诤", -"諏": "诹", -"諑": "诼", -"諒": "谅", -"論": "论", -"諗": "谂", -"諛": "谀", -"諜": "谍", -"諝": "谞", -"諞": "谝", -"諢": "诨", -"諤": "谔", -"諦": "谛", -"諧": "谐", -"諫": "谏", -"諭": "谕", -"諮": "谘", -"諱": "讳", -"諳": "谙", -"諶": "谌", -"諷": "讽", -"諸": "诸", -"諺": "谚", -"諼": "谖", -"諾": "诺", -"謀": "谋", -"謁": "谒", -"謂": "谓", -"謄": "誊", -"謅": "诌", -"謊": "谎", -"謎": "谜", -"謐": "谧", -"謔": "谑", -"謖": "谡", -"謗": "谤", -"謙": "谦", -"謚": "谥", -"講": "讲", -"謝": "谢", -"謠": "谣", -"謡": "谣", -"謨": "谟", -"謫": "谪", -"謬": "谬", -"謭": "谫", -"謳": "讴", -"謹": "谨", -"謾": "谩", -"譅": "䜧", -"證": "证", -"譎": "谲", -"譏": "讥", -"譖": "谮", -"識": "识", -"譙": "谯", -"譚": "谭", -"譜": "谱", -"譫": "谵", -"譯": "译", -"議": "议", -"譴": "谴", -"護": "护", -"譸": "诪", -"譽": "誉", -"譾": "谫", -"讀": "读", -"變": "变", -"讎": "仇", -"讎": "雠", -"讒": "谗", -"讓": "让", -"讕": "谰", -"讖": "谶", -"讜": "谠", -"讞": "谳", -"豈": "岂", -"豎": "竖", -"豐": "丰", -"豬": "猪", -"豶": "豮", -"貓": "猫", -"貙": "䝙", -"貝": "贝", -"貞": "贞", -"貟": "贠", -"負": "负", -"財": "财", -"貢": "贡", -"貧": "贫", -"貨": "货", -"販": "贩", -"貪": "贪", -"貫": "贯", -"責": "责", -"貯": "贮", -"貰": "贳", -"貲": "赀", -"貳": "贰", -"貴": "贵", -"貶": "贬", -"買": "买", -"貸": "贷", -"貺": "贶", -"費": "费", -"貼": "贴", -"貽": "贻", -"貿": "贸", -"賀": "贺", -"賁": "贲", -"賂": "赂", -"賃": "赁", -"賄": "贿", -"賅": "赅", -"資": "资", -"賈": "贾", -"賊": "贼", -"賑": "赈", -"賒": "赊", -"賓": "宾", -"賕": "赇", -"賙": "赒", -"賚": "赉", -"賜": "赐", -"賞": "赏", -"賠": "赔", -"賡": "赓", -"賢": "贤", -"賣": "卖", -"賤": "贱", -"賦": "赋", -"賧": "赕", -"質": "质", -"賫": "赍", -"賬": "账", -"賭": "赌", -"賰": "䞐", -"賴": "赖", -"賵": "赗", -"賺": "赚", -"賻": "赙", -"購": "购", -"賽": "赛", -"賾": "赜", -"贄": "贽", -"贅": "赘", -"贇": "赟", -"贈": "赠", -"贊": "赞", -"贋": "赝", -"贍": "赡", -"贏": "赢", -"贐": "赆", -"贓": "赃", -"贔": "赑", -"贖": "赎", -"贗": "赝", -"贛": "赣", -"贜": "赃", -"赬": "赪", -"趕": "赶", -"趙": "赵", -"趨": "趋", -"趲": "趱", -"跡": "迹", -"踐": "践", -"踴": "踊", -"蹌": "跄", -"蹕": "跸", -"蹣": "蹒", -"蹤": "踪", -"蹺": "跷", -"躂": "跶", -"躉": "趸", -"躊": "踌", -"躋": "跻", -"躍": "跃", -"躑": "踯", -"躒": "跞", -"躓": "踬", -"躕": "蹰", -"躚": "跹", -"躡": "蹑", -"躥": "蹿", -"躦": "躜", -"躪": "躏", -"軀": "躯", -"車": "车", -"軋": "轧", -"軌": "轨", -"軍": "军", -"軑": "轪", -"軒": "轩", -"軔": "轫", -"軛": "轭", -"軟": "软", -"軤": "轷", -"軫": "轸", -"軲": "轱", -"軸": "轴", -"軹": "轵", -"軺": "轺", -"軻": "轲", -"軼": "轶", -"軾": "轼", -"較": "较", -"輅": "辂", -"輇": "辁", -"輈": "辀", -"載": "载", -"輊": "轾", -"輒": "辄", -"輓": "挽", -"輔": "辅", -"輕": "轻", -"輛": "辆", -"輜": "辎", -"輝": "辉", -"輞": "辋", -"輟": "辍", -"輥": "辊", -"輦": "辇", -"輩": "辈", -"輪": "轮", -"輬": "辌", -"輯": "辑", -"輳": "辏", -"輸": "输", -"輻": "辐", -"輾": "辗", -"輿": "舆", -"轀": "辒", -"轂": "毂", -"轄": "辖", -"轅": "辕", -"轆": "辘", -"轉": "转", -"轍": "辙", -"轎": "轿", -"轔": "辚", -"轟": "轰", -"轡": "辔", -"轢": "轹", -"轤": "轳", -"辟": "辟", -"辦": "办", -"辭": "辞", -"辮": "辫", -"辯": "辩", -"農": "农", -"迴": "回", -"适": "适", -"逕": "迳", -"這": "这", -"連": "连", -"週": "周", -"進": "进", -"遊": "游", -"運": "运", -"過": "过", -"達": "达", -"違": "违", -"遙": "遥", -"遜": "逊", -"遞": "递", -"遠": "远", -"適": "适", -"遲": "迟", -"遷": "迁", -"選": "选", -"遺": "遗", -"遼": "辽", -"邁": "迈", -"還": "还", -"邇": "迩", -"邊": "边", -"邏": "逻", -"邐": "逦", -"郁": "郁", -"郟": "郏", -"郵": "邮", -"鄆": "郓", -"鄉": "乡", -"鄒": "邹", -"鄔": "邬", -"鄖": "郧", -"鄧": "邓", -"鄭": "郑", -"鄰": "邻", -"鄲": "郸", -"鄴": "邺", -"鄶": "郐", -"鄺": "邝", -"酇": "酂", -"酈": "郦", -"醖": "酝", -"醜": "丑", -"醞": "酝", -"醫": "医", -"醬": "酱", -"醱": "酦", -"釀": "酿", -"釁": "衅", -"釃": "酾", -"釅": "酽", -"采": "采", -"釋": "释", -"釐": "厘", -"釒": "钅", -"釓": "钆", -"釔": "钇", -"釕": "钌", -"釗": "钊", -"釘": "钉", -"釙": "钋", -"針": "针", -"釣": "钓", -"釤": "钐", -"釧": "钏", -"釩": "钒", -"釵": "钗", -"釷": "钍", -"釹": "钕", -"釺": "钎", -"鈀": "钯", -"鈁": "钫", -"鈃": "钘", -"鈄": "钭", -"鈈": "钚", -"鈉": "钠", -"鈍": "钝", -"鈎": "钩", -"鈐": "钤", -"鈑": "钣", -"鈒": "钑", -"鈔": "钞", -"鈕": "钮", -"鈞": "钧", -"鈣": "钙", -"鈥": "钬", -"鈦": "钛", -"鈧": "钪", -"鈮": "铌", -"鈰": "铈", -"鈳": "钶", -"鈴": "铃", -"鈷": "钴", -"鈸": "钹", -"鈹": "铍", -"鈺": "钰", -"鈽": "钸", -"鈾": "铀", -"鈿": "钿", -"鉀": "钾", -"鉅": "钜", -"鉈": "铊", -"鉉": "铉", -"鉋": "铇", -"鉍": "铋", -"鉑": "铂", -"鉕": "钷", -"鉗": "钳", -"鉚": "铆", -"鉛": "铅", -"鉞": "钺", -"鉢": "钵", -"鉤": "钩", -"鉦": "钲", -"鉬": "钼", -"鉭": "钽", -"鉶": "铏", -"鉸": "铰", -"鉺": "铒", -"鉻": "铬", -"鉿": "铪", -"銀": "银", -"銃": "铳", -"銅": "铜", -"銍": "铚", -"銑": "铣", -"銓": "铨", -"銖": "铢", -"銘": "铭", -"銚": "铫", -"銛": "铦", -"銜": "衔", -"銠": "铑", -"銣": "铷", -"銥": "铱", -"銦": "铟", -"銨": "铵", -"銩": "铥", -"銪": "铕", -"銫": "铯", -"銬": "铐", -"銱": "铞", -"銳": "锐", -"銷": "销", -"銹": "锈", -"銻": "锑", -"銼": "锉", -"鋁": "铝", -"鋃": "锒", -"鋅": "锌", -"鋇": "钡", -"鋌": "铤", -"鋏": "铗", -"鋒": "锋", -"鋙": "铻", -"鋝": "锊", -"鋟": "锓", -"鋣": "铘", -"鋤": "锄", -"鋥": "锃", -"鋦": "锔", -"鋨": "锇", -"鋩": "铓", -"鋪": "铺", -"鋭": "锐", -"鋮": "铖", -"鋯": "锆", -"鋰": "锂", -"鋱": "铽", -"鋶": "锍", -"鋸": "锯", -"鋼": "钢", -"錁": "锞", -"錄": "录", -"錆": "锖", -"錇": "锫", -"錈": "锩", -"錏": "铔", -"錐": "锥", -"錒": "锕", -"錕": "锟", -"錘": "锤", -"錙": "锱", -"錚": "铮", -"錛": "锛", -"錟": "锬", -"錠": "锭", -"錡": "锜", -"錢": "钱", -"錦": "锦", -"錨": "锚", -"錩": "锠", -"錫": "锡", -"錮": "锢", -"錯": "错", -"録": "录", -"錳": "锰", -"錶": "表", -"錸": "铼", -"鍀": "锝", -"鍁": "锨", -"鍃": "锪", -"鍆": "钔", -"鍇": "锴", -"鍈": "锳", -"鍋": "锅", -"鍍": "镀", -"鍔": "锷", -"鍘": "铡", -"鍚": "钖", -"鍛": "锻", -"鍠": "锽", -"鍤": "锸", -"鍥": "锲", -"鍩": "锘", -"鍬": "锹", -"鍰": "锾", -"鍵": "键", -"鍶": "锶", -"鍺": "锗", -"鍾": "钟", -"鎂": "镁", -"鎄": "锿", -"鎇": "镅", -"鎊": "镑", -"鎔": "镕", -"鎖": "锁", -"鎘": "镉", -"鎚": "锤", -"鎛": "镈", -"鎝": "𨱏", -"鎡": "镃", -"鎢": "钨", -"鎣": "蓥", -"鎦": "镏", -"鎧": "铠", -"鎩": "铩", -"鎪": "锼", -"鎬": "镐", -"鎮": "镇", -"鎰": "镒", -"鎲": "镋", -"鎳": "镍", -"鎵": "镓", -"鎸": "镌", -"鎿": "镎", -"鏃": "镞", -"鏇": "镟", -"鏈": "链", -"鏌": "镆", -"鏍": "镙", -"鏐": "镠", -"鏑": "镝", -"鏗": "铿", -"鏘": "锵", -"鏜": "镗", -"鏝": "镘", -"鏞": "镛", -"鏟": "铲", -"鏡": "镜", -"鏢": "镖", -"鏤": "镂", -"鏨": "錾", -"鏰": "镚", -"鏵": "铧", -"鏷": "镤", -"鏹": "镪", -"鏽": "锈", -"鐃": "铙", -"鐋": "铴", -"鐐": "镣", -"鐒": "铹", -"鐓": "镦", -"鐔": "镡", -"鐘": "钟", -"鐙": "镫", -"鐝": "镢", -"鐠": "镨", -"鐦": "锎", -"鐧": "锏", -"鐨": "镄", -"鐫": "镌", -"鐮": "镰", -"鐲": "镯", -"鐳": "镭", -"鐵": "铁", -"鐶": "镮", -"鐸": "铎", -"鐺": "铛", -"鐿": "镱", -"鑄": "铸", -"鑊": "镬", -"鑌": "镔", -"鑒": "鉴", -"鑔": "镲", -"鑕": "锧", -"鑞": "镴", -"鑠": "铄", -"鑣": "镳", -"鑥": "镥", -"鑭": "镧", -"鑰": "钥", -"鑱": "镵", -"鑲": "镶", -"鑷": "镊", -"鑹": "镩", -"鑼": "锣", -"鑽": "钻", -"鑾": "銮", -"鑿": "凿", -"钁": "镢", -"镟": "旋", -"長": "长", -"門": "门", -"閂": "闩", -"閃": "闪", -"閆": "闫", -"閈": "闬", -"閉": "闭", -"開": "开", -"閌": "闶", -"閎": "闳", -"閏": "闰", -"閑": "闲", -"間": "间", -"閔": "闵", -"閘": "闸", -"閡": "阂", -"閣": "阁", -"閤": "合", -"閥": "阀", -"閨": "闺", -"閩": "闽", -"閫": "阃", -"閬": "阆", -"閭": "闾", -"閱": "阅", -"閲": "阅", -"閶": "阊", -"閹": "阉", -"閻": "阎", -"閼": "阏", -"閽": "阍", -"閾": "阈", -"閿": "阌", -"闃": "阒", -"闆": "板", -"闈": "闱", -"闊": "阔", -"闋": "阕", -"闌": "阑", -"闍": "阇", -"闐": "阗", -"闒": "阘", -"闓": "闿", -"闔": "阖", -"闕": "阙", -"闖": "闯", -"關": "关", -"闞": "阚", -"闠": "阓", -"闡": "阐", -"闤": "阛", -"闥": "闼", -"阪": "坂", -"陘": "陉", -"陝": "陕", -"陣": "阵", -"陰": "阴", -"陳": "陈", -"陸": "陆", -"陽": "阳", -"隉": "陧", -"隊": "队", -"階": "阶", -"隕": "陨", -"際": "际", -"隨": "随", -"險": "险", -"隱": "隐", -"隴": "陇", -"隸": "隶", -"隻": "只", -"雋": "隽", -"雖": "虽", -"雙": "双", -"雛": "雏", -"雜": "杂", -"雞": "鸡", -"離": "离", -"難": "难", -"雲": "云", -"電": "电", -"霢": "霡", -"霧": "雾", -"霽": "霁", -"靂": "雳", -"靄": "霭", -"靈": "灵", -"靚": "靓", -"靜": "静", -"靨": "靥", -"鞀": "鼗", -"鞏": "巩", -"鞝": "绱", -"鞦": "秋", -"鞽": "鞒", -"韁": "缰", -"韃": "鞑", -"韆": "千", -"韉": "鞯", -"韋": "韦", -"韌": "韧", -"韍": "韨", -"韓": "韩", -"韙": "韪", -"韜": "韬", -"韞": "韫", -"韻": "韵", -"響": "响", -"頁": "页", -"頂": "顶", -"頃": "顷", -"項": "项", -"順": "顺", -"頇": "顸", -"須": "须", -"頊": "顼", -"頌": "颂", -"頎": "颀", -"頏": "颃", -"預": "预", -"頑": "顽", -"頒": "颁", -"頓": "顿", -"頗": "颇", -"領": "领", -"頜": "颌", -"頡": "颉", -"頤": "颐", -"頦": "颏", -"頭": "头", -"頮": "颒", -"頰": "颊", -"頲": "颋", -"頴": "颕", -"頷": "颔", -"頸": "颈", -"頹": "颓", -"頻": "频", -"頽": "颓", -"顆": "颗", -"題": "题", -"額": "额", -"顎": "颚", -"顏": "颜", -"顒": "颙", -"顓": "颛", -"顔": "颜", -"願": "愿", -"顙": "颡", -"顛": "颠", -"類": "类", -"顢": "颟", -"顥": "颢", -"顧": "顾", -"顫": "颤", -"顬": "颥", -"顯": "显", -"顰": "颦", -"顱": "颅", -"顳": "颞", -"顴": "颧", -"風": "风", -"颭": "飐", -"颮": "飑", -"颯": "飒", -"颱": "台", -"颳": "刮", -"颶": "飓", -"颸": "飔", -"颺": "飏", -"颻": "飖", -"颼": "飕", -"飀": "飗", -"飄": "飘", -"飆": "飙", -"飈": "飚", -"飛": "飞", -"飠": "饣", -"飢": "饥", -"飣": "饤", -"飥": "饦", -"飩": "饨", -"飪": "饪", -"飫": "饫", -"飭": "饬", -"飯": "饭", -"飲": "饮", -"飴": "饴", -"飼": "饲", -"飽": "饱", -"飾": "饰", -"飿": "饳", -"餃": "饺", -"餄": "饸", -"餅": "饼", -"餉": "饷", -"養": "养", -"餌": "饵", -"餎": "饹", -"餏": "饻", -"餑": "饽", -"餒": "馁", -"餓": "饿", -"餕": "馂", -"餖": "饾", -"餚": "肴", -"餛": "馄", -"餜": "馃", -"餞": "饯", -"餡": "馅", -"館": "馆", -"餱": "糇", -"餳": "饧", -"餶": "馉", -"餷": "馇", -"餺": "馎", -"餼": "饩", -"餾": "馏", -"餿": "馊", -"饁": "馌", -"饃": "馍", -"饅": "馒", -"饈": "馐", -"饉": "馑", -"饊": "馓", -"饋": "馈", -"饌": "馔", -"饑": "饥", -"饒": "饶", -"饗": "飨", -"饜": "餍", -"饞": "馋", -"饢": "馕", -"馬": "马", -"馭": "驭", -"馮": "冯", -"馱": "驮", -"馳": "驰", -"馴": "驯", -"馹": "驲", -"駁": "驳", -"駐": "驻", -"駑": "驽", -"駒": "驹", -"駔": "驵", -"駕": "驾", -"駘": "骀", -"駙": "驸", -"駛": "驶", -"駝": "驼", -"駟": "驷", -"駡": "骂", -"駢": "骈", -"駭": "骇", -"駰": "骃", -"駱": "骆", -"駸": "骎", -"駿": "骏", -"騁": "骋", -"騂": "骍", -"騅": "骓", -"騌": "骔", -"騍": "骒", -"騎": "骑", -"騏": "骐", -"騖": "骛", -"騙": "骗", -"騤": "骙", -"騧": "䯄", -"騫": "骞", -"騭": "骘", -"騮": "骝", -"騰": "腾", -"騶": "驺", -"騷": "骚", -"騸": "骟", -"騾": "骡", -"驀": "蓦", -"驁": "骜", -"驂": "骖", -"驃": "骠", -"驄": "骢", -"驅": "驱", -"驊": "骅", -"驌": "骕", -"驍": "骁", -"驏": "骣", -"驕": "骄", -"驗": "验", -"驚": "惊", -"驛": "驿", -"驟": "骤", -"驢": "驴", -"驤": "骧", -"驥": "骥", -"驦": "骦", -"驪": "骊", -"驫": "骉", -"骯": "肮", -"髏": "髅", -"髒": "脏", -"體": "体", -"髕": "髌", -"髖": "髋", -"髮": "发", -"鬆": "松", -"鬍": "胡", -"鬚": "须", -"鬢": "鬓", -"鬥": "斗", -"鬧": "闹", -"鬩": "阋", -"鬮": "阄", -"鬱": "郁", -"魎": "魉", -"魘": "魇", -"魚": "鱼", -"魛": "鱽", -"魢": "鱾", -"魨": "鲀", -"魯": "鲁", -"魴": "鲂", -"魷": "鱿", -"魺": "鲄", -"鮁": "鲅", -"鮃": "鲆", -"鮊": "鲌", -"鮋": "鲉", -"鮍": "鲏", -"鮎": "鲇", -"鮐": "鲐", -"鮑": "鲍", -"鮒": "鲋", -"鮓": "鲊", -"鮚": "鲒", -"鮜": "鲘", -"鮝": "鲞", -"鮞": "鲕", -"鮦": "鲖", -"鮪": "鲔", -"鮫": "鲛", -"鮭": "鲑", -"鮮": "鲜", -"鮳": "鲓", -"鮶": "鲪", -"鮺": "鲝", -"鯀": "鲧", -"鯁": "鲠", -"鯇": "鲩", -"鯉": "鲤", -"鯊": "鲨", -"鯒": "鲬", -"鯔": "鲻", -"鯕": "鲯", -"鯖": "鲭", -"鯗": "鲞", -"鯛": "鲷", -"鯝": "鲴", -"鯡": "鲱", -"鯢": "鲵", -"鯤": "鲲", -"鯧": "鲳", -"鯨": "鲸", -"鯪": "鲮", -"鯫": "鲰", -"鯴": "鲺", -"鯷": "鳀", -"鯽": "鲫", -"鯿": "鳊", -"鰁": "鳈", -"鰂": "鲗", -"鰃": "鳂", -"鰈": "鲽", -"鰉": "鳇", -"鰍": "鳅", -"鰏": "鲾", -"鰐": "鳄", -"鰒": "鳆", -"鰓": "鳃", -"鰜": "鳒", -"鰟": "鳑", -"鰠": "鳋", -"鰣": "鲥", -"鰥": "鳏", -"鰨": "鳎", -"鰩": "鳐", -"鰭": "鳍", -"鰮": "鳁", -"鰱": "鲢", -"鰲": "鳌", -"鰳": "鳓", -"鰵": "鳘", -"鰷": "鲦", -"鰹": "鲣", -"鰺": "鲹", -"鰻": "鳗", -"鰼": "鳛", -"鰾": "鳔", -"鱂": "鳉", -"鱅": "鳙", -"鱈": "鳕", -"鱉": "鳖", -"鱒": "鳟", -"鱔": "鳝", -"鱖": "鳜", -"鱗": "鳞", -"鱘": "鲟", -"鱝": "鲼", -"鱟": "鲎", -"鱠": "鲙", -"鱣": "鳣", -"鱤": "鳡", -"鱧": "鳢", -"鱨": "鲿", -"鱭": "鲚", -"鱯": "鳠", -"鱷": "鳄", -"鱸": "鲈", -"鱺": "鲡", -"䰾": "鲃", -"䲁": "鳚", -"鳥": "鸟", -"鳧": "凫", -"鳩": "鸠", -"鳬": "凫", -"鳲": "鸤", -"鳳": "凤", -"鳴": "鸣", -"鳶": "鸢", -"鳾": "䴓", -"鴆": "鸩", -"鴇": "鸨", -"鴉": "鸦", -"鴒": "鸰", -"鴕": "鸵", -"鴛": "鸳", -"鴝": "鸲", -"鴞": "鸮", -"鴟": "鸱", -"鴣": "鸪", -"鴦": "鸯", -"鴨": "鸭", -"鴯": "鸸", -"鴰": "鸹", -"鴴": "鸻", -"鴷": "䴕", -"鴻": "鸿", -"鴿": "鸽", -"鵁": "䴔", -"鵂": "鸺", -"鵃": "鸼", -"鵐": "鹀", -"鵑": "鹃", -"鵒": "鹆", -"鵓": "鹁", -"鵜": "鹈", -"鵝": "鹅", -"鵠": "鹄", -"鵡": "鹉", -"鵪": "鹌", -"鵬": "鹏", -"鵮": "鹐", -"鵯": "鹎", -"鵲": "鹊", -"鵷": "鹓", -"鵾": "鹍", -"鶄": "䴖", -"鶇": "鸫", -"鶉": "鹑", -"鶊": "鹒", -"鶓": "鹋", -"鶖": "鹙", -"鶘": "鹕", -"鶚": "鹗", -"鶡": "鹖", -"鶥": "鹛", -"鶩": "鹜", -"鶪": "䴗", -"鶬": "鸧", -"鶯": "莺", -"鶲": "鹟", -"鶴": "鹤", -"鶹": "鹠", -"鶺": "鹡", -"鶻": "鹘", -"鶼": "鹣", -"鶿": "鹚", -"鷀": "鹚", -"鷁": "鹢", -"鷂": "鹞", -"鷄": "鸡", -"鷈": "䴘", -"鷊": "鹝", -"鷓": "鹧", -"鷖": "鹥", -"鷗": "鸥", -"鷙": "鸷", -"鷚": "鹨", -"鷥": "鸶", -"鷦": "鹪", -"鷫": "鹔", -"鷯": "鹩", -"鷲": "鹫", -"鷳": "鹇", -"鷸": "鹬", -"鷹": "鹰", -"鷺": "鹭", -"鷽": "鸴", -"鷿": "䴙", -"鸂": "㶉", -"鸇": "鹯", -"鸌": "鹱", -"鸏": "鹲", -"鸕": "鸬", -"鸘": "鹴", -"鸚": "鹦", -"鸛": "鹳", -"鸝": "鹂", -"鸞": "鸾", -"鹵": "卤", -"鹹": "咸", -"鹺": "鹾", -"鹽": "盐", -"麗": "丽", -"麥": "麦", -"麩": "麸", -"麯": "曲", -"麵": "面", -"麼": "么", -"麽": "么", -"黃": "黄", -"黌": "黉", -"點": "点", -"黨": "党", -"黲": "黪", -"黴": "霉", -"黶": "黡", -"黷": "黩", -"黽": "黾", -"黿": "鼋", -"鼉": "鼍", -"鼕": "冬", -"鼴": "鼹", -"齊": "齐", -"齋": "斋", -"齎": "赍", -"齏": "齑", -"齒": "齿", -"齔": "龀", -"齕": "龁", -"齗": "龂", -"齙": "龅", -"齜": "龇", -"齟": "龃", -"齠": "龆", -"齡": "龄", -"齣": "出", -"齦": "龈", -"齪": "龊", -"齬": "龉", -"齲": "龋", -"齶": "腭", -"齷": "龌", -"龍": "龙", -"龎": "厐", -"龐": "庞", -"龔": "龚", -"龕": "龛", -"龜": "龟", - -"幾畫": "几画", -"賣畫": "卖画", -"滷鹼": "卤碱", -"原畫": "原画", -"口鹼": "口碱", -"古畫": "古画", -"名畫": "名画", -"奇畫": "奇画", -"如畫": "如画", -"弱鹼": "弱碱", -"彩畫": "彩画", -"所畫": "所画", -"扉畫": "扉画", -"教畫": "教画", -"水鹼": "水碱", -"洋鹼": "洋碱", -"炭畫": "炭画", -"畫一": "画一", -"畫上": "画上", -"畫下": "画下", -"畫中": "画中", -"畫供": "画供", -"畫兒": "画儿", -"畫具": "画具", -"畫出": "画出", -"畫史": "画史", -"畫品": "画品", -"畫商": "画商", -"畫圈": "画圈", -"畫境": "画境", -"畫工": "画工", -"畫帖": "画帖", -"畫幅": "画幅", -"畫意": "画意", -"畫成": "画成", -"畫景": "画景", -"畫本": "画本", -"畫架": "画架", -"畫框": "画框", -"畫法": "画法", -"畫王": "画王", -"畫界": "画界", -"畫符": "画符", -"畫紙": "画纸", -"畫線": "画线", -"畫航": "画航", -"畫舫": "画舫", -"畫虎": "画虎", -"畫論": "画论", -"畫譜": "画谱", -"畫象": "画象", -"畫質": "画质", -"畫貼": "画贴", -"畫軸": "画轴", -"畫頁": "画页", -"鹽鹼": "盐碱", -"鹼": "碱", -"鹼基": "碱基", -"鹼度": "碱度", -"鹼水": "碱水", -"鹼熔": "碱熔", -"磁畫": "磁画", -"策畫": "策画", -"組畫": "组画", -"絹畫": "绢画", -"耐鹼": "耐碱", -"肉鹼": "肉碱", -"膠畫": "胶画", -"茶鹼": "茶碱", -"西畫": "西画", -"貼畫": "贴画", -"返鹼": "返碱", -"鍾鍛": "锺锻", -"鍛鍾": "锻锺", -"雕畫": "雕画", -"鯰": "鲶", -"三聯畫": "三联画", -"中國畫": "中国画", -"書畫": "书画", -"書畫社": "书画社", -"五筆畫": "五笔画", -"作畫": "作画", -"入畫": "入画", -"寫生畫": "写生画", -"刻畫": "刻画", -"動畫": "动画", -"勾畫": "勾画", -"單色畫": "单色画", -"卡通畫": "卡通画", -"國畫": "国画", -"圖畫": "图画", -"壁畫": "壁画", -"字畫": "字画", -"宣傳畫": "宣传画", -"工筆畫": "工笔画", -"年畫": "年画", -"幽默畫": "幽默画", -"指畫": "指画", -"描畫": "描画", -"插畫": "插画", -"擘畫": "擘画", -"春畫": "春画", -"木刻畫": "木刻画", -"機械畫": "机械画", -"比畫": "比画", -"毛筆畫": "毛笔画", -"水粉畫": "水粉画", -"油畫": "油画", -"海景畫": "海景画", -"漫畫": "漫画", -"點畫": "点画", -"版畫": "版画", -"畫": "画", -"畫像": "画像", -"畫冊": "画册", -"畫刊": "画刊", -"畫匠": "画匠", -"畫捲": "画卷", -"畫圖": "画图", -"畫壇": "画坛", -"畫室": "画室", -"畫家": "画家", -"畫屏": "画屏", -"畫展": "画展", -"畫布": "画布", -"畫師": "画师", -"畫廊": "画廊", -"畫報": "画报", -"畫押": "画押", -"畫板": "画板", -"畫片": "画片", -"畫畫": "画画", -"畫皮": "画皮", -"畫眉鳥": "画眉鸟", -"畫稿": "画稿", -"畫筆": "画笔", -"畫院": "画院", -"畫集": "画集", -"畫面": "画面", -"筆畫": "笔画", -"細密畫": "细密画", -"繪畫": "绘画", -"自畫像": "自画像", -"蠟筆畫": "蜡笔画", -"裸體畫": "裸体画", -"西洋畫": "西洋画", -"透視畫": "透视画", -"銅版畫": "铜版画", -"鍾": "锺", -"靜物畫": "静物画", -"餘": "馀", -} - -zh2TW = { -"缺省": "預設", -"串行": "串列", -"以太网": "乙太網", -"位图": "點陣圖", -"例程": "常式", -"信道": "通道", -"光标": "游標", -"光盘": "光碟", -"光驱": "光碟機", -"全角": "全形", -"加载": "載入", -"半角": "半形", -"变量": "變數", -"噪声": "雜訊", -"脱机": "離線", -"声卡": "音效卡", -"老字号": "老字號", -"字号": "字型大小", -"字库": "字型檔", -"字段": "欄位", -"字符": "字元", -"存盘": "存檔", -"寻址": "定址", -"尾注": "章節附註", -"异步": "非同步", -"总线": "匯流排", -"括号": "括弧", -"接口": "介面", -"控件": "控制項", -"权限": "許可權", -"盘片": "碟片", -"硅片": "矽片", -"硅谷": "矽谷", -"硬盘": "硬碟", -"磁盘": "磁碟", -"磁道": "磁軌", -"程控": "程式控制", -"端口": "埠", -"算子": "運算元", -"算法": "演算法", -"芯片": "晶片", -"芯片": "晶元", -"词组": "片語", -"译码": "解碼", -"软驱": "軟碟機", -"快闪存储器": "快閃記憶體", -"闪存": "快閃記憶體", -"鼠标": "滑鼠", -"进制": "進位", -"交互式": "互動式", -"仿真": "模擬", -"优先级": "優先順序", -"传感": "感測", -"便携式": "攜帶型", -"信息论": "資訊理論", -"写保护": "防寫", -"分布式": "分散式", -"分辨率": "解析度", -"服务器": "伺服器", -"等于": "等於", -"局域网": "區域網", -"计算机": "電腦", -"扫瞄仪": "掃瞄器", -"宽带": "寬頻", -"数据库": "資料庫", -"奶酪": "乳酪", -"巨商": "鉅賈", -"手电": "手電筒", -"万历": "萬曆", -"永历": "永曆", -"词汇": "辭彙", -"习用": "慣用", -"元音": "母音", -"任意球": "自由球", -"头球": "頭槌", -"入球": "進球", -"粒入球": "顆進球", -"打门": "射門", -"火锅盖帽": "蓋火鍋", -"打印机": "印表機", -"打印機": "印表機", -"字节": "位元組", -"字節": "位元組", -"打印": "列印", -"打印": "列印", -"硬件": "硬體", -"硬件": "硬體", -"二极管": "二極體", -"二極管": "二極體", -"三极管": "三極體", -"三極管": "三極體", -"软件": "軟體", -"軟件": "軟體", -"网络": "網路", -"網絡": "網路", -"人工智能": "人工智慧", -"航天飞机": "太空梭", -"穿梭機": "太空梭", -"因特网": "網際網路", -"互聯網": "網際網路", -"机器人": "機器人", -"機械人": "機器人", -"移动电话": "行動電話", -"流動電話": "行動電話", -"调制解调器": "數據機", -"調制解調器": "數據機", -"短信": "簡訊", -"短訊": "簡訊", -"乌兹别克斯坦": "烏茲別克", -"乍得": "查德", -"乍得": "查德", -"也门": "葉門", -"也門": "葉門", -"伯利兹": "貝里斯", -"伯利茲": "貝里斯", -"佛得角": "維德角", -"佛得角": "維德角", -"克罗地亚": "克羅埃西亞", -"克羅地亞": "克羅埃西亞", -"冈比亚": "甘比亞", -"岡比亞": "甘比亞", -"几内亚比绍": "幾內亞比索", -"幾內亞比紹": "幾內亞比索", -"列支敦士登": "列支敦斯登", -"列支敦士登": "列支敦斯登", -"利比里亚": "賴比瑞亞", -"利比里亞": "賴比瑞亞", -"加纳": "迦納", -"加納": "迦納", -"加蓬": "加彭", -"加蓬": "加彭", -"博茨瓦纳": "波札那", -"博茨瓦納": "波札那", -"卡塔尔": "卡達", -"卡塔爾": "卡達", -"卢旺达": "盧安達", -"盧旺達": "盧安達", -"危地马拉": "瓜地馬拉", -"危地馬拉": "瓜地馬拉", -"厄瓜多尔": "厄瓜多", -"厄瓜多爾": "厄瓜多", -"厄立特里亚": "厄利垂亞", -"厄立特里亞": "厄利垂亞", -"吉布提": "吉布地", -"吉布堤": "吉布地", -"哈萨克斯坦": "哈薩克", -"哥斯达黎加": "哥斯大黎加", -"哥斯達黎加": "哥斯大黎加", -"图瓦卢": "吐瓦魯", -"圖瓦盧": "吐瓦魯", -"土库曼斯坦": "土庫曼", -"圣卢西亚": "聖露西亞", -"聖盧西亞": "聖露西亞", -"圣基茨和尼维斯": "聖克里斯多福及尼維斯", -"聖吉斯納域斯": "聖克里斯多福及尼維斯", -"圣文森特和格林纳丁斯": "聖文森及格瑞那丁", -"聖文森特和格林納丁斯": "聖文森及格瑞那丁", -"圣马力诺": "聖馬利諾", -"聖馬力諾": "聖馬利諾", -"圭亚那": "蓋亞那", -"圭亞那": "蓋亞那", -"坦桑尼亚": "坦尚尼亞", -"坦桑尼亞": "坦尚尼亞", -"埃塞俄比亚": "衣索比亞", -"埃塞俄比亞": "衣索比亞", -"基里巴斯": "吉里巴斯", -"基里巴斯": "吉里巴斯", -"塔吉克斯坦": "塔吉克", -"塞拉利昂": "獅子山", -"塞拉利昂": "獅子山", -"塞浦路斯": "塞普勒斯", -"塞浦路斯": "塞普勒斯", -"塞舌尔": "塞席爾", -"塞舌爾": "塞席爾", -"多米尼加": "多明尼加", -"多明尼加共和國": "多明尼加", -"多米尼加联邦": "多米尼克", -"多明尼加聯邦": "多米尼克", -"安提瓜和巴布达": "安地卡及巴布達", -"安提瓜和巴布達": "安地卡及巴布達", -"尼日利亚": "奈及利亞", -"尼日利亞": "奈及利亞", -"尼日尔": "尼日", -"尼日爾": "尼日", -"巴巴多斯": "巴貝多", -"巴巴多斯": "巴貝多", -"巴布亚新几内亚": "巴布亞紐幾內亞", -"巴布亞新畿內亞": "巴布亞紐幾內亞", -"布基纳法索": "布吉納法索", -"布基納法索": "布吉納法索", -"布隆迪": "蒲隆地", -"布隆迪": "蒲隆地", -"希腊": "希臘", -"帕劳": "帛琉", -"意大利": "義大利", -"意大利": "義大利", -"所罗门群岛": "索羅門群島", -"所羅門群島": "索羅門群島", -"文莱": "汶萊", -"斯威士兰": "史瓦濟蘭", -"斯威士蘭": "史瓦濟蘭", -"斯洛文尼亚": "斯洛維尼亞", -"斯洛文尼亞": "斯洛維尼亞", -"新西兰": "紐西蘭", -"新西蘭": "紐西蘭", -"格林纳达": "格瑞那達", -"格林納達": "格瑞那達", -"格鲁吉亚": "喬治亞", -"格魯吉亞": "喬治亞", -"佐治亚": "喬治亞", -"佐治亞": "喬治亞", -"毛里塔尼亚": "茅利塔尼亞", -"毛里塔尼亞": "茅利塔尼亞", -"毛里求斯": "模里西斯", -"毛里裘斯": "模里西斯", -"沙特阿拉伯": "沙烏地阿拉伯", -"沙地阿拉伯": "沙烏地阿拉伯", -"波斯尼亚和黑塞哥维那": "波士尼亞赫塞哥維納", -"波斯尼亞黑塞哥維那": "波士尼亞赫塞哥維納", -"津巴布韦": "辛巴威", -"津巴布韋": "辛巴威", -"洪都拉斯": "宏都拉斯", -"洪都拉斯": "宏都拉斯", -"特立尼达和托巴哥": "千里達托貝哥", -"特立尼達和多巴哥": "千里達托貝哥", -"瑙鲁": "諾魯", -"瑙魯": "諾魯", -"瓦努阿图": "萬那杜", -"瓦努阿圖": "萬那杜", -"溫納圖萬": "那杜", -"科摩罗": "葛摩", -"科摩羅": "葛摩", -"科特迪瓦": "象牙海岸", -"突尼斯": "突尼西亞", -"索马里": "索馬利亞", -"索馬里": "索馬利亞", -"老挝": "寮國", -"老撾": "寮國", -"肯尼亚": "肯亞", -"肯雅": "肯亞", -"苏里南": "蘇利南", -"莫桑比克": "莫三比克", -"莱索托": "賴索托", -"萊索托": "賴索托", -"贝宁": "貝南", -"貝寧": "貝南", -"赞比亚": "尚比亞", -"贊比亞": "尚比亞", -"阿塞拜疆": "亞塞拜然", -"阿塞拜疆": "亞塞拜然", -"阿拉伯联合酋长国": "阿拉伯聯合大公國", -"阿拉伯聯合酋長國": "阿拉伯聯合大公國", -"马尔代夫": "馬爾地夫", -"馬爾代夫": "馬爾地夫", -"马耳他": "馬爾他", -"马里共和国": "馬利共和國", -"馬里共和國": "馬利共和國", -"方便面": "速食麵", -"快速面": "速食麵", -"即食麵": "速食麵", -"薯仔": "土豆", -"蹦极跳": "笨豬跳", -"绑紧跳": "笨豬跳", -"冷菜": "冷盤", -"凉菜": "冷盤", -"出租车": "計程車", -"台球": "撞球", -"桌球": "撞球", -"雪糕": "冰淇淋", -"卫生": "衛生", -"衞生": "衛生", -"平治": "賓士", -"奔驰": "賓士", -"積架": "捷豹", -"福士": "福斯", -"雪铁龙": "雪鐵龍", -"马自达": "馬自達", -"萬事得": "馬自達", -"拿破仑": "拿破崙", -"拿破侖": "拿破崙", -"布什": "布希", -"布殊": "布希", -"克林顿": "柯林頓", -"克林頓": "柯林頓", -"侯赛因": "海珊", -"侯賽因": "海珊", -"凡高": "梵谷", -"狄安娜": "黛安娜", -"戴安娜": "黛安娜", -"赫拉": "希拉", -} - -zh2HK = { -"打印机": "打印機", -"印表機": "打印機", -"字节": "位元組", -"字節": "位元組", -"打印": "打印", -"列印": "打印", -"硬件": "硬件", -"硬體": "硬件", -"二极管": "二極管", -"二極體": "二極管", -"三极管": "三極管", -"三極體": "三極管", -"数码": "數碼", -"數位": "數碼", -"软件": "軟件", -"軟體": "軟件", -"网络": "網絡", -"網路": "網絡", -"人工智能": "人工智能", -"人工智慧": "人工智能", -"航天飞机": "穿梭機", -"太空梭": "穿梭機", -"因特网": "互聯網", -"網際網路": "互聯網", -"机器人": "機械人", -"機器人": "機械人", -"移动电话": "流動電話", -"行動電話": "流動電話", -"调制解调器": "調制解調器", -"數據機": "調制解調器", -"短信": "短訊", -"簡訊": "短訊", -"乍得": "乍得", -"查德": "乍得", -"也门": "也門", -"葉門": "也門", -"伯利兹": "伯利茲", -"貝里斯": "伯利茲", -"佛得角": "佛得角", -"維德角": "佛得角", -"克罗地亚": "克羅地亞", -"克羅埃西亞": "克羅地亞", -"冈比亚": "岡比亞", -"甘比亞": "岡比亞", -"几内亚比绍": "幾內亞比紹", -"幾內亞比索": "幾內亞比紹", -"列支敦士登": "列支敦士登", -"列支敦斯登": "列支敦士登", -"利比里亚": "利比里亞", -"賴比瑞亞": "利比里亞", -"加纳": "加納", -"迦納": "加納", -"加蓬": "加蓬", -"加彭": "加蓬", -"博茨瓦纳": "博茨瓦納", -"波札那": "博茨瓦納", -"卡塔尔": "卡塔爾", -"卡達": "卡塔爾", -"卢旺达": "盧旺達", -"盧安達": "盧旺達", -"危地马拉": "危地馬拉", -"瓜地馬拉": "危地馬拉", -"厄瓜多尔": "厄瓜多爾", -"厄瓜多": "厄瓜多爾", -"厄立特里亚": "厄立特里亞", -"厄利垂亞": "厄立特里亞", -"吉布提": "吉布堤", -"吉布地": "吉布堤", -"哥斯达黎加": "哥斯達黎加", -"哥斯大黎加": "哥斯達黎加", -"图瓦卢": "圖瓦盧", -"吐瓦魯": "圖瓦盧", -"圣卢西亚": "聖盧西亞", -"聖露西亞": "聖盧西亞", -"圣基茨和尼维斯": "聖吉斯納域斯", -"聖克里斯多福及尼維斯": "聖吉斯納域斯", -"圣文森特和格林纳丁斯": "聖文森特和格林納丁斯", -"聖文森及格瑞那丁": "聖文森特和格林納丁斯", -"圣马力诺": "聖馬力諾", -"聖馬利諾": "聖馬力諾", -"圭亚那": "圭亞那", -"蓋亞那": "圭亞那", -"坦桑尼亚": "坦桑尼亞", -"坦尚尼亞": "坦桑尼亞", -"埃塞俄比亚": "埃塞俄比亞", -"衣索匹亞": "埃塞俄比亞", -"衣索比亞": "埃塞俄比亞", -"基里巴斯": "基里巴斯", -"吉里巴斯": "基里巴斯", -"狮子山": "獅子山", -"塞普勒斯": "塞浦路斯", -"塞舌尔": "塞舌爾", -"塞席爾": "塞舌爾", -"多米尼加": "多明尼加共和國", -"多明尼加": "多明尼加共和國", -"多米尼加联邦": "多明尼加聯邦", -"多米尼克": "多明尼加聯邦", -"安提瓜和巴布达": "安提瓜和巴布達", -"安地卡及巴布達": "安提瓜和巴布達", -"尼日利亚": "尼日利亞", -"奈及利亞": "尼日利亞", -"尼日尔": "尼日爾", -"尼日": "尼日爾", -"巴巴多斯": "巴巴多斯", -"巴貝多": "巴巴多斯", -"巴布亚新几内亚": "巴布亞新畿內亞", -"巴布亞紐幾內亞": "巴布亞新畿內亞", -"布基纳法索": "布基納法索", -"布吉納法索": "布基納法索", -"布隆迪": "布隆迪", -"蒲隆地": "布隆迪", -"義大利": "意大利", -"所罗门群岛": "所羅門群島", -"索羅門群島": "所羅門群島", -"斯威士兰": "斯威士蘭", -"史瓦濟蘭": "斯威士蘭", -"斯洛文尼亚": "斯洛文尼亞", -"斯洛維尼亞": "斯洛文尼亞", -"新西兰": "新西蘭", -"紐西蘭": "新西蘭", -"格林纳达": "格林納達", -"格瑞那達": "格林納達", -"格鲁吉亚": "喬治亞", -"格魯吉亞": "喬治亞", -"梵蒂冈": "梵蒂岡", -"毛里塔尼亚": "毛里塔尼亞", -"茅利塔尼亞": "毛里塔尼亞", -"毛里求斯": "毛里裘斯", -"模里西斯": "毛里裘斯", -"沙烏地阿拉伯": "沙特阿拉伯", -"波斯尼亚和黑塞哥维那": "波斯尼亞黑塞哥維那", -"波士尼亞赫塞哥維納": "波斯尼亞黑塞哥維那", -"津巴布韦": "津巴布韋", -"辛巴威": "津巴布韋", -"洪都拉斯": "洪都拉斯", -"宏都拉斯": "洪都拉斯", -"特立尼达和托巴哥": "特立尼達和多巴哥", -"千里達托貝哥": "特立尼達和多巴哥", -"瑙鲁": "瑙魯", -"諾魯": "瑙魯", -"瓦努阿图": "瓦努阿圖", -"萬那杜": "瓦努阿圖", -"科摩罗": "科摩羅", -"葛摩": "科摩羅", -"索马里": "索馬里", -"索馬利亞": "索馬里", -"老挝": "老撾", -"寮國": "老撾", -"肯尼亚": "肯雅", -"肯亞": "肯雅", -"莫桑比克": "莫桑比克", -"莫三比克": "莫桑比克", -"莱索托": "萊索托", -"賴索托": "萊索托", -"贝宁": "貝寧", -"貝南": "貝寧", -"赞比亚": "贊比亞", -"尚比亞": "贊比亞", -"阿塞拜疆": "阿塞拜疆", -"亞塞拜然": "阿塞拜疆", -"阿拉伯联合酋长国": "阿拉伯聯合酋長國", -"阿拉伯聯合大公國": "阿拉伯聯合酋長國", -"马尔代夫": "馬爾代夫", -"馬爾地夫": "馬爾代夫", -"馬利共和國": "馬里共和國", -"方便面": "即食麵", -"快速面": "即食麵", -"速食麵": "即食麵", -"泡麵": "即食麵", -"土豆": "馬鈴薯", -"华乐": "中樂", -"民乐": "中樂", -"計程車": "的士", -"出租车": "的士", -"公車": "巴士", -"自行车": "單車", -"犬只": "狗隻", -"台球": "桌球", -"撞球": "桌球", -"冰淇淋": "雪糕", -"賓士": "平治", -"捷豹": "積架", -"福斯": "福士", -"雪铁龙": "先進", -"雪鐵龍": "先進", -"沃尓沃": "富豪", -"马自达": "萬事得", -"馬自達": "萬事得", -"寶獅": "標致", -"拿破崙": "拿破侖", -"布什": "布殊", -"布希": "布殊", -"克林顿": "克林頓", -"柯林頓": "克林頓", -"萨达姆": "薩達姆", -"海珊": "侯賽因", -"侯赛因": "侯賽因", -"大卫·贝克汉姆": "大衛碧咸", -"迈克尔·欧文": "米高奧雲", -"珍妮弗·卡普里亚蒂": "卡佩雅蒂", -"马拉特·萨芬": "沙芬", -"迈克尔·舒马赫": "舒麥加", -"希特勒": "希特拉", -"狄安娜": "戴安娜", -"黛安娜": "戴安娜", -} - -zh2CN = { -"記憶體": "内存", -"預設": "默认", -"串列": "串行", -"乙太網": "以太网", -"點陣圖": "位图", -"常式": "例程", -"游標": "光标", -"光碟": "光盘", -"光碟機": "光驱", -"全形": "全角", -"共用": "共享", -"載入": "加载", -"半形": "半角", -"變數": "变量", -"雜訊": "噪声", -"因數": "因子", -"功能變數名稱": "域名", -"音效卡": "声卡", -"字型大小": "字号", -"字型檔": "字库", -"欄位": "字段", -"字元": "字符", -"存檔": "存盘", -"定址": "寻址", -"章節附註": "尾注", -"非同步": "异步", -"匯流排": "总线", -"括弧": "括号", -"介面": "接口", -"控制項": "控件", -"許可權": "权限", -"碟片": "盘片", -"矽片": "硅片", -"矽谷": "硅谷", -"硬碟": "硬盘", -"磁碟": "磁盘", -"磁軌": "磁道", -"程式控制": "程控", -"運算元": "算子", -"演算法": "算法", -"晶片": "芯片", -"晶元": "芯片", -"片語": "词组", -"軟碟機": "软驱", -"快閃記憶體": "快闪存储器", -"滑鼠": "鼠标", -"進位": "进制", -"互動式": "交互式", -"優先順序": "优先级", -"感測": "传感", -"攜帶型": "便携式", -"資訊理論": "信息论", -"迴圈": "循环", -"防寫": "写保护", -"分散式": "分布式", -"解析度": "分辨率", -"伺服器": "服务器", -"等於": "等于", -"區域網": "局域网", -"巨集": "宏", -"掃瞄器": "扫瞄仪", -"寬頻": "宽带", -"資料庫": "数据库", -"乳酪": "奶酪", -"鉅賈": "巨商", -"手電筒": "手电", -"萬曆": "万历", -"永曆": "永历", -"辭彙": "词汇", -"母音": "元音", -"自由球": "任意球", -"頭槌": "头球", -"進球": "入球", -"顆進球": "粒入球", -"射門": "打门", -"蓋火鍋": "火锅盖帽", -"印表機": "打印机", -"打印機": "打印机", -"位元組": "字节", -"字節": "字节", -"列印": "打印", -"打印": "打印", -"硬體": "硬件", -"二極體": "二极管", -"二極管": "二极管", -"三極體": "三极管", -"三極管": "三极管", -"數位": "数码", -"數碼": "数码", -"軟體": "软件", -"軟件": "软件", -"網路": "网络", -"網絡": "网络", -"人工智慧": "人工智能", -"太空梭": "航天飞机", -"穿梭機": "航天飞机", -"網際網路": "因特网", -"互聯網": "因特网", -"機械人": "机器人", -"機器人": "机器人", -"行動電話": "移动电话", -"流動電話": "移动电话", -"調制解調器": "调制解调器", -"數據機": "调制解调器", -"短訊": "短信", -"簡訊": "短信", -"烏茲別克": "乌兹别克斯坦", -"查德": "乍得", -"乍得": "乍得", -"也門": "", -"葉門": "也门", -"伯利茲": "伯利兹", -"貝里斯": "伯利兹", -"維德角": "佛得角", -"佛得角": "佛得角", -"克羅地亞": "克罗地亚", -"克羅埃西亞": "克罗地亚", -"岡比亞": "冈比亚", -"甘比亞": "冈比亚", -"幾內亞比紹": "几内亚比绍", -"幾內亞比索": "几内亚比绍", -"列支敦斯登": "列支敦士登", -"列支敦士登": "列支敦士登", -"利比里亞": "利比里亚", -"賴比瑞亞": "利比里亚", -"加納": "加纳", -"迦納": "加纳", -"加彭": "加蓬", -"加蓬": "加蓬", -"博茨瓦納": "博茨瓦纳", -"波札那": "博茨瓦纳", -"卡塔爾": "卡塔尔", -"卡達": "卡塔尔", -"盧旺達": "卢旺达", -"盧安達": "卢旺达", -"危地馬拉": "危地马拉", -"瓜地馬拉": "危地马拉", -"厄瓜多爾": "厄瓜多尔", -"厄瓜多": "厄瓜多尔", -"厄立特里亞": "厄立特里亚", -"厄利垂亞": "厄立特里亚", -"吉布堤": "吉布提", -"吉布地": "吉布提", -"哈薩克": "哈萨克斯坦", -"哥斯達黎加": "哥斯达黎加", -"哥斯大黎加": "哥斯达黎加", -"圖瓦盧": "图瓦卢", -"吐瓦魯": "图瓦卢", -"土庫曼": "土库曼斯坦", -"聖盧西亞": "圣卢西亚", -"聖露西亞": "圣卢西亚", -"聖吉斯納域斯": "圣基茨和尼维斯", -"聖克里斯多福及尼維斯": "圣基茨和尼维斯", -"聖文森特和格林納丁斯": "圣文森特和格林纳丁斯", -"聖文森及格瑞那丁": "圣文森特和格林纳丁斯", -"聖馬力諾": "圣马力诺", -"聖馬利諾": "圣马力诺", -"圭亞那": "圭亚那", -"蓋亞那": "圭亚那", -"坦桑尼亞": "坦桑尼亚", -"坦尚尼亞": "坦桑尼亚", -"埃塞俄比亞": "埃塞俄比亚", -"衣索匹亞": "埃塞俄比亚", -"衣索比亞": "埃塞俄比亚", -"吉里巴斯": "基里巴斯", -"基里巴斯": "基里巴斯", -"塔吉克": "塔吉克斯坦", -"塞拉利昂": "塞拉利昂", -"塞普勒斯": "塞浦路斯", -"塞浦路斯": "塞浦路斯", -"塞舌爾": "塞舌尔", -"塞席爾": "塞舌尔", -"多明尼加共和國": "多米尼加", -"多明尼加": "多米尼加", -"多明尼加聯邦": "多米尼加联邦", -"多米尼克": "多米尼加联邦", -"安提瓜和巴布達": "安提瓜和巴布达", -"安地卡及巴布達": "安提瓜和巴布达", -"尼日利亞": "尼日利亚", -"奈及利亞": "尼日利亚", -"尼日爾": "尼日尔", -"尼日": "尼日尔", -"巴貝多": "巴巴多斯", -"巴巴多斯": "巴巴多斯", -"巴布亞新畿內亞": "巴布亚新几内亚", -"巴布亞紐幾內亞": "巴布亚新几内亚", -"布基納法索": "布基纳法索", -"布吉納法索": "布基纳法索", -"蒲隆地": "布隆迪", -"布隆迪": "布隆迪", -"希臘": "希腊", -"帛琉": "帕劳", -"義大利": "意大利", -"意大利": "意大利", -"所羅門群島": "所罗门群岛", -"索羅門群島": "所罗门群岛", -"汶萊": "文莱", -"斯威士蘭": "斯威士兰", -"史瓦濟蘭": "斯威士兰", -"斯洛文尼亞": "斯洛文尼亚", -"斯洛維尼亞": "斯洛文尼亚", -"新西蘭": "新西兰", -"紐西蘭": "新西兰", -"格林納達": "格林纳达", -"格瑞那達": "格林纳达", -"格魯吉亞": "乔治亚", -"喬治亞": "乔治亚", -"梵蒂岡": "梵蒂冈", -"毛里塔尼亞": "毛里塔尼亚", -"茅利塔尼亞": "毛里塔尼亚", -"毛里裘斯": "毛里求斯", -"模里西斯": "毛里求斯", -"沙地阿拉伯": "沙特阿拉伯", -"沙烏地阿拉伯": "沙特阿拉伯", -"波斯尼亞黑塞哥維那": "波斯尼亚和黑塞哥维那", -"波士尼亞赫塞哥維納": "波斯尼亚和黑塞哥维那", -"津巴布韋": "津巴布韦", -"辛巴威": "津巴布韦", -"宏都拉斯": "洪都拉斯", -"洪都拉斯": "洪都拉斯", -"特立尼達和多巴哥": "特立尼达和托巴哥", -"千里達托貝哥": "特立尼达和托巴哥", -"瑙魯": "瑙鲁", -"諾魯": "瑙鲁", -"瓦努阿圖": "瓦努阿图", -"萬那杜": "瓦努阿图", -"溫納圖": "瓦努阿图", -"科摩羅": "科摩罗", -"葛摩": "科摩罗", -"象牙海岸": "科特迪瓦", -"突尼西亞": "突尼斯", -"索馬里": "索马里", -"索馬利亞": "索马里", -"老撾": "老挝", -"寮國": "老挝", -"肯雅": "肯尼亚", -"肯亞": "肯尼亚", -"蘇利南": "苏里南", -"莫三比克": "莫桑比克", -"莫桑比克": "莫桑比克", -"萊索托": "莱索托", -"賴索托": "莱索托", -"貝寧": "贝宁", -"貝南": "贝宁", -"贊比亞": "赞比亚", -"尚比亞": "赞比亚", -"亞塞拜然": "阿塞拜疆", -"阿塞拜疆": "阿塞拜疆", -"阿拉伯聯合酋長國": "阿拉伯联合酋长国", -"阿拉伯聯合大公國": "阿拉伯联合酋长国", -"南韓": "韩国", -"馬爾代夫": "马尔代夫", -"馬爾地夫": "马尔代夫", -"馬爾他": "马耳他", -"馬利共和國": "马里共和国", -"即食麵": "方便面", -"快速面": "方便面", -"速食麵": "方便面", -"泡麵": "方便面", -"笨豬跳": "蹦极跳", -"绑紧跳": "蹦极跳", -"冷盤": "凉菜", -"冷菜": "凉菜", -"散钱": "零钱", -"谐星": "笑星", -"夜学": "夜校", -"华乐": "民乐", -"中樂": "民乐", -"屋价": "房价", -"的士": "出租车", -"計程車": "出租车", -"公車": "公共汽车", -"單車": "自行车", -"節慶": "节日", -"芝士": "乾酪", -"狗隻": "犬只", -"士多啤梨": "草莓", -"忌廉": "奶油", -"桌球": "台球", -"撞球": "台球", -"雪糕": "冰淇淋", -"衞生": "卫生", -"衛生": "卫生", -"賓士": "奔驰", -"平治": "奔驰", -"積架": "捷豹", -"福斯": "大众", -"福士": "大众", -"雪鐵龍": "雪铁龙", -"萬事得": "马自达", -"馬自達": "马自达", -"寶獅": "标志", -"拿破崙": "拿破仑", -"布殊": "布什", -"布希": "布什", -"柯林頓": "克林顿", -"克林頓": "克林顿", -"薩達姆": "萨达姆", -"海珊": "萨达姆", -"梵谷": "凡高", -"大衛碧咸": "大卫·贝克汉姆", -"米高奧雲": "迈克尔·欧文", -"卡佩雅蒂": "珍妮弗·卡普里亚蒂", -"沙芬": "马拉特·萨芬", -"舒麥加": "迈克尔·舒马赫", -"希特拉": "希特勒", -"黛安娜": "戴安娜", -"希拉": "赫拉", -} - -zh2SG = { -"方便面": "快速面", -"速食麵": "快速面", -"即食麵": "快速面", -"蹦极跳": "绑紧跳", -"笨豬跳": "绑紧跳", -"凉菜": "冷菜", -"冷盤": "冷菜", -"零钱": "散钱", -"散紙": "散钱", -"笑星": "谐星", -"夜校": "夜学", -"民乐": "华乐", -"住房": "住屋", -"房价": "屋价", -"泡麵": "快速面", -}