위키낱말사전 kowiktionary https://ko.wiktionary.org/wiki/%EC%9C%84%ED%82%A4%EB%82%B1%EB%A7%90%EC%82%AC%EC%A0%84:%EB%8C%80%EB%AC%B8 MediaWiki 1.45.0-wmf.8 case-sensitive 미디어 특수 토론 사용자 사용자토론 위키낱말사전 위키낱말사전토론 파일 파일토론 미디어위키 미디어위키토론 틀토론 도움말 도움말토론 분류 분류토론 부록 부록 토론 TimedText TimedText talk 모듈 모듈토론 Sonntag 0 3737 4388195 4300842 2025-07-06T23:43:35Z Jeuwre 13250 발음 4388195 wikitext text/x-wiki == 독일어 == :*남성 {{독일어 명사 변화|성=남 | Sonntag | Sonntags | Sonntag | Sonntag | Sonntage | Sonntage | Sonntagen | Sonntage }} {{발음 듣기|De-Sonntag2.ogg||De-Sonntag.ogg|독일 }} {{IPA|ˈzɔntaːk}} # [[일요일]]. (부록: [[부록:독일어 요일과 달|독일어 요일과 달]]) :* :* 참조: [[Montag]] - [[Dienstag]] - [[Mittwoch]] - [[Donnerstag]] - [[Freitag]] - [[Samstag]] - [[Sonntag]] 41ov8g12vnz6gopa73d7otwmzxwbsly いる 0 18490 4388220 4053902 2025-07-07T03:56:39Z CHK2605 33979 4388220 wikitext text/x-wiki == 일본어 == === 어원 1 === {{ja-kanjitab|alt=居る}} ==== 발음 ==== {{ja-pron|いる|acc=0|acc_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} ==== 동사 ==== {{ja-verb|type=2|tr=자동사|hhira=ゐる}} # [[있다]], [[존재하다]] #: {{ux|ja|ペンギンは北%極には'''いない'''|ペンギン は ほっ%きょく に は '''いない'''|펭귄은 북극에는 '''없다'''}} #: {{ux|ja|子%供たちが公園で遊んで'''いる'''|こ%どもたち が こうえん で あそんで '''いる'''|아이들이 공원에서 놀고 '''있다'''}} # [[살다]], [[체류하다]] #: {{ux|ja|しばらくここに'''いる'''つもりです|しばらく ここ に '''いる''' つもり です|잠시 여기에 '''있을''' 생각입니다}} # [[깨어있다]], [[머물다]] #: {{ux|ja|明け方まで'''起きていた'''|あけがた まで '''おきていた'''|새벽까지 '''깨어있었다'''}} # {{라벨|ja|보조동사}} (동사의 연용형에 …ている 또는 …でいる 형태로 붙어) ## (동작의 진행) ~[[하다|하고]] [[있다]] ##: {{ux|ja|猫が鳴いて'''いる'''|ねこ が ないて '''いる'''|고양이가 울고 '''있다'''}} ##: {{ux|ja|雨が降って'''いる'''|あめ が ふって '''いる'''|비가 내리고 '''있다'''}} ## (결과의 지속) ~[[하다|해]] [[있다]] ##: {{ux|ja|枝が枯れて'''いる'''|えだ が かれて '''いる'''|가지가 말라 '''있다'''}} ##: {{ux|ja|窓があいて'''いる'''|まど が あいて '''いる'''|창문이 열려 '''있다'''}} ##: {{ux|ja|彼の気%持ちはもう変わって'''いる'''|かれ の き%もち は もう かわって '''いる'''|그의 마음은 이미 변해 '''있다'''}} ===== 활용형 ===== {{ja-conj}} === 어원 2 === {{ja-see|入る|要る|煎る|射る|鋳る|率る|沃る|熟る}} qpdaa56nory31d7tc610iw5dhnecvmj 現れる 0 18847 4388222 4292054 2025-07-07T03:59:53Z CHK2605 33979 4388222 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あらわ|sort=あらわれる|yomi=k|alt=現われる,表れる,表われる,顕れる}} === 어원 === === 발음 === {{ja-pron|あらわれる|acc=4|acc_ref=DJR,NHK,SMK2}} === 동사 === {{ja-verb|あらわれる|type=2|tr=자동사|hhira=あらはれる}} # [[나타나다]], [[출현하다]] #: {{ux|ja|彗星のごとく'''現れる'''|すいせい の ごとく '''あらわれる'''|혜성처럼 '''나타나다'''}} #: {{ux|ja|雲間から太陽が'''現れる'''|くもま から たいよう が '''あらわれる'''|구름 사이에서 태양이 '''나타나다'''}} # [[알려지다]] #: {{ux|ja|真価が世に'''現れる'''|しんか が よ に '''あらわれる'''|진가가 세상에 '''드러나다'''}} ==== 활용형 ==== {{ja-conj}} r16p1kd8l5v2j1q6h867nmybhriz5bd 4388225 4388222 2025-07-07T04:15:56Z CHK2605 33979 4388225 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あらわ|sort=あらわれる|yomi=k|alt=現われる,表れる,表われる,顕れる,露れる}} === 어원 === === 발음 === {{ja-pron|あらわれる|acc=4|acc_ref=DJR,NHK,SMK2}} === 동사 === {{ja-verb|あらわれる|type=2|tr=자동사|hhira=あらはれる}} # [[나타나다]], [[출현하다]] #: {{ux|ja|彗星のごとく'''現れる'''|すいせい の ごとく '''あらわれる'''|혜성처럼 '''나타나다'''}} #: {{ux|ja|雲間から太陽が'''現れる'''|くもま から たいよう が '''あらわれる'''|구름 사이에서 태양이 '''나타나다'''}} # [[알려지다]] #: {{ux|ja|真価が世に'''現れる'''|しんか が よ に '''あらわれる'''|진가가 세상에 '''드러나다'''}} ==== 활용형 ==== {{ja-conj}} rp1hc9xh9xd36njw6aubrvnytb7lxoi きる 0 20205 4388183 3999766 2025-07-06T15:12:30Z CHK2605 33979 4388183 wikitext text/x-wiki {{참고|キル}} == 일본어 == {{ja-see|切る|着る|斬る|伐る}} 8awtu7x88y0u21rosfo79d6318hycae 4388184 4388183 2025-07-06T15:14:47Z CHK2605 33979 4388184 wikitext text/x-wiki {{참고|キル}} == 일본어 == {{ja-see|切る|着る|斬る}} hfgw0e3bfd3bt5srpidbo9ht52a4bnk 着る 0 20206 4388180 4029210 2025-07-06T15:01:43Z CHK2605 33979 4388180 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|き|yomi=k}} === 발음 === {{ja-pron|きる|acc=0|acc1_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} === 동사 === {{ja-verb|きる|type=2|tr=타동사}} # [[입다]], [[몸]]에 [[걸치다]] #: {{ux|ja|上%着を'''着る'''|うわ%ぎ を '''きる'''|겉옷을 '''입다'''}} #: {{ux|ja|セーターを'''着る'''|セーター を '''きる'''|스웨터를 '''입다'''}} # (…をきる의 형태로) [[떠맡다]], [[뒤집어쓰다]] #: {{ux|ja|人の罪を'''着る'''|ひと の つみ を '''きる'''|남의 죄를 '''뒤집어쓰다'''}} #: {{ux|ja|彼はすべての責任を'''着た'''|かれ は すべて の せきにん を '''きた'''|그는 모든 책임을 '''떠맡았다'''}} # (은혜 등을) [[입다]] #: {{ux|ja|恩に'''着る'''|おん に '''きる'''|은혜를 '''입다'''}} ==== 활용형 ==== {{ja-conj}} ==== 유의어 ==== * {{ja-r|纏う|まと.う}}, {{ja-r|linkto=着用|着用する|ちゃくよう する}} ==== 반의어 ==== * {{ja-r|脱ぐ|ぬぐ}} dn5ioj9gvfkhci6jjgyrm6av7n6t9lo 4388181 4388180 2025-07-06T15:05:50Z CHK2605 33979 4388181 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|き|yomi=k|alt=著る}} === 발음 === {{ja-pron|きる|acc=0|acc1_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} === 동사 === {{ja-verb|きる|type=2|tr=타동사}} # [[입다]], [[몸]]에 [[걸치다]] #: {{ux|ja|上%着を'''着る'''|うわ%ぎ を '''きる'''|겉옷을 '''입다'''}} #: {{ux|ja|セーターを'''着る'''|セーター を '''きる'''|스웨터를 '''입다'''}} # (…をきる의 형태로) [[떠맡다]], [[뒤집어쓰다]] #: {{ux|ja|人の罪を'''着る'''|ひと の つみ を '''きる'''|남의 죄를 '''뒤집어쓰다'''}} #: {{ux|ja|彼はすべての責任を'''着た'''|かれ は すべて の せきにん を '''きた'''|그는 모든 책임을 '''떠맡았다'''}} # (은혜 등을) [[입다]] #: {{ux|ja|恩に'''着る'''|おん に '''きる'''|은혜를 '''입다'''}} ==== 활용형 ==== {{ja-conj}} ==== 유의어 ==== * {{ja-r|纏う|まと.う}}, {{ja-r|linkto=着用|着用する|ちゃくよう する}} ==== 반의어 ==== * {{ja-r|脱ぐ|ぬぐ}} 1wglmr1dvps5kgnqsqa0c6i6lvemap4 食べる 0 21315 4388185 4388109 2025-07-06T15:16:09Z CHK2605 33979 4388185 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|た|yomi=k}} === 발음 === {{ja-pron|たべる|acc=2|acc_ref=DJR}} === 동사 === {{ja-verb|たべる|type=2|tr=타동사}} # [[먹다]], [[섭취하다]] #: {{uxi|ja|生で'''食べる'''|なまで '''たべる'''|생으로 '''먹다'''}} #: {{uxi|ja|ひと口'''食べて'''みる|ひとくち '''たべて''' みる|한 입 '''먹어''' 보다}} # [[생활하다]], [[살다]] #: {{ux|ja|なんとか'''食べて'''いくくらいの蓄えはある|なんとか '''たべて''' いく くらい の たくわえ は ある|그럭저럭 '''먹고''' 살 만큼의 저축은 있다}} ==== 활용형 ==== {{ja-conj}} ==== 같이 보기 ==== <center> {| class="wikitable mw-collapsible mw-collapsed" ! colspan="3" |함께 쓰이는 낱말 |- |色々な[[物]]・[[甘い物]]・ご飯・[[朝ご飯]]・[[お昼]]・[[肉]]・[[豚肉]]・[[魚]]・[[お寿司]]・[[ラーメン]]・[[キムチ]]・[[お弁当]]・[[サンドイッチ]]・[[果物]]・[[リンゴ]]・[[お菓子]]・[[ケーキ]] |を食べる | |- |[[買う|買って]]・醤油を[[付ける|付けて]] |食べる | |- |付けないで | | |- |[[一緒に]]・[[夜中]]に・[[もう]]・[[たくさん]]・[[しっかり]]・[[ゆっくり]]・[[無理に]] |食べる | |- |[[家]]・[[外]]・[[レストラン]] |で食べる | |- |[[あまり]] |食べない | |- | |食べ |たり・[[ながら]]・[[終わる]]・[[易い]] |- | |食べに |[[行く]] |- | |(が)食べ |たい |- | |食べる |[[人]]・時・[[時間]] |- | |食べない |んです・と[[言う]] |- | |食べない |の・[[人]] |- | |食べなくても |[[良い]] |- | |食べた |[[後]] |- | |食べて |から・ください |}</center> [[분류:일본어 가나와 간지의 혼용]] k9iunhgjprpwjwx048l1gymwrjh614h にる 0 39711 4388189 4005761 2025-07-06T15:35:06Z CHK2605 33979 내용을 "== 일본어 == {{ja-see|似る|煮る}}"(으)로 바꿈 4388189 wikitext text/x-wiki == 일본어 == {{ja-see|似る|煮る}} nlauofactuyaou4bmvdt5x81hd4igf0 わかれる 0 40345 4388237 3484815 2025-07-07T05:35:35Z CHK2605 33979 4388237 wikitext text/x-wiki == 일본어 == === 어원 1 === # {{ja-see|分かれる|別れる}} === 어원 2 === {{ja-verb form}} # [[沸く]]의 수동형 # [[湧く]]의 수동형 2ly6ot05qcxdrqyjqad63txe7l13or6 おきる 0 48450 4388205 4063442 2025-07-07T02:23:30Z CHK2605 33979 내용을 "== 일본어 == {{ja-see|起きる|熾きる}}"(으)로 바꿈 4388205 wikitext text/x-wiki == 일본어 == {{ja-see|起きる|熾きる}} ipt10r67xw0dnh9la0mgdy6kqvggm82 おちる 0 49004 4388202 4022484 2025-07-07T02:13:06Z CHK2605 33979 내용을 "== 일본어 == {{ja-see|落ちる}}"(으)로 바꿈 4388202 wikitext text/x-wiki == 일본어 == {{ja-see|落ちる}} qc2pd0wfktla2l916p4p8pk4pwfhtat 落ちる 0 49005 4388196 3484662 2025-07-07T01:57:58Z CHK2605 33979 4388196 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|yomi=k|お|alt=堕ちる,墜ちる,零ちる:드물게,落る}} === 발음 === {{ja-pron|おちる|acc=2|acc_ref=DJR,SMK7}} === 동사 === {{ja-verb|tr=자동사|type=2|おちる}} # [[떨어지다]], [[낙하하다]] ## [[낙하하다]] ##: {{유의어|ja|墜ちる}} ##: {{ux|ja|谷底へ'''落ちる'''|たにそこ へ '''おちる'''|계곡 바닥으로 '''떨어지다'''}} ##: {{ux|ja|涙が頰を伝って'''落ちる'''|なみだ が ほお を つたって '''おちる'''|눈물이 뺨을 타고 '''떨어지다'''}} ## (눈, 비 등이) [[내리다]] ##: {{ux|ja|大粒の雨が'''落て'''きた|おおつぶ の あめ が '''おちて''' きた|굵은 빗방울이 '''떨어지기''' 시작했다}} ## (해, 달이) [[지다]] ##: {{ux|ja|山際に日が'''落ちる'''|やまぎわ に ひ が '''おちる'''|산기슭에 해가 '''지다'''}} ## (시선, 빛 등이) [[쏟아지다]] ##: {{ux|ja|木漏れ日が地に'''落ちる'''|こもれび が ち に '''おちる'''|나뭇잎 사이로 비치는 햇살이 땅에 '''쏟아지다'''}} ## (돈 등이) [[쓰이다]] ##: {{ux|ja|観光%地に多くの金が'''落ちる'''|かんこう%ち に おおく の かね が '''おちる'''|관광지에 많은 돈이 '''쓰이다'''}} # [[없어지다]] ## [[지워지다]], [[빠지다]] ##: {{ux|ja|色が'''落ちる'''|いろ が '''おちる'''|색이 '''빠지다'''}} ##: {{ux|ja|化%粧が'''落ちる'''|け%しょう が '''おちる'''|화장이 '''지워지다'''}} ## (병이) [[낫다]], [[없어지다]] ##: {{ux|ja|狐が'''落ちる'''|きつね が '''おちる'''|제정신을 찾다|lit=여우가 '''떨어져 나가다'''}} ## (살 등이) [[빠지다]], [[움푹]] [[들어가다]] ##: {{ux|ja|頰の肉が'''落ちる'''|ほお の にく が '''おちる'''|뺨의 살이 '''빠지다'''}} # [[빠지다]], [[누락되다]] #: {{ux|ja|電%話%番号がリストから'''落ちて'''いる|でん%わ%ばんごう が リスト から '''おちて''' いる|전화번호가 목록에서 '''누락되어''' 있다}} #: {{ux|ja|重%要な情%報が'''落ちて'''いる|じゅう%よう な じょう%ほう が '''おちて''' いる|중요한 정보가 '''빠져''' 있다}} # [[탈락하다]] #: {{반의어|ja|受かる}} #: {{ux|ja|予%選で'''落ちる'''|よ%せん で '''おちる'''|예선에서 '''탈락하다'''}} # [[피난하다]], [[낙향하다]] #: {{ux|ja|山間の地へ'''落ちる'''|さんかん の ち へ '''おちる'''|산간 지방으로 '''피난하다'''}} # [[떨어지다]], [[저하되다]] ## [[열악해지다]], [[쇠퇴하다]] ##: {{ux|ja|鮮%度が'''落ちる'''|せん%ど が '''おちる'''|신선도가 '''떨어지다'''}} ## (지위 등이) [[내려가다]], [[강등되다]] ## [[몰락하다]], [[쇠락하다]] ##: {{ux|ja|所まで'''落ちる'''|ところ まで '''おちる'''|바닥까지 '''추락하다'''}} ## [[타락하다]] ##: {{유의어|ja|堕ちる}} ##: {{ux|ja|悪の道に'''堕ちる'''|あく の みち に '''おちる'''|악의 길로 '''타락하다'''}} # [[귀착되다]], [[빠지다]] ## [[낙찰되다]] ##: {{ux|ja|店が人%手に'''落ちる'''|みせ が ひと%で に '''おちる'''|가게가 남의 손에 '''넘어가다'''}} ## (계략, 함정 등에) [[빠지다]], [[걸리다]] ##: {{ux|ja|わなに'''落ちる'''|わな に '''おちる'''|덫에 '''걸리다'''}} ##: {{ux|ja|謀%略に'''落ちる'''|ぼう%りゃく に '''おちる'''|모략에 '''빠지다'''}} ## [[자백하다]], [[털어놓다]] ##: {{ux|ja|容%疑%者が'''落ちる'''のは時%間の問題だ|よう%ぎ%しゃ が '''おちる''' の は じ%かん の もんだい だ|용의자가 '''자백하는''' 것은 시간문제다}} ## (설득에) [[넘어가다]], [[굴복하다]] ##: {{ux|ja|くどかれて彼女もとうとう'''落ちた'''|くどかれて かのじょ も とうとう '''おちた'''|설득당해서 그녀도 결국 '''넘어갔다'''}} ## [[귀결되다]] ##: {{ux|ja|なんのかのといっても話はいつもそこに'''落ちる'''|なん の か の と いって も はなし は いつも そこ に '''おちる'''|이러니저러니 해도 이야기는 언제나 그곳으로 '''귀결된다'''}} ## (상태에) [[빠지다]] ##: {{ux|ja|深い眠りに'''落ちる'''|ふかい ねむり に '''おちる'''|깊은 잠에 '''빠지다'''}} # [[함락되다]] #: {{ux|ja|城が'''落ちる'''|しろ が '''おちる'''|성이 '''함락되다'''}} # {{라벨|ja|체육|유도}} [[기절하다]] #: {{ux|ja|締められて'''落ちる'''|しめられて '''おちる'''|조르기에 걸려 '''기절하다'''}} # [[납득하다]], [[이해하다]] #: {{ux|ja|腑に'''落ちない'''|ふ に '''おちない'''|납득이 '''안 되다'''}} # {{라벨|ja|컴퓨터}} [[다운되다]], [[종료되다]] #: {{ux|ja|ブラウザーが'''落ちる'''|ブラウザー が '''おちる'''|브라우저가 '''다운되다'''}} #: {{ux|ja|ゲームが途%中で'''落ちた'''|ゲーム が と%ちゅう で '''おちた'''|게임이 중간에 '''꺼졌다'''}} ==== 활용형 ==== {{ja-conj}} [[분류:일본어 가나와 간지의 혼용]] c0sakkw9sqtlb20donaerdtbusdhiwl おりる 0 57834 4388194 4029480 2025-07-06T15:57:02Z CHK2605 33979 내용을 "== 일본어 == {{ja-see|下りる|降りる}}"(으)로 바꿈 4388194 wikitext text/x-wiki == 일본어 == {{ja-see|下りる|降りる}} dovxna2hbuzmyrp74tvm97oqkb4lg0u point 0 59255 4388206 4360634 2025-07-07T03:21:23Z 211.200.184.122 4388206 wikitext text/x-wiki == 영어 == {{발음 듣기|en-us-point.ogg|미국}} {{IPA|pɔint}} # [[뾰족하다|뽀족한]] [[끝]]. :* # 어디에 찍히거나 뭍은 [[점]], [[반점]]. :* # (지리) [[지점]]. # 관점 :* check point: [[검문소]] # 이야기의 [[관점]], [[논점]], [[문제점]], [[욧점]]. :* main '''point''': 주된 관점 :* The '''point''' is how to solve this problem. 요점은 이 문제를 어떻게 해결하느냐 하는 것이다. # [[순간]], [[시점]]. :* turning point: [[귀환점]] # (부호) [[점]]. (수학) [[소숫점]]. :* # (도표, 지표) [[값]], (주)[[가]], [[점수]]. :* # (인쇄) 글자의 크기 [[포인트]]. :* === 동사 === # ㉹ [[뽀족하다|뾰족하게]] 하다, [[날카롭다|날카롭게]] 하다. #*파생어: [[pointed]] # ㉹ 어떤 점을 [[지적하다]]. # ㉶ (나침반, 시계) [[가리키다]]. #* point towards 가리키다. #㉶ [[손가락질하다]]. #* The man is '''pointing''' at something on the paper. 남자가 손으로 종이 위에 뭔가를 가리키고 있다. == 우니쉬 == === 명사 === [[분류:우니쉬 명사]][[분류:우니쉬 동사]] # [[뾰족하다|뽀족한]] [[끝]]. # [[점]] === 동사 === # [[가리키다]] [[분류:영어 명사]] oat1y9hryfo6lj0vue1318og2cib1xk 4388210 4388206 2025-07-07T03:29:05Z 211.200.184.122 4388210 wikitext text/x-wiki == 영어 == {{발음 듣기|en-us-point.ogg|미국}} {{IPA|pɔint}} # [[뾰족하다|뽀족한]] [[끝]]. :* # 어디에 찍히거나 뭍은 [[점]], [[반점]]. :* # (지리) [[지점]]. :* # 관점 :* check point: [[검문소]] # 이야기의 [[관점]], [[논점]], [[문제점]], [[욧점]]. :* main '''point''': 주된 관점 :* The '''point''' is how to solve this problem. 요점은 이 문제를 어떻게 해결하느냐 하는 것이다. # [[순간]], [[시점]]. :* turning point: [[귀환점]] # (부호) [[점]]. (수학) [[소숫점]]. :* # (도표, 지표) [[값]], (주)[[가]], [[점수]]. :* # (인쇄) 글자의 크기 [[포인트]]. :* === 동사 === # ㉹ [[뽀족하다|뾰족하게]] 하다, [[날카롭다|날카롭게]] 하다. #*파생어: [[pointed]] # ㉹ 어떤 점을 [[지적하다]]. # ㉶ (나침반, 시계) [[가리키다]]. #* point towards 가리키다. #㉶ [[손가락질하다]]. #* The man is '''pointing''' at something on the paper. 남자가 손으로 종이 위에 뭔가를 가리키고 있다. == 우니쉬 == === 명사 === [[분류:우니쉬 명사]][[분류:우니쉬 동사]] # [[뾰족하다|뽀족한]] [[끝]]. # [[점]] === 동사 === # [[가리키다]] [[분류:영어 명사]] 35bv4bmvy04ulp3g7zoxlol0tzbqv7j 要る 0 81992 4388217 4023274 2025-07-07T03:47:25Z CHK2605 33979 4388217 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる|acc=0|acc_ref=DJR,SMK2,NHK}} === 동사 === {{ja-verb|tr=자동사|type=1|いる}} # [[필요하다]] #: {{ux|ja|資%本が'''要る'''|し%ほん が '''いる'''|자본이 '''필요하다'''}} #: {{ux|ja|暇が'''要る'''|ひま が '''いる'''|시간이 '''필요하다'''}} #: {{ux|ja|お世辞は'''要らない'''|おせじ は '''いらない'''|아첨은 '''필요 없다'''}} ==== 활용형 ==== {{ja-conj}} [[분류:일본어 가나와 간지의 혼용]] ln75nf6569scyasjoi0xw4oqfdyatju 起きる 0 91824 4388203 3484646 2025-07-07T02:20:42Z CHK2605 33979 4388203 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|sort=おきる|yomi=k}} === 발음 === {{ja-pron|おきる|acc=2|acc_ref=DJR}} === 동사 === {{ja-verb|type=2|tr=자동사|おきる}} # [[일어나다]], [[몸]]을 [[일으키다]] #: {{ux|ja|転んでもすぐ'''起きる'''|ころん でも すぐ '''おきる'''|넘어져도 바로 '''일어나다'''}} #: {{ux|ja|椅子から立ち'''起きる'''|いす から たち '''おきる'''|의자에서 '''일어나다'''}} # [[깨다]], [[기상하다]] #: {{ux|ja|毎朝%五時に'''起きる'''|まいあさ% ごじ に '''おきる'''|매일 아침 다섯 시에 '''일어나다'''}} # [[깨어있다]], [[밤]]을 [[새우다]] #: {{ux|ja|徹%夜で'''起きる'''|てつ%や で '''おきる'''|밤을 새워 '''깨어있다'''}} # [[발생하다]] #: {{ux|ja|混乱が'''起きる'''|こんらん が '''おきる'''|혼란이 '''일어나다'''}} #: {{ux|ja|予期せぬ問題が'''起きた'''|よき せ ぬ もんだい が '''おきた'''|예상치 못한 문제가 '''발생했다'''}} ==== 활용형 ==== {{ja-conj}} [[분류:일본어 가나와 간지의 혼용]] 19yswgsx2ti3jieq66o8dva1jdyu3zt 射る 0 172261 4388216 3890099 2025-07-07T03:45:22Z CHK2605 33979 4388216 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる|acc=1|acc_ref=DJR,NHK}} === 동사 === {{ja-verb|いる|tr=타동사|type=2}} # [[쏘다]] #: {{ux|ja|弓を'''射る'''|ゆみ を '''いる'''|활을 '''쏘다'''}} # [[맞히다]], [[명중하다]] #: {{ux|ja|的を'''射る'''|まと を '''いる'''|과녁을 '''맞히다'''}} #: {{ux|ja|的を'''射た'''指%摘|まと を '''いた''' し%てき|정곡을 '''찌른''' 지적}} # [[내리쬐다]], [[비추다]] #: {{ux|ja|冬の陽光が窓から差し'''射る'''|ふゆ の ようこう が まど から さし '''いる'''|겨울 햇살이 창문으로 '''내리쬐다'''}} # (대상을) [[사로잡다]], [[와닿다]] #: {{ux|ja|やさしい言%葉が心を'''いた'''|やさしい こと%ば が こころ を '''いた'''|다정한 말이 마음에 '''와닿았다'''}} ==== 활용형 ==== {{ja-conj}} 88hl9118xbwuwpbwrt7bodc9eqp9kgv 押し寄せる 0 218006 4388238 4387579 2025-07-07T05:43:21Z CHK2605 33979 4388238 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|よ|yomi=k|alt=押寄せる}} === 발음 === {{ja-pron|おしよせる|acc=4}} === 동사 === {{ja-verb|おしよせる|type=2|tr=자타동사}} # {{라벨|ja|자동사}} [[밀려오다]], [[쇄도하다]] #: {{ux|ja|群%衆が'''押し寄せる'''|ぐん%しゅう が '''おしよせる'''|군중이 '''밀려오다'''}} #: {{ux|ja|大波が'''押し寄せる'''|おおなみ が '''おしよせる'''|큰 파도가 '''밀려오다'''}} # {{라벨|ja|타동사}} [[밀어붙이다]], [[한쪽]]으로 [[몰다]] #: {{ux|ja|机を窓際に'''押し寄せる'''|つくえ を まどぎわ に '''おしよせる'''|책상을 창가로 '''밀어붙이다'''}} #: {{ux|ja|テーブルを壁に'''押し寄せた'''|テーブル を かべ に '''おしよせた'''|테이블을 벽에 '''붙였다'''}} ==== 활용형 ==== {{ja-conj}} 4qk8yhe68296xzcy66nmd1ot6nsuph6 分れる 0 289986 4388235 3484787 2025-07-07T05:22:01Z CHK2605 33979 4388235 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|わ|yomi=k|alt=分れる}} {{ja-see|分かれる}} bn22heayj9lsgc6hauys3j8ksxqzfj7 모듈:utilities 828 413030 4388262 4385206 2025-07-07T11:58:39Z CHK2605 33979 4388262 Scribunto text/plain local export = {} local headword_data_module = "Module:headword/data" local languages_module = "Module:languages" local links_module = "Module:links" local load_module = "Module:load" local pages_module = "Module:pages" local script_utilities_module = "Module:script utilities" local scripts_module = "Module:scripts" local string_utilities_module = "Module:string utilities" local utilities_data_module = "Module:utilities/data" local mw = mw local anchor_encode = mw.uri.anchorEncode local concat = table.concat local format_categories -- 아래에서 정의됨 local ipairs = ipairs local require = require local type = type local unstrip = mw.text.unstrip --[==[ 다른 모듈의 함수를 로드하는 로더(loader)들입니다. 함수가 처음 호출될 때만 실제 모듈을 로드하여 성능을 최적화합니다.]==] local function decode_entities(...) decode_entities = require(string_utilities_module).decode_entities return decode_entities(...) end local function get_script(...) get_script = require(scripts_module).getByCode return get_script(...) end local function is_content_page(...) is_content_page = require(pages_module).is_content_page return is_content_page(...) end local function load_data(...) load_data = require(load_module).load_data return load_data(...) end local function remove_links(...) remove_links = require(links_module).remove_links return remove_links(...) end local function tag_text(...) tag_text = require(script_utilities_module).tag_text return tag_text(...) end local function trim(...) trim = require(string_utilities_module).trim return trim(...) end local function uupper(...) uupper = require(string_utilities_module).upper return uupper(...) end --[==[ 객체 로더들입니다. 데이터가 필요할 때 한 번만 로드합니다.]==] local catfix_scripts local function get_catfix_scripts() catfix_scripts, get_catfix_scripts = load_data(utilities_data_module).catfix_scripts, nil return catfix_scripts end local current_title local function get_current_title() current_title, get_current_title = mw.title.getCurrentTitle(), nil return current_title end local defaultsort local function get_defaultsort() defaultsort, get_defaultsort = load_data(headword_data_module).page.pagename_defaultsort, nil return defaultsort end local pagename local function get_pagename() pagename, get_pagename = load_data(headword_data_module).page.encoded_pagename, nil return pagename end local und local function get_und() und, get_und = require(languages_module).getByCode("und"), nil return und end do local function handle_url(capture) return capture:match("https?://[^%s%]]+%s([^%]]+)") or "" end --[==[ 위키 마크업을 제거하여 순수 텍스트를 반환하는 헬퍼 함수입니다.]==] function export.get_plaintext(text) text = text :gsub("%[%[", "\1") :gsub("%]%]", "\2") -- 스트립 마커와 HTML 태그를 제거합니다. text = unstrip(text):gsub("<[^<>\1\2]+>", "") -- 내부 링크를 파싱하여 표시 텍스트를 얻고, 분류를 제거합니다. text = remove_links(text) -- 파일을 제거합니다. text = text:gsub("\1[Ff][Ii][Ll][Ee]:[^\1\2]+\2", "") :gsub("\1[Ii][Mm][Aa][Gg][Ee]:[^\1\2]+\2", "") -- 외부 링크를 파싱하여 표시 텍스트를 얻습니다. text = text:gsub("%[(https?://[^%[%]]+)%]", handle_url) -- 링크와 관련 없는 나머지 대괄호들을 이스케이프 처리합니다. :gsub("\1", "&#91;&#91;") :gsub("\2", "&#93;&#93;") :gsub("%[", "&#91;") :gsub("]", "&#93;") -- 굵은 글씨, 기울임꼴, 부드러운 하이픈을 제거합니다. :gsub("('*)'''(.-'*)'''", "%1%2") :gsub("('*)''(.-'*)''", "%1%2") :gsub("­", "") -- HTML 엔티티를 디코딩하고 공백을 제거합니다. return trim(decode_entities(text)) end end do local function generate_sortkey(lang, sc, sort_key, sort_base) -- 정렬 키가 "-"이면, 언어를 미결정(und)으로 간주합니다. if sort_key == "-" then lang, sort_key = und or get_und(), nil elseif not lang then lang = und or get_und() end -- 자동 정렬 키를 생성합니다. local auto = lang:makeSortKey(sort_base or pagename or get_pagename(), sc) -- 필요시 문서 기본 정렬 키를 사용합니다. if not auto or auto == "" then auto = defaultsort or get_defaultsort() end -- 정렬 키가 지정되지 않았으면 자동 정렬 키를 사용합니다. if not sort_key or sort_key == "" then return auto -- 언어가 'und'가 아니면, 수동 정렬 키가 중복인지 아닌지 분류합니다. elseif lang:getCode() ~= "und" then return sort_key, "[[분류:" .. lang:getFullName() .. ( uupper(sort_key) == auto and " 중복된" or " 중복되지 않는 수동" ) .. " 정렬 키를 사용하는 낱말|" .. sort_key .. "]]" end return sort_key end --[==[ Format the categories with the appropriate sort key. * `cat` can take two forms: ** A string (the full category, minus the {"Category:"} prefix); ** A list of categories. Each category in the list can be either: *** A string in the same format as above; *** An object with the fields: **** `cat`: a string in the same format as above (required); **** `lang`: an optional language object to override the overall `lang`; **** `sc`: an optional script object to override the overall `sc`. **** `sort_key`: an optional sort key to override the overall `sort_key`; **** `sort_base`: an optional sort base to override the overall `sort_base`; * `lang` is an object encapsulating a language; if {nil}, the object for language code {"und"} (undetermined) will be used. `lang` is used when computing the sort key (either from the subpage name or sort base). * `sort_key` is placed in the category invocation, and indicates how the page will sort in the respective category. Normally '''do not use this'''. Instead, leave it {nil}, and if you need to a control the sort order, use {sort_base}, so that language-specific normalization is applied on top of the specified sort base. If neither {sort_key} nor {sort_base} is specified, the default is to apply language-specific normalization to the subpage name; see below. * `sort_base` lets you override the default sort key while still maintaining appropriate language-specific normalization. If {nil} is specified, this defaults to the subpage name, which is the portion of the full pagename after subtracting the namespace prefix (and, in certain namespaces such as {User:}, but notably not in the mainspace, after subtracting anything up through the final slash). The actual sort key is derived from the sort base approximately by lowercasing, applying language-specific normalization and then uppercasing; note that the same process is applied in deriving the sort key when no sort base is specified. For example, for French, Spanish, etc. the normalization process maps accented letters to their unaccented equivalents, so that e.g. in French, {{m|fr|ça}} sorts after {{m|fr|ca}} (instead of after the default Wikimedia sort order, which is approximately based on Unicode sort order and places ç after z) and {{m|fr|côté}} sorts after {{m|fr|coté}} (instead of between c and d). Similarly, in Russian the normalization process converts Cyrillic ё to a string consisting of Cyrillic е followed by U+10FFFF, so that effectively ё sorts after е instead of the default Wikimedia sort, which (I think) puts ё after я, the last letter of the Cyrillic alphabet. * `force_output` forces normal output in all namespaces. Normally, nothing is output if the page isn't in the main, Appendix:, Thesaurus:, Reconstruction: or Citations: namespaces. * `sc` is a script object; if nil, the default will be derived from the sort base (or its default value, the subpage name) by calling {lang:findBestScript()}. The value of `sc` is used during the sort base normalization process; for example, languages with multiple scripts will often have script-specific normalization processes.]==] function export.format_categories(cat, lang, sort_key, sort_base, force_output, sc) if not ( force_output or is_content_page(current_title or get_current_title()) or current_title.prefixedText == "Wiktionary:Sandbox" ) then return "" elseif type(cat) == "string" then local this_sort_key, extra = generate_sortkey(lang, sc, sort_key, sort_base) return "[[분류:" .. cat .. "|" .. this_sort_key .. "]]" .. (extra or "") end local ret, i, n, default = {}, 0, 0 -- `cat` 목록의 모든 분류를 순회합니다. while true do i = i + 1 local category = cat[i] if category == nil then return concat(ret) end local this_sort_key, extra -- If the category type is a table, use any custom options in it. if type(category) == "table" then category, this_sort_key, extra = category.cat, generate_sortkey( category.lang or lang, category.sc or sc, category.sort_key or sort_key, category.sort_base or sort_base ) -- If `default` has already been determined, use it. elseif default then this_sort_key = default -- Otherwise, calculate `default` and use it. else this_sort_key, extra = generate_sortkey(lang, sc, sort_key, sort_base) default = this_sort_key end n = n + 1 ret[n] = "[[분류:" .. category .. "|" .. this_sort_key .. "]]" .. (extra or "") end end format_categories = export.format_categories end --[==[ Add a "catfix", which is used on language-specific category pages to add language attributes and often script classes to all entry names. The addition of language attributes and script classes makes the entry names display better (using the language- or script-specific styles specified in [[MediaWiki:Common.css]]), which is particularly important for non-English languages that do not have consistent font support in browsers. Language attributes are added for all languages, but script classes are only added for languages with one script listed in their data file, or for languages that have a default script listed in the {catfix_script} list in [[Module:utilities/data]]. Some languages clearly have a default script, but still have other scripts listed in their data file. If those other scripts are not simply scripts like {{cd|Brai}} (Braille), their default script needs to be specified. Others do not have a default script. * Serbo-Croatian is regularly written in both the Latin and Cyrillic scripts. Because it uses two scripts, Serbo-Croatian cannot have a script class applied to entries in its category pages, as only one script class can be specified at a time. * German is usually written in the Latin script ({{cd|Latn}}), but Fraktur ({{cd|Latf}}) is also listed in its data file. So German needs an entry in the {catfix_script} list, so that the {{cd|Latn}} (Latin) script class will be applied to entries in its category pages. To find the scripts listed for a language, go to [[Module:languages]] and use the search box to find the data file for the language. To find out what a script code means, search the script code in [[Module:scripts/data]].]==] function export.catfix(lang, sc) if not lang or not lang.getCanonicalName then error('"catfix" 함수의 첫 번째 인수는 [[모듈:languages]] 또는 [[모듈:etymology languages]]의 언어 객체여야 합니다.') end if sc and not sc.getCode then error('"catfix" 함수의 두 번째 인수는 [[모듈:scripts]]의 문자 객체여야 합니다.') end -- 분류 상용구 틀로 생성된 문서의 링크에 문자 클래스를 추가합니다. if not sc then local code = (catfix_scripts or get_catfix_scripts())[lang:getCode()] or catfix_scripts[lang:getFullCode()] if code then sc = get_script(code) end end -- 언어에 유효한 후보 문자가 하나만 있다면, 그것을 기본값으로 적용합니다. if not sc then local scripts = lang:getScripts() if #scripts == 1 then sc = scripts[1] else -- 문자를 순회하며 Brai 같은 특수 문자를 제외하고 후보가 하나뿐인지 확인합니다. for _, script in ipairs(scripts) do if script:getCode() ~= "Brai" then if sc then -- 후보가 여러 개면 실패 sc = nil break else sc = script end end end end end -- Hack: <ul> 태그를 사용하면 파서가 catfix 요소 주위에 <p> 태그를 자동으로 생성하는 것을 막을 수 있습니다. return "<ul class=\"catfix\" data-anchor=\"" .. anchor_encode(lang:getFullName()) .. "\">" .. tag_text("", lang, sc) .. "</ul>" .. format_categories("catfix를 사용하는 문서", nil, nil, nil, true) end --[==[ 주어진 타입과 개체들을 확인하여, 모두 유효한 언어, 어족, 문자 등의 객체인지 검사합니다. 오류 처리에 유용합니다.]==] function export.check_object(typ, noErr, ...) if ... == nil then if noErr then return false end error("확인할 객체를 하나 이상 제공하여야 합니다.", 2) end for _, obj in ipairs{...} do if type(obj) ~= "table" or type(obj.hasType) ~= "function" then if noErr then return false end error("함수가 " .. typ .. " 객체를 예상했지만 " .. type(obj) .. " 유형의 값을 받았습니다.", 2) elseif not (typ == "object" or obj:hasType(typ)) then for _, wrong_type in ipairs{"family", "language", "script", "Wikimedia language", "writing system"} do if obj:hasType(wrong_type) then if noErr then return false end error("함수가 " .. typ .. " 객체를 예상했지만 " .. wrong_type .. " 객체를 받았습니다.", 2) end end if noErr then return false end error("함수가 " .. typ .. " 객체를 예상했지만 다른 유형의 객체를 받았습니다.", 2) end end return true end return export 0owl9os06xji873koyc6guquephtv3x 손시계 0 414667 4388179 4232027 2025-07-06T14:39:49Z YeBoy371 10964 /* 명사 */ 4388179 wikitext text/x-wiki == 한국어 == === 명사 === *어원: [[손]] + [[시계]](한자 [[時計]]) {{IPA|son.ʃi.gje}} {{ko-IPA}} # {{이철자|손목시계|언어=한국|지역=문화어|품사=합성명사}} # {{이철자|팔목시계|언어=한국|지역=문화어|품사=합성명사}} # {{이철자|팔뚝시계|언어=한국|지역=문화어|품사=합성명사}} [[분류:한자+한글]] [[분류:문화어 명사]] cmblz7ijtf2j92z9n4si28y9y9emf52 모듈:parameters 828 423577 4388251 4384799 2025-07-07T09:53:34Z CHK2605 33979 4388251 Scribunto text/plain --[==[TODO: * Change certain flag names, as some are misnomers: * Change `allow_holes` to `keep_holes`, because it's not the inverse of `disallow_holes`. * Change `allow_empty` to `keep_empty`, as it causes them to be kept as "" instead of deleted. * Sort out all the internal error calls. Manual error(format()) calls are used when certain parameters shouldn't be dumped, so find a way to avoid that. ]==] local export = {} local collation_module = "Module:collation" local families_module = "Module:families" local functions_module = "Module:fun" local gender_and_number_utilities_module = "Module:gender and number utilities" local labels_module = "Module:labels" local languages_module = "Module:languages" local math_module = "Module:math" local pages_module = "Module:pages" local parameters_finalize_set_module = "Module:parameters/finalizeSet" local parameters_track_module = "Module:parameters/track" local parse_utilities_module = "Module:parse utilities" local references_module = "Module:references" local scribunto_module = "Module:Scribunto" local scripts_module = "Module:scripts" local string_utilities_module = "Module:string utilities" local table_module = "Module:table" local wikimedia_languages_module = "Module:wikimedia languages" local yesno_module = "Module:yesno" local mw = mw local mw_title = mw.title local string = string local table = table local dump = mw.dumpObject local find = string.find local format = string.format local gsub = string.gsub local insert = table.insert local ipairs = ipairs local list_to_text = mw.text.listToText local make_title = mw_title.makeTitle local match = string.match local max = math.max local new_title = mw_title.new local next = next local pairs = pairs local pcall = pcall local require = require local sub = string.sub local tonumber = tonumber local type = type local unpack = unpack or table.unpack -- Lua 5.2 compatibility local current_title_text, current_namespace, sets -- Defined when needed. local namespaces = mw.site.namespaces --[==[ Loaders for functions in other modules, which overwrite themselves with the target function when called. This ensures modules are only loaded when needed, retains the speed/convenience of locally-declared pre-loaded functions, and has no overhead after the first call, since the target functions are called directly in any subsequent calls.]==] local function decode_entities(...) decode_entities = require(string_utilities_module).decode_entities return decode_entities(...) end local function extend(...) extend = require(table_module).extend return extend(...) end local function finalize_set(...) finalize_set = require(parameters_finalize_set_module) return finalize_set(...) end local function get_family_by_code(...) get_family_by_code = require(families_module).getByCode return get_family_by_code(...) end local function get_family_by_name(...) get_family_by_name = require(families_module).getByCanonicalName return get_family_by_name(...) end local function get_language_by_code(...) get_language_by_code = require(languages_module).getByCode return get_language_by_code(...) end local function get_language_by_name(...) get_language_by_name = require(languages_module).getByCanonicalName return get_language_by_name(...) end local function get_script_by_code(...) get_script_by_code = require(scripts_module).getByCode return get_script_by_code(...) end local function get_script_by_name(...) get_script_by_name = require(scripts_module).getByCanonicalName return get_script_by_name(...) end local function get_wm_lang_by_code(...) get_wm_lang_by_code = require(wikimedia_languages_module).getByCode return get_wm_lang_by_code(...) end local function get_wm_lang_by_code_with_fallback(...) get_wm_lang_by_code_with_fallback = require(wikimedia_languages_module).getByCodeWithFallback return get_wm_lang_by_code_with_fallback(...) end local function gsplit(...) gsplit = require(string_utilities_module).gsplit return gsplit(...) end local function is_callable(...) is_callable = require(functions_module).is_callable return is_callable(...) end local function is_integer(...) is_integer = require(math_module).is_integer return is_integer(...) end local function is_internal_title(...) is_internal_title = require(pages_module).is_internal_title return is_internal_title(...) end local function is_positive_integer(...) is_positive_integer = require(math_module).is_positive_integer return is_positive_integer(...) end local function iterate_list(...) iterate_list = require(table_module).iterateList return iterate_list(...) end local function num_keys(...) num_keys = require(table_module).numKeys return num_keys(...) end local function parse_gender_and_number_spec(...) parse_gender_and_number_spec = require(gender_and_number_utilities_module).parse_gender_and_number_spec return parse_gender_and_number_spec(...) end local function parse_references(...) parse_references = require(references_module).parse_references return parse_references(...) end local function pattern_escape(...) pattern_escape = require(string_utilities_module).pattern_escape return pattern_escape(...) end local function php_trim(...) php_trim = require(scribunto_module).php_trim return php_trim(...) end local function scribunto_parameter_key(...) scribunto_parameter_key = require(scribunto_module).scribunto_parameter_key return scribunto_parameter_key(...) end local function sort(...) sort = require(collation_module).sort return sort(...) end local function sorted_pairs(...) sorted_pairs = require(table_module).sortedPairs return sorted_pairs(...) end local function split_labels_on_comma(...) split_labels_on_comma = require(labels_module).split_labels_on_comma return split_labels_on_comma(...) end local function split_on_comma(...) split_on_comma = require(parse_utilities_module).split_on_comma return split_on_comma(...) end local function tonumber_extended(...) tonumber_extended = require(math_module).tonumber_extended return tonumber_extended(...) end local function track(...) track = require(parameters_track_module) return track(...) end local function yesno(...) yesno = require(yesno_module) return yesno(...) end --[==[ intro: This module is used to standardize template argument processing and checking. A typical workflow is as follows (based on [[Module:translations]]): { ... local parent_args = frame:getParent().args local params = { [1] = {required = true, type = "language", default = "und"}, [2] = true, [3] = {list = true}, ["alt"] = true, ["id"] = true, ["sc"] = {type = "script"}, ["tr"] = true, ["ts"] = true, ["lit"] = true, } local args = require("Module:parameters").process(parent_args, params) -- Do further processing of the parsed arguments in `args`. ... } The `params` table should have the parameter names as the keys, and a (possibly empty) table of parameter tags as the value. An empty table as the value merely states that the parameter exists, but should not receive any special treatment; if desired, empty tables can be replaced with the value `true` as a perforamnce optimization. Possible parameter tags are listed below: ; {required = true} : The parameter is required; an error is shown if it is not present. The template's page itself is an exception; no error is shown there. ; {default =} : Specifies a default input value for the parameter, if it is absent or empty. This will be processed as though it were the input instead, so (for example) {default = "und"} with the type {"language"} will return a language object for [[:Category:Undetermined language|Undetermined language]] if no language code is provided. When used on list parameters, this specifies a default value for the first item in the list only. Note that it is not possible to generate a default that depends on the value of other parameters. If used together with {required = true}, the default applies only to template pages (see the following entry), as a side effect of the fact that "required" parameters aren't actually required on template pages. This can be used to show an example of the template in action when the template page is visited; however, it is preferred to use `template_default` for this purpose, for clarity. ; {template_default =} : Specifies a default input value for absent or empty parameters only on template pages. Template pages are any page in the template space (beginning with `Template:`) except for documentation pages (those ending in `.../documentation`). This can be used to provide an example value for a non-required parameter when the template page is visited, without interfering with other uses of the template. Both `template_default` and `default` can be specified for the same parameter. If this is done, `template_default` applies on template pages, and `default` on other pages. As an example, {{tl|cs-IPA}} uses the equivalent of {[1] = {default = "+", template_default = "příklad"}} to supply a default of {"+"} for mainspace and documentation pages (which tells the module to use the value of the {{para|pagename}} parameter, falling back to the actual pagename), but {"příklad"} (which means "example"), on [[Template:cs-IPA]]. ; {alias_of =} : Treat the parameter as an alias of another. When arguments are specified for this parameter, they will automatically be renamed and stored under the alias name. This allows for parameters with multiple alternative names, while still treating them as if they had only one name. The conversion-related properties of an aliased parameter (e.g. `type`, `set`, `convert`, `sublist`) are taken from the aliasee, and the corrresponding properties set on the alias itself are ignored; but other properties on the alias are taken from the alias's spec and not from the aliasee's spec. This means, for example, that if you create an alias of a list parameter, the alias must also specify the `list` property or it is not a list. (In such a case, a value specified for the alias goes into the first item of the aliasee's list. You cannot make a list alias of a non-list parameter; this causes an error to be thrown.) Similarly, if you specify `separate_no_index` on an aliasee but not on the alias, uses of the unindexed aliasee parameter are stored into the `.default` key, but uses of the unindexed alias are stored into the first numbered key of the aliasee's list. Aliases cannot be required, as this prevents the other name or names of the parameter from being used. Parameters that are aliases and required at the same time cause an error to be thrown. ; {allow_empty = true} : If the argument is an empty string value, it is not converted to {nil}, but kept as-is. The use of `allow_empty` is disallowed if a type has been specified, and causes an error to be thrown. ; {no_trim = true} : Spacing characters such as spaces and newlines at the beginning and end of a positional parameter are not removed. (MediaWiki itself automatically trims spaces and newlines at the edge of named parameters.) The use of `no_trim` is disallowed if a type has been specified, and causes an error to be thrown. ; {type =} : Specifies what value type to convert the argument into. The default is to leave it as a text string. Alternatives are: :; {type = "boolean"} :: The value is treated as a boolean value, either true or false. No value, the empty string, and the strings {"0"}, {"no"}, {"n"}, {"false"}, {"f"} and {"off"} are treated as {false}, all other values are considered {true}. :; {type = "number"} :: The value is converted into a number, and throws an error if the value is not parsable as a number. Input values may be signed (`+` or `-`), and may contain decimal points and leading zeroes. If {allow_hex = true}, then hexadecimal values in the form {"0x100"} may optionally be used instead, which otherwise have the same syntax restrictions (including signs, decimal digits, and leading zeroes after {"0x"}). Hexadecimal inputs are not case-sensitive. Lua's special number values (`inf` and `nan`) are not possible inputs. :; {type = "range"} :: The value is interpreted as a hyphen-separated range of two numbers (e.g. {"2-4"} is interpreted as the range from {2} to {4}). A number input without a hyphen is interpreted as a range from that number to itself (e.g. the input {"1"} is interpreted as the range from {1} to {1}). Any optional flags which are available for numbers will also work for ranges. :; {type = "language"} :: The value is interpreted as a full or [[Wiktionary:Languages#Etymology-only languages|etymology-only language]] code language code (or name, if {method = "name"}) and converted into the corresponding object (see [[Module:languages]]). If the code or name is invalid, then an error is thrown. The additional setting {family = true} can be given to allow [[Wiktionary:Language families|language family codes]] to be considered valid and the corresponding object returned. Note that to distinguish an etymology-only language object from a full language object, use {object:hasType("language", "etymology-only")}. :; {type = "full language"} :: The value is interpreted as a full language code (or name, if {method = "name"}) and converted into the corresponding object (see [[Module:languages]]). If the code or name is invalid, then an error is thrown. Etymology-only languages are not allowed. The additional setting {family = true} can be given to allow [[Wiktionary:Language families|language family codes]] to be considered valid and the corresponding object returned. :; {type = "Wikimedia language"} :: The value is interpreted as a code and converted into a Wikimedia language object. If the code is invalid, then an error is thrown. If {fallback = true} is specified, conventional language codes which are different from their Wikimedia equivalent will also be accepted as a fallback. :; {type = "family"} :: The value is interpreted as a language family code (or name, if {method = "name"}) and converted into the corresponding object (see [[Module:families]]). If the code or name is invalid, then an error is thrown. :; {type = "script"} :: The value is interpreted as a script code (or name, if {method = "name"}) and converted into the corresponding object (see [[Module:scripts]]). If the code or name is invalid, then an error is thrown. :; {type = "title"} :: The value is interpreted as a page title and converted into the corresponding object (see the [[mw:Extension:Scribunto/Lua_reference_manual#Title_library|Title library]]). If the page title is invalid, then an error is thrown; by default, external titles (i.e. those on other wikis) are not treated as valid. Options are: ::; {namespace = n} ::: The default namespace, where {n} is a namespace number; this is treated as {0} (the mainspace) if not specified. ::; {allow_external = true} ::: External titles are treated as valid. ::; {prefix = "namespace override"} (default) ::: The default namespace prefix will be prefixed to the value is already prefixed by a namespace prefix. For instance, the input {"Foo"} with namespace {10} returns {"Template:Foo"}, {"Wiktionary:Foo"} returns {"Wiktionary:Foo"}, and {"Template:Foo"} returns {"Template:Foo"}. Interwiki prefixes cannot act as overrides, however: the input {"fr:Foo"} returns {"Template:fr:Foo"}. ::; {prefix = "force"} ::: The default namespace prefix will be prefixed unconditionally, even if the value already appears to be prefixed. This is the way that {{tl|#invoke:}} works when calling modules from the module namespace ({828}): the input {"Foo"} returns {"Module:Foo"}, {"Wiktionary:Foo"} returns {"Module:Wiktionary:Foo"}, and {"Module:Foo"} returns {"Module:Module:Foo"}. ::; {prefix = "full override"} ::: The same as {prefix = "namespace override"}, except that interwiki prefixes can also act as overrides. For instance, {"el:All topics"} with namespace {14} returns {"el:Category:All topics"}. Due to the limitations of MediaWiki, only the first prefix in the value may act as an override, so the namespace cannot be overridden if the first prefix is an interwiki prefix: e.g. {"el:Template:All topics"} with namespace {14} returns {"el:Category:Template:All topics"}. :; {type = "parameter"} :: The value is interpreted as the name of a parameter, and will be normalized using the method that Scribunto uses when constructing a {frame.args} table of arguments. This means that integers will be converted to numbers, but all other arguments will remain as strings (e.g. {"1"} will be normalized to {1}, but {"foo"} and {"1.5"} will remain unchanged). Note that Scribunto also trims parmeter names, following the same trimming method that this module applies by default to all parameter types. :: This type is useful when one set of input arguments is used to construct a {params} table for use in a subsequent {export.process()} call with another set of input arguments; for instance, the set of valid parameters for a template might be defined as {{tl|#invoke:[some module]|args=}} in the template, where {args} is a sublist of valid parameters for the template. :; {type = "qualifier"} :: The value is interpreted as a qualifier and converted into the correct format for passing into `format_qualifiers()` in [[Module:qualifier]] (which currently just means converting it to a one-item list). :; {type = "labels"} :: The value is interpreted as a comma-separated list of labels and converted into the correct format for passing into `show_labels()` in [[Module:labels]] (which is currently a list of strings). Splitting is done on commas not followed by whitespace, except that commas inside of double angle brackets do not count even if not followed by whitespace. This type should be used by for normal labels (typically specified using {{para|l}} or {{para|ll}}) and accent qualifiers (typically specified using {{para|a}} and {{para|aa}}). :; {type = "references"} :: The value is interpreted as one or more references, in the format prescribed by `parse_references()` in [[Module:references]], and converted into a list of objects of the form accepted by `format_references()` in the same module. If a syntax error is found in the reference format, an error is thrown. :; {type = "genders"} :: The value is interpreted as one or more comma-separated gender/number specs, in the format prescribed by [[Module:gender and number]]. Inline modifiers (`<q:...>`, `<qq:...>`, `<l:...>`, `<ll:...>` or `<ref:...>`) may be attached to a gender/number spec. :; {type = function(val) ... end} :: `type` may be set to a function (or callable table), which must take the argument value as its sole argument, and must output one of the other recognized types. This is particularly useful for lists (see below), where certain values need to be interpreted differently to others. ; {list =} : Treat the parameter as a list of values, each having its own parameter name, rather than a single value. The parameters will have a number at the end, except optionally for the first (but see also {require_index = true}). For example, {list = true} on a parameter named "head" will include the parameters {{para|head}} (or {{para|head1}}), {{para|head2}}, {{para|head3}} and so on. If the parameter name is a number, another number doesn't get appended, but the counting simply continues, e.g. for parameter {3} the sequence is {{para|3}}, {{para|4}}, {{para|5}} etc. List parameters are returned as numbered lists, so for a template that is given the parameters `|head=a|head2=b|head3=c`, the processed value of the parameter {"head"} will be { { "a", "b", "c" }}}. : The value for {list =} can also be a string. This tells the module that parameters other than the first should have a different name, which is useful when the first parameter in a list is a number, but the remainder is named. An example would be for genders: {list = "g"} on a parameter named {1} would have parameters {{para|1}}, {{para|g2}}, {{para|g3}} etc. : If the number is not located at the end, it can be specified by putting {"\1"} at the number position. For example, parameters {{para|f1accel}}, {{para|f2accel}}, ... can be captured by using the parameter name {"f\1accel"}, as is done in [[Module:headword/templates]]. ; {set =} : Require that the value of the parameter be one of the specified list of values (or omitted, if {required = true} isn't given). The values in the specified list should be strings corresponding to the raw parameter values except when {type = "number"}, in which case they should be numbers. A individual value in the list can also be an ''alias list'', which is a list where the first value is the "canonical" value and the remainder are aliases. When one of the aliases is used, the resulting parameter field in the returned arguments structure will have the canonical value. The use of `set` is disallowed if {type = "boolean"} and causes an error to be thrown. ; {sublist =} : The value of the parameter is a delimiter-separated list of individual raw values. The resulting field in `args` will be a Lua list (i.e. a table with numeric indices) of the converted values. If {sublist = true} is given, the values will be split on commas (possibly with whitespace on one or both sides of the comma, which is ignored). If {sublist = "comma without whitespace"} is given, the values will be split on commas which are not followed by whitespace, and which aren't preceded by an escaping backslash. Otherwise, the value of `sublist` should be either a Lua pattern specifying the delimiter(s) to split on or a function (or callable table) to do the splitting, which is passed two values (the value to split and a function to signal an error) and should return a list of the split values. ; {convert =} : If given, this specifies a function (or callable table) to convert the raw parameter value into the Lua object used during further processing. The function is passed two arguments, the raw parameter value itself and a function used to signal an error during parsing or conversion, and should return one value, the converted parameter. The error-signaling function contains the name and raw value of the parameter embedded into the message it generates, so these do not need to specified in the message passed into it. If `type` is specified in conjunction with `convert`, the processing by `type` happens first. If `sublist` is given in conjunction with `convert`, the raw parameter value will be split appropriately and `convert` called on each resulting item. ; {allow_hex = true} : When used in conjunction with {type = "number"}, allows hexadecimal numbers as inputs, in the format {"0x100"} (which is not case-sensitive). ; {family = true} : When used in conjunction with {type = "language"}, allows [[Wiktionary:Language families|language family codes]] to be returned. To check if a given object refers to a language family, use {object:hasType("family")}. ; {method = "name"} : When used in conjunction with {type = "language"}, {type = "family"} or {type = "script"}, checks for and parses a language, family or script name instead of a code. ; {allow_holes = true} : This is used in conjunction with list-type parameters. By default, the values are tightly packed in the resulting list. This means that if, for example, an entry specified `head=a|head3=c` but not {{para|head2}}, the returned list will be { {"a", "c"}}}, with the values stored at the indices {1} and {2}, not {1} and {3}. If it is desirable to keep the numbering intact, for example if the numbers of several list parameters correlate with each other (like those of {{tl|affix}}), then this tag should be specified. : If {allow_holes = true} is given, there may be {nil} values in between two real values, which makes many of Lua's table processing functions no longer work, like {#} or {ipairs()}. To remedy this, the resulting table will contain an additional named value, `maxindex`, which tells you the highest numeric index that is present in the table. In the example above, the resulting table will now be { { "a", nil, "c", maxindex = 3}}}. That way, you can iterate over the values from {1} to `maxindex`, while skipping {nil} values in between. ; {disallow_holes = true} : This is used in conjunction with list-type parameters. As mentioned above, normally if there is a hole in the source arguments, e.g. `head=a|head3=c` but not {{para|head2}}, it will be removed in the returned list. If {disallow_holes = true} is specified, however, an error is thrown in such a case. This should be used whenever there are multiple list-type parameters that need to line up (e.g. both {{para|head}} and {{para|tr}} are available and {{para|head3}} lines up with {{para|tr3}}), unless {allow_holes = true} is given and you are prepared to handle the holes in the returned lists. ; {disallow_missing = true} : This is similar to {disallow_holes = true}, but an error will not be thrown if an argument is blank, rather than completely missing. This may be used to tolerate intermediate blank numerical parameters, which sometimes occur in list templates. For instance, `head=a|head2=|head3=c` will not throw an error, but `head=a|head3=c` will. ; {require_index = true} : This is used in conjunction with list-type parameters. By default, the first parameter can have its index omitted. For example, a list parameter named `head` can have its first parameter specified as either {{para|head}} or {{para|head1}}. If {require_index = true} is specified, however, only {{para|head1}} is recognized, and {{para|head}} will be treated as an unknown parameter. {{tl|affixusex}} (and variants {{tl|suffixusex}}, {{tl|prefixusex}}) use this, for example, on all list parameters. ; {separate_no_index = true} : This is used to distinguish between {{para|head}} and {{para|head1}} as different parameters. For example, in {{tl|affixusex}}, to distinguish between {{para|sc}} (a script code for all elements in the usex's language) and {{para|sc1}} (the script code of the first element, used when the first element is prefixed with a language code to indicate that it is in a different language). When this is used, the resulting table will contain an additional named value, `default`, which contains the value for the indexless argument. ; {flatten = true} : This is used in conjunction with list-type parameters when `sublist` or a list-generating type such as {"labels"} or {"genders"} is also specified, and causes the resulting list to be flattened. Not currently compatible with {allow_holes = true}. ; {demo = true} : This is used as a way to ensure that the parameter is only enabled on the template's own page (and its documentation page), and in the User: namespace; otherwise, it will be treated as an unknown parameter. This should only be used if special settings are required to showcase a template in its documentation (e.g. adjusting the pagename or disabling categorization). In most cases, it should be possible to do this without using demo parameters, but they may be required if a template/documentation page also contains real uses of the same template as well (e.g. {{tl|shortcut}}), as a way to distinguish them. ; {deprecated = true} : This is for tracking the use of deprecated parameters, including any aliases that are being brought out of use. See [[Wiktionary:Tracking]] for more information. ]==] -- Returns true if the current page is a template or module containing the current {{#invoke}}. -- If the include_documentation argument is given, also returns true if the current page is either page's docuemntation page. local own_page, own_page_or_documentation local function is_own_page(include_documentation) if own_page == nil then if current_namespace == nil then local current_title = mw_title.getCurrentTitle() current_title_text, current_namespace = current_title.prefixedText, current_title.namespace end local frame = current_namespace == 828 and mw.getCurrentFrame() or current_namespace == 10 and mw.getCurrentFrame():getParent() if frame then local frame_title_text = frame:getTitle() own_page = current_title_text == frame_title_text own_page_or_documentation = own_page or current_title_text == frame_title_text .. "/documentation" else own_page, own_page_or_documentation = false, false end end return include_documentation and own_page_or_documentation or own_page end -------------------------------------- Some helper functions ----------------------------- -- Convert a list in `list` to a string, separating the final element from the preceding one(s) by `conjunction`. If -- `dump_vals` is given, pass all values in `list` through mw.dumpObject() (WARNING: this destructively modifies -- `list`). This is similar to serialCommaJoin() in [[Module:table]] when used with the `dontTag = true` option, but -- internally uses mw.text.listToText(). local function concat_list(list, conjunction, dump_vals) if dump_vals then for k, v in pairs(list) do list[k] = dump(v) end end return list_to_text(list, nil, conjunction) end -- A helper function for use with generating error-signaling functions in the presence of raw value conversion. Format a -- message `msg`, including the processed value `processed` if it is different from the raw value `rawval`; otherwise, -- just return `msg`. local function msg_with_processed(msg, rawval, processed) if rawval == processed then return msg end local processed_type = type(processed) return format("%s (processed value %s)", msg, (processed_type == "string" or processed_type == "number") and processed or dump(processed) ) end -------------------------------------- Error handling ----------------------------- local function process_error(fmt, ...) local args = {...} for i, val in ipairs(args) do args[i] = dump(val) end if type(fmt) == "table" then -- hacky signal that we're called from internal_process_error(), and not to omit stack frames return error(format(fmt[1], unpack(args))) end return error(format(fmt, unpack(args)), 3) end local function internal_process_error(fmt, ...) process_error({"Internal error in `params` table: " .. fmt}, ...) end -- Check that a parameter or argument is in the form form Scribunto normalizes input argument keys into (e.g. 1 not "1", "foo" not " foo "). Otherwise, it won't be possible to normalize inputs in the expected way. Unless is_argument is set, also check that the name only contains one placeholder at most, and that strings don't resolve to numeric keys once the placeholder has been substituted. local function validate_name(name, desc, extra_name, is_argument) local normalized = scribunto_parameter_key(name) if name and name == normalized then if is_argument or type(name) ~= "string" then return end local placeholder = find(name, "\1", nil, true) if not placeholder then return elseif find(name, "\1", placeholder + 1, true) then error(format( "Internal error: expected %s to only contain one placeholder, but saw %s", extra_name and (desc .. dump(extra_name)) or desc, dump(name) )) end local first_name = gsub(name, "\1", "1") normalized = scribunto_parameter_key(first_name) if first_name == normalized then return end error(format( "Internal error: %s cannot resolve to numeric parameters once any placeholder has been substituted, but %s resolves to %s", extra_name and (desc .. dump(extra_name)) or desc, dump(name), dump(normalized) )) elseif normalized == nil then error(format( "Internal error: expected %s to be of type string or number, but saw %s", extra_name and (desc .. dump(extra_name)) or desc, type(name) )) end error(format( "Internal error: expected %s to be Scribunto-compatible: %s (a %s) should be %s (a %s)", extra_name and (desc .. dump(extra_name)) or desc, dump(name), type(name), dump(normalized), type(normalized) )) end local function validate_alias_options(...) local invalid = { required = true, default = true, template_default = true, allow_holes = true, disallow_holes = true, disallow_missing = true, } function validate_alias_options(param, name, main_param, alias_of) for k in pairs(param) do if invalid[k] then track("bad alias option") -- internal_process_error( -- "parameter %s cannot have the option %s, as it is an alias of parameter %s.", -- name, option, alias_of -- ) end end -- Soon, aliases will inherit options from the main parameter via __index. Track cases where this would happen. if main_param ~= true then for k in pairs(main_param) do if param[k] == nil and not invalid[k] then if k == "list" then -- these need to be changed to list = false to retain current behaviour track("mismatched list alias option") elseif not (k == "type" or k == "set" or k == "sublist") then -- rarely specified on aliases, as they're effectively inherited already track("mismatched alias option") end end end end end validate_alias_options(...) end -- TODO: give ranges instead of long lists, if possible. local function params_list_error(params, msg) local list, n = {}, 0 for name in sorted_pairs(params) do n = n + 1 list[n] = name end error(format( "Parameter%s %s.", format(n == 1 and " %s is" or "s %s are", concat_list(list, " and ", true)), msg ), 3) end -- Helper function for use with convert_val_error(). Format a list of possible choices using `concat_list` and -- conjunction "or", displaying "either " before the choices if there's more than one. local function format_choice_list(valid) return (#valid > 1 and "either " or "") .. concat_list(valid, " or ") end -- Signal an error for a value `val` that is not of the right type `valid` (which is either a string specifying a type, or -- a list of possible values, in the case where `set` was used). `name` is the name of the parameter and can be a -- function to signal an error (which is assumed to automatically display the parameter's name and value). `seetext` is -- an optional additional explanatory link to display (e.g. [[WT:LOL]], the list of possible languages and codes). local function convert_val_error(val, name, valid, seetext) if is_callable(name) then if type(valid) == "table" then valid = "choice, must be " .. format_choice_list(valid) end name(format("Invalid %s; the value %s is not valid%s", valid, val, seetext and "; see " .. seetext or "")) else if type(valid) == "table" then valid = format_choice_list(valid) else valid = "a valid " .. valid end error(format("Parameter %s must be %s; the value %s is not valid.%s", dump(name), valid, dump(val), seetext and " See " .. seetext .. "." or "")) end end -- Generate the appropriate error-signaling function given parameter value `val` and name `name`. If `name` is already -- a function, it is just returned; otherwise a function is generated and returned that displays the passed-in messaeg -- along with the parameter's name and value. local function make_parse_err(val, name) if is_callable(name) then return name end return function(msg) error(format("%s: parameter %s=%s", msg, name, val)) end end -------------------------------------- Value conversion ----------------------------- -- For a list parameter `name` and corresponding value `list_name` of the `list` field (which should have the same value -- as `name` if `list = true` was given), generate a pattern to match parameters of the list and store the pattern as a -- key in `patterns`, with corresponding value set to `name`. For example, if `list_name` is "tr", the pattern will -- match "tr" as well as "tr1", "tr2", ..., "tr10", "tr11", etc. If the `list_name` contains a \1 in it, the numeric -- portion goes in place of the \1. For example, if `list_name` is "f\1accel", the pattern will match "faccel", -- "f1accel", "f2accel", etc. Any \1 in `name` is removed before storing into `patterns`. local function save_pattern(name, list_name, patterns) name = type(name) == "string" and gsub(name, "\1", "") or name if find(list_name, "\1", nil, true) then patterns["^" .. gsub(pattern_escape(list_name), "\1", "([1-9]%%d*)") .. "$"] = name else patterns["^" .. pattern_escape(list_name) .. "([1-9]%d*)$"] = name list_name = list_name .. "\1" end validate_name(list_name, "the list field of parameter ", name) return patterns end -- A helper function for use with `sublist`. It is an iterator function for use in a for-loop that returns split -- elements of `val` using `sublist` (a Lua split pattern; boolean `true` to split on commas optionally surrounded by -- whitespace; "comma without whitespace" to split only on commas not followed by whitespace which have not been escaped -- by a backslash; or a function to do the splitting, which is passed two values, the value to split and a function to -- signal an error, and should return a list of the split elements). `name` is the parameter name or error-signaling -- function passed into convert_val(). local function split_sublist(val, name, sublist) if sublist == true then return gsplit(val, "%s*,%s*") -- Split an argument on comma, but not comma followed by whitespace. elseif sublist == "comma without whitespace" then -- If difficult cases, use split_on_comma. if find(val, "\\", nil, true) or match(val, ",%s") then return iterate_list(split_on_comma(val)) end -- Otherwise, use gsplit. return gsplit(val, ",") elseif type(sublist) == "string" then return gsplit(val, sublist) elseif not is_callable(sublist) then error(format('Internal error: expected `sublist` to be of type "string" or "function" or boolean `true`, but saw %s', dump(sublist))) end return iterate_list(sublist(val, make_parse_err(val, name))) end -- For parameter named `name` with value `val` and param spec `param`, if the `set` field is specified, verify that the -- value is one of the one specified in `set`, and throw an error otherwise. `name` is taken directly from the -- corresponding parameter passed into convert_val() and may be a function to signal an error. Optional `param_type` is -- a string specifying the conversion type of `val` and is used for special-casing: If `param_type` is "boolean", an -- internal error is thrown (since `set` cannot be used in conjunction with booleans) and if `param_type` is "number", -- no checking happens because in this case `set` contains numbers and is checked inside the number conversion function -- itself, after converting `val` to a number. Return the canonical value of `val` (which may be different from `val` -- if an alias map is given). local function check_set(val, name, param, param_type) if param_type == "boolean" then error(format('Internal error: cannot use `set` with `type = "%s"`', param_type)) -- Needs to be special cased because the check happens after conversion to numbers. elseif param_type == "number" then return val end local set, map = param.set if sets == nil then map = finalize_set(set, name) sets = {[set] = map} else map = sets[set] if map == nil then map = finalize_set(set, name) sets[set] = map end end local newval = map[val] if newval == true then return val elseif newval ~= nil then return newval end local list = {} for k, v in sorted_pairs(map) do if v == true then insert(list, dump(k)) else insert(list, ("%s (alias of %s)"):format(dump(k), dump(v))) end end -- If the parameter is not required then put "or empty" at the end of the list, to avoid implying the parameter is actually required. if not param.required then insert(list, "empty") end convert_val_error(val, name, list) end local function convert_language(val, name, param, allow_etym) local method, func = param.method if method == nil or method == "code" then func, method = get_language_by_code, "code" elseif method == "name" then func, method = get_language_by_name, "name" else error(format('Internal error: expected `method` for type `language` to be "code", "name" or undefined, but saw %s', dump(method))) end local lang = func(val, nil, allow_etym, param.family) if lang then return lang end local list, links = {"language"}, {"[[WT:LOL]]"} if allow_etym then insert(list, "etymology language") insert(links, "[[WT:LOL/E]]") end if param.family then insert(list, "family") insert(links, "[[WT:LOF]]") end convert_val_error(val, name, concat_list(list, " or ") .. " " .. (method == "name" and "name" or "code"), concat_list(links, " and ")) end local function convert_number(val, allow_hex) -- Call tonumber_extended with the `real_finite` flag, which filters out ±infinity and NaN. -- By default, specify base 10, which prevents 0x hex inputs from being converted. -- If `allow_hex` is set, then don't give a base, which means 0x hex inputs will work. local num = tonumber_extended(val, not allow_hex and 10 or nil, "finite_real") if not num then return num end if match(val, "[eEpP.]") then -- float track("number not an integer") end if find(val, "+", nil, true) then track("number with +") end -- Track various unusual number inputs to determine if it should be restricted to positive integers by default (possibly including 0). if not is_positive_integer(num) then track("number not a positive integer") if num == 0 then track("number is 0") elseif not is_integer(num) then track("number not an integer") end end return num end -- TODO: validate parameter specs separately, as it's making the handler code really messy at the moment. local type_handlers = setmetatable({ ["boolean"] = function(val) return yesno(val, true) end, ["family"] = function(val, name, param) local method, func = param.method if method == nil or method == "code" then func, method = get_family_by_code, "code" elseif method == "name" then func, method = get_family_by_name, "name" else error(format('Internal error: expected `method` for type `family` to be "code", "name" or undefined, but saw %s', dump(method))) end return func(val) or convert_val_error(val, name, "family " .. method, "[[WT:LOF]]") end, ["labels"] = function(val, name, param) -- FIXME: Should be able to pass in a parse_err function. return split_labels_on_comma(val) end, ["language"] = function(val, name, param) return convert_language(val, name, param, true) end, ["full language"] = convert_language, ["number"] = function(val, name, param) local allow_hex = param.allow_hex if allow_hex and allow_hex ~= true then error(format( 'Internal error: expected `allow_hex` for type `number` to be of type "boolean" or undefined, but saw %s', dump(allow_hex) )) end local num = convert_number(val, allow_hex) if param.set then -- Don't pass in "number" here; otherwise no checking will happen. num = check_set(num, name, param) end if num then return num end convert_val_error(val, name, (allow_hex and "decimal or hexadecimal " or "") .. "number") end, ["range"] = function(val, name, param) local allow_hex = param.allow_hex if allow_hex and allow_hex ~= true then error(format( 'Internal error: expected `allow_hex` for type `range` to be of type "boolean" or undefined, but saw %s', dump(allow_hex) )) end -- Pattern ensures leading minus signs are accounted for. local m1, m2 = match(val, "^(%s*%S.-)%-(%s*%S.*)") if m1 then m1 = convert_number(m1, allow_hex) if m1 then m2 = convert_number(m2, allow_hex) if m2 then return {m1, m2} end end end -- Try `val` if it couldn't be split into a range, and return a range of `val` to `val` if possible. local num = convert_number(val, allow_hex) if num then return {num, num} end convert_val_error(val, name, (allow_hex and "decimal or hexadecimal " or "") .. "number or a hyphen-separated range of two numbers") end, ["parameter"] = function(val, name, param) -- Use the `no_trim` option, as any trimming will have already been done. return scribunto_parameter_key(val, true) end, ["qualifier"] = function(val, name, param) return {val} end, ["references"] = function(val, name, param) return parse_references(val, make_parse_err(val, name)) end, ["genders"] = function(val, name, param) if not val:find("[,<]") then return {{spec = val}} end -- NOTE: We don't pass in allow_space_around_comma. Consistent with other comma-separated types, there shouldn't -- be spaces around the comma. return parse_gender_and_number_spec { spec = val, parse_err = make_parse_err(val, name), allow_multiple = true, } end, ["script"] = function(val, name, param) local method, func = param.method if method == nil or method == "code" then func, method = get_script_by_code, "code" elseif method == "name" then func, method = get_script_by_name, "name" else error(format('Internal error: expected `method` for type `script` to be "code", "name" or undefined, but saw %s', dump(method))) end return func(val) or convert_val_error(val, name, "script " .. method, "[[WT:LOS]]") end, ["string"] = function(val, name, param) -- To be removed as unnecessary. track("string") return val end, -- TODO: add support for resolving to unsupported titles. -- TODO: split this into "page name" (i.e. internal) and "link target" (i.e. external as well), which is more intuitive. ["title"] = function(val, name, param) local namespace = param.namespace if namespace == nil then namespace = 0 else local valid_type = type(namespace) ~= "number" and 'of type "number" or undefined' or not namespaces[namespace] and "a valid namespace number" or nil if valid_type then error(format('Internal error: expected `namespace` for type `title` to be %s, but saw %s', valid_type, dump(namespace))) end end -- Decode entities. WARNING: mw.title.makeTitle must be called with `decoded` (as it doesn't decode) and mw.title.new must be called with `val` (as it does decode, so double-decoding needs to be avoided). local decoded, prefix, title = decode_entities(val), param.prefix -- If the input is a fragment, treat the title as the current title with the input fragment. if sub(decoded, 1, 1) == "#" then -- If prefix is "force", only get the current title if it's in the specified namespace. current_title includes the namespace prefix. if current_namespace == nil then local current_title = mw_title.getCurrentTitle() current_title_text, current_namespace = current_title.prefixedText, current_title.namespace end if not (prefix == "force" and namespace ~= current_namespace) then title = new_title(current_title_text .. val) end elseif prefix == "force" then -- Unconditionally add the namespace prefix (mw.title.makeTitle). title = make_title(namespace, decoded) elseif prefix == "full override" then -- The first input prefix will be used as an override (mw.title.new). This can be a namespace or interwiki prefix. title = new_title(val, namespace) elseif prefix == nil or prefix == "namespace override" then -- Only allow namespace prefixes to override. Interwiki prefixes therefore need to be treated as plaintext (e.g. "el:All topics" with namespace 14 returns "el:Category:All topics", but we want "Category:el:All topics" instead; if the former is really needed, then the input ":el:Category:All topics" will work, as the initial colon overrides the namespace). mw.title.new can take namespace names as well as numbers in the second argument, and will throw an error if the input isn't a valid namespace, so this can be used to determine if a prefix is for a namespace, since mw.title.new will return successfully only if there's either no prefix or the prefix is for a valid namespace (in which case we want the override). local success success, title = pcall(new_title, val, match(decoded, "^.-%f[:]") or namespace) -- Otherwise, get the title with mw.title.makeTitle, which unconditionally adds the namespace prefix, but behaves like mw.title.new if the namespace is 0. if not success then title = make_title(namespace, decoded) end else error(format('Internal error: expected `prefix` for type `title` to be "force", "full override", "namespace override" or undefined, but saw %s', dump(prefix))) end local allow_external = param.allow_external if allow_external == true then return title or convert_val_error(val, name, "Wiktionary or external page title") elseif not allow_external then return title and is_internal_title(title) and title or convert_val_error(val, name, "Wiktionary page title") end error(format('Internal error: expected `allow_external` for type `title` to be of type "boolean" or undefined, but saw %s', dump(allow_external))) end, ["Wikimedia language"] = function(val, name, param) local fallback = param.fallback if fallback == true then return get_wm_lang_by_code_with_fallback(val) or convert_val_error(val, name, "Wikimedia language or language code") elseif not fallback then return get_wm_lang_by_code(val) or convert_val_error(val, name, "Wikimedia language code") end error(format('Internal error: expected `fallback` for type `Wikimedia language` to be of type "boolean" or undefined, but saw %s', dump(fallback))) end, }, { -- TODO: decode HTML entities in all input values. Non-trivial to implement, because we need to avoid any downstream functions decoding the output from this module, which would be double-decoding. Note that "title" has this implemented already, and it needs to have both the raw input and the decoded input to avoid double-decoding by me.title.new, so any implementation can't be as simple as decoding in __call then passing the result to the handler. __call = function(self, val, name, param, param_type, default) local val_type = type(val) -- TODO: check this for all possible parameter types. if val_type == param_type then return val elseif val_type ~= "string" then local expected = "string" if default and (param_type == "boolean" or param_type == "number") then expected = param_type .. " or " .. expected end error(format( "Internal error: %sargument %s has the type %s; expected a %s.", default and (default .. " for ") or "", name, dump(val_type), expected )) end local func = self[param_type] if func == nil then error(format("Internal error: %s is not a recognized parameter type.", dump(param_type))) end return func(val, name, param) end }) --[==[ func: export.convert_val(val, name, param) Convert a parameter value according to the associated specs listed in the `params` table passed to [[Module:parameters]]. `val` is the value to convert for a parameter whose name is `name` (used only in error messages). `param` is the spec (the value part of the `params` table for the parameter). In place of passing in the parameter name, `name` can be a function that throws an error, displaying the specified message along with the parameter name and value. This function processes all the conversion-related fields in `param`, including `type`, `set`, `sublist`, `convert`, etc. It returns the converted value. ]==] local function convert_val(val, name, param, default) local param_type = param.type or "string" -- If param.type is a function, resolve it to a recognized type. if is_callable(param_type) then param_type = param_type(val) end local convert, sublist = param.convert, param.sublist -- `val` might not be a string if it's the default value. if sublist and type(val) == "string" then local retlist, set = {}, param.set if convert then local thisindex, thisval, insval, parse_err = 0 if is_callable(name) then -- We assume the passed-in error function in `name` already shows the parameter name and raw value. function parse_err(msg) name(format("%s: item #%s=%s", msg_with_processed(msg, thisval, insval), thisindex, thisval) ) end else function parse_err(msg) error(format("%s: item #%s=%s of parameter %s=%s", msg_with_processed(msg, thisval, insval), thisindex, thisval, name, val) ) end end for v in split_sublist(val, name, sublist) do thisindex, thisval = thisindex + 1, v if set then v = check_set(v, name, param, param_type) end insert(retlist, convert(type_handlers(v, name, param, param_type, default), parse_err)) end else for v in split_sublist(val, name, sublist) do if set then v = check_set(v, name, param, param_type) end insert(retlist, type_handlers(v, name, param, param_type, default)) end end return retlist elseif param.set then val = check_set(val, name, param, param_type) end local retval = type_handlers(val, name, param, param_type, default) if convert then local parse_err if is_callable(name) then -- We assume the passed-in error function in `name` already shows the parameter name and raw value. if retval == val then -- This is an optimization to avoid creating a closure. The second arm works correctly even -- when retval == val. parse_err = name else function parse_err(msg) name(msg_with_processed(msg, val, retval)) end end else function parse_err(msg) error(format("%s: parameter %s=%s", msg_with_processed(msg, val, retval), name, val)) end end retval = convert(retval, parse_err) end -- If `sublist` is set but the input wasn't a string, return `retval` as a one-item list. if sublist then retval = {retval} end return retval end export.convert_val = convert_val -- used by [[Module:parameter utilities]] local function unknown_param(name, val, args_unknown) track("unknown parameters") args_unknown[name] = val return args_unknown end local function check_string_param_modifier(param_type, name, tag) if param_type and not (param_type == "string" or param_type == "parameter" or is_callable(param_type)) then internal_process_error( "%s cannot be set unless %s is set to %s (the default), %s or a function: parameter %s has the type %s.", tag, "type", "string", "parameter", name, param_type ) end end local function hole_error(params, name, listname, this, nxt, extra) -- `process_error` calls `dump` on values to be inserted into -- error messages, but with numeric lists this causes "numeric" -- to look like the name of the list rather than a description, -- as `dump` adds quote marks. Insert it early to avoid this, -- but add another %s specifier in all other cases, so that -- actual list names will be displayed properly. local offset, specifier, starting_from = 0, "%s", "" local msg = "Item %%d in the list of %s parameters must be given if item %%d is given, because %sthere shouldn't be any gaps due to missing%s parameters." local specs = {} if type(listname) == "string" then specs[2] = listname elseif type(name) == "number" then offset = name - 1 -- To get the original parameter. specifier = "numeric" -- If the list doesn't start at parameter 1, avoid implying -- there can't be any gaps in the numeric parameters if -- some parameter with a lower key is optional. for j = name - 1, 1, -1 do local _param = params[j] if not (_param and _param.required) then starting_from = format("(starting from parameter %d) ", dump(j + 1)) break end end else specs[2] = name end specs[1] = this + offset -- Absolute index for this item. insert(specs, nxt + offset) -- Absolute index for the next item. process_error(format(msg, specifier, starting_from, extra or ""), unpack(specs)) end local function check_disallow_holes(params, val, name, listname, extra) for i = 1, val.maxindex do if val[i] == nil then hole_error(params, name, listname, i, num_keys(val)[i], extra) end end end local function handle_holes(params, val, name) local param = params[name] local disallow_holes = param.disallow_holes -- Iterate up the list, and throw an error if a hole is found. if disallow_holes then check_disallow_holes(params, val, name, param.list, " or empty") end -- Iterate up the list, and throw an error if a hole is found due to a -- missing parameter, treating empty parameters as part of the list. This -- applies beyond maxindex if blank arguments are supplied beyond it, so -- isn't mutually exclusive with `disallow_holes`. local empty = val.empty if param.disallow_missing then if empty then -- Remove `empty` from `val`, so it doesn't get returned. val.empty = nil for i = 1, max(val.maxindex, empty.maxindex) do if val[i] == nil and not empty[i] then local keys = extend(num_keys(val), num_keys(empty)) sort(keys) hole_error(params, name, param.list, i, keys[i]) end end -- If there's no table of empty parameters, the check is identical to -- `disallow_holes`, except that the error message only refers to -- missing parameters, not missing or empty ones. If `disallow_holes` is -- also set, there's no point checking again. elseif not disallow_holes then check_disallow_holes(params, val, name, param.list) end end -- If `allow_holes` is set, there's nothing left to do. if param.allow_holes then -- do nothing -- Otherwise, remove any holes: `pairs` won't work, as it's unsorted, and -- iterating from 1 to `maxindex` times out with inputs like |100000000000=, -- so use num_keys to get a list of numerical keys sorted from lowest to -- highest, then iterate up the list, moving each value in `val` to the -- lowest unused positive integer key. This also avoids the need to create a -- new table. If `disallow_holes` is specified, then there can't be any -- holes in the list, so there's no reason to check again; this doesn't -- apply to `disallow_missing`, however. else if not disallow_holes then local keys, i = num_keys(val), 0 while true do i = i + 1 local key = keys[i] if key == nil then break elseif i ~= key then track("holes compressed") val[i], val[key] = val[key], nil end end end -- Some code depends on only numeric params being present when no holes are -- allowed (e.g. by checking for the presence of arguments using next()), so -- remove `maxindex`. val.maxindex = nil end end local function maybe_flatten(params, val, name) local param = params[name] if param.flatten then if param.allow_holes then process_error("For parameter %s, can't set both `allow_holes` and `flatten`", name) end if not param.sublist and param.type ~= "genders" and param.type ~= "labels" and param.type ~= "references" and param.type ~= "qualifier" then process_error("For parameter %s, can only set `flatten` along with `sublist` or a list-generating type", name) end -- Do the flattening ourselves rather than calling flatten() in [[Module:table]], which will attempt to -- flatten non-list objects like title objects, and cause an error in the process. -- FIXME: We should do this in-place if possible. local newlist = {} for _, sublist in ipairs(val) do for _, item in ipairs(sublist) do insert(newlist, item) end end val = newlist end return val end -- If both `template_default` and `default` are given, `template_default` takes precedence, but only on the template or -- module page. This means a different default can be specified for the template or module page example. However, -- `template_default` doesn't apply if any args are set, which helps (somewhat) with examples on documentation pages -- transcluded into the template page. HACK: We still run into problems on documentation pages transcluded into the -- template page when pagename= is set. Check this on the assumption that pagename= is fairly standard. local function convert_default_val(name, param, pagename_set, any_args_set, add_empty_sublist) if not pagename_set then local val = param.template_default if val ~= nil and not any_args_set and is_own_page() then return convert_val(val, name, param, "template default") end end local val = param.default if val ~= nil then return convert_val(val, name, param, "default") -- Sublist parameters should return an empty table if not given, but only do -- this if the parameter isn't also a list (in which case it will already -- be an empty table). -- FIXME: do this once all modules that pass in a sublist parameter treat an empty sublist identically to a nil argument; some currently do things based on the fact an argument exists at all. -- elseif add_empty_sublist and param.sublist then --return {} end end --[==[ Process arguments with a given list of parameters. Return a table containing the processed arguments. The `args` parameter specifies the arguments to be processed; they are the arguments you might retrieve from {frame:getParent().args} (the template arguments) or in some cases {frame.args} (the invocation arguments). The `params` parameter specifies a list of valid parameters, and consists of a table. If an argument is encountered that is not in the parameter table, an error is thrown. The structure of the `params` table is as described above in the intro comment. '''WARNING:''' The `params` table is destructively modified to save memory. Nonetheless, different keys can share the same value objects in memory without causing problems. The `return_unknown` parameter, if set to {true}, prevents the function from triggering an error when it comes across an argument with a name that it doesn't recognise. Instead, the return value is a pair of values: the first is the processed arguments as usual, while the second contains all the unrecognised arguments that were left unprocessed. This allows you to do multi-stage processing, where the entire set of arguments that a template should accept is not known at once. For example, an inflection-table might do some generic processing on some arguments, but then defer processing of the remainder to the function that handles a specific inflectional type. ]==] function export.process(args, params, return_unknown) -- Process parameters for specific properties local args_new, args_unknown, any_args_set, required, patterns, list_args, index_list, args_placeholders, placeholders_n = {} -- TODO: memoize the processing of each unique `param` value, since it's common for the same value to be used for many parameter names. for name, param in pairs(params) do validate_name(name, "parameter names") if param ~= true then local spec_type = type(param) if type(param) ~= "table" then internal_process_error( "spec for parameter %s must be a table of specs or the value true, but found %s.", name, spec_type ~= "boolean" and spec_type or param ) end -- Populate required table, and make sure aliases aren't set to required. if param.required then if required == nil then required = {} end required[name] = true end local listname, alias_of = param.list, param.alias_of if alias_of then validate_name(alias_of, "the alias_of field of parameter ", name) if alias_of == name then internal_process_error( "parameter %s cannot be an alias of itself.", name ) end local main_param = params[alias_of] -- Check that the alias_of is set to a valid parameter. if not (main_param == true or type(main_param) == "table") then internal_process_error( "parameter %s is an alias of an invalid parameter.", name ) end validate_alias_options(param, name, main_param, alias_of) -- Aliases can't be lists unless the canonical parameter is also a list. if listname and (main_param == true or not main_param.list) then internal_process_error( "list parameter %s is set as an alias of %s, which is not a list parameter.", name, alias_of ) -- Can't be an alias of an alias. elseif main_param ~= true then local main_alias_of = main_param.alias_of if main_alias_of ~= nil then internal_process_error( "alias_of cannot be set to another alias: parameter %s is set as an alias of %s, which is in turn an alias of %s. Set alias_of for %s to %s.", name, alias_of, main_alias_of, name, main_alias_of ) end end end if listname then if not alias_of then local key = name if type(name) == "string" then key = gsub(name, "\1", "") end local list_arg = {maxindex = 0} args_new[key] = list_arg if list_args == nil then list_args = {} end list_args[key] = list_arg end local list_type = type(listname) if list_type == "string" then -- If the list property is a string, then it represents the name -- to be used as the prefix for list items. This is for use with lists -- where the first item is a numbered parameter and the -- subsequent ones are named, such as 1, pl2, pl3. patterns = save_pattern(name, listname, patterns or {}) elseif listname ~= true then internal_process_error( "list field for parameter %s must be a boolean, string or undefined, but saw a %s.", name, list_type ) elseif type(name) == "number" then if index_list ~= nil then internal_process_error( "only one numeric parameter can be a list, unless the list property is a string." ) end -- If the name is a number, then all indexed parameters from -- this number onwards go in the list. index_list = name else patterns = save_pattern(name, name, patterns or {}) end if find(name, "\1", nil, true) then if args_placeholders then placeholders_n = placeholders_n + 1 args_placeholders[placeholders_n] = name else args_placeholders, placeholders_n = {name}, 1 end end end end end --Process required changes to `params`. if args_placeholders then for i = 1, placeholders_n do local name = args_placeholders[i] params[gsub(name, "\1", "")], params[name] = params[name], nil end end -- Process the arguments for name, val in pairs(args) do any_args_set = true validate_name(name, "argument names", nil, true) -- Guaranteeing that all values are strings avoids issues with type coercion being inconsistent between functions. local val_type = type(val) if val_type ~= "string" then internal_process_error( "argument %s has the type %s; all arguments must be strings.", name, val_type ) end local orig_name, raw_type, index, canonical = name, type(name) if raw_type == "number" then if index_list and name >= index_list then index = name - index_list + 1 name = index_list end elseif patterns then -- Does this argument name match a pattern? for pattern, pname in next, patterns do index = match(name, pattern) -- It matches, so store the parameter name and the -- numeric index extracted from the argument name. if index then index = tonumber(index) name = pname break end end end local param = params[name] -- If the argument is not in the list of parameters, store it in a separate list. if not param then args_unknown = unknown_param(name, val, args_unknown or {}) elseif param == true then canonical = orig_name val = php_trim(val) if val ~= "" then -- If the parameter is duplicated, throw an error. if args_new[name] ~= nil then process_error( "Parameter %s has been entered more than once. This is probably because a parameter alias has been used.", canonical ) end args_new[name] = val end else if param.deprecated then track("deprecated parameter", name) end if param.require_index then -- Disallow require_index for numeric parameter names, as this doesn't make sense. if raw_type == "number" then internal_process_error( "cannot set require_index for numeric parameter %s.", name ) -- If a parameter without the trailing index was found, and -- require_index is set on the param, treat it -- as if it isn't recognized. elseif not index then args_unknown = unknown_param(name, val, args_unknown or {}) end end -- Check that separate_no_index is not being used with a numeric parameter. if param.separate_no_index then if raw_type == "number" then internal_process_error( "cannot set separate_no_index for numeric parameter %s.", name ) elseif type(param.alias_of) == "number" then internal_process_error( "cannot set separate_no_index for parameter %s, as it is an alias of numeric parameter %s.", name, param.alias_of ) end end -- If no index was found, use 1 as the default index. -- This makes list parameters like g, g2, g3 put g at index 1. -- If `separate_no_index` is set, then use 0 as the default instead. if not index and param.list then index = param.separate_no_index and 0 or 1 end -- Normalize to the canonical parameter name. If it's a list, but the alias is not, then determine the index. local raw_name = param.alias_of if raw_name then raw_type = type(raw_name) if raw_type == "number" then name = raw_name local main_param = params[raw_name] if main_param ~= true and main_param.list then if not index then index = param.separate_no_index and 0 or 1 end canonical = raw_name + index - 1 else canonical = raw_name end else name = gsub(raw_name, "\1", "") local main_param = params[name] if not index and main_param ~= true and main_param.list then index = param.separate_no_index and 0 or 1 end if not index or index == 0 then canonical = name elseif name == raw_name then canonical = name .. index else canonical = gsub(raw_name, "\1", index) end end else canonical = orig_name end -- Only recognize demo parameters if this is the current template or module's -- page, or its documentation page. if param.demo and not is_own_page("include_documentation") then args_unknown = unknown_param(name, val, args_unknown or {}) end -- Remove leading and trailing whitespace unless no_trim is true. if param.no_trim then check_string_param_modifier(param.type, name, "no_trim") else val = php_trim(val) end -- Empty string is equivalent to nil unless allow_empty is true. if param.allow_empty then check_string_param_modifier(param.type, name, "allow_empty") elseif val == "" then -- If `disallow_missing` is set, keep track of empty parameters -- via the `empty` field in `arg`, which will be used by the -- `disallow_missing` check. This will be deleted before -- returning. if index and param.disallow_missing then local arg = args_new[name] local empty = arg.empty if empty == nil then empty = {maxindex = 0} arg.empty = empty end empty[index] = true if index > empty.maxindex then empty.maxindex = index end end val = nil end -- Allow boolean false. if val ~= nil then -- Convert to proper type if necessary. local main_param = params[raw_name] if main_param ~= true then val = convert_val(val, orig_name, main_param or param) end -- Mark it as no longer required, as it is present. if required then required[name] = nil end -- Store the argument value. if index then local arg = args_new[name] -- If the parameter is duplicated, throw an error. if arg[index] ~= nil then process_error( "Parameter %s has been entered more than once. This is probably because a list parameter has been entered without an index and with index 1 at the same time, or because a parameter alias has been used.", canonical ) end arg[index] = val -- Store the highest index we find. local maxindex = arg.maxindex if index > maxindex then maxindex = index end if arg[0] ~= nil then arg.default, arg[0] = arg[0], nil if maxindex < 1 then maxindex = 1 end end arg.maxindex = maxindex if not params[name].list then args_new[name] = val -- Don't store index 0, as it's a proxy for the default. elseif index > 0 then arg[index] = val end else -- If the parameter is duplicated, throw an error. if args_new[name] ~= nil then process_error( "Parameter %s has been entered more than once. This is probably because a parameter alias has been used.", canonical ) end if not raw_name then args_new[name] = val else local main_param = params[raw_name] if main_param ~= true and main_param.list then local main_arg = args_new[raw_name] main_arg[1] = val -- Store the highest index we find. if main_arg.maxindex < 1 then main_arg.maxindex = 1 end else args_new[raw_name] = val end end end end end end -- Remove holes in any list parameters if needed. This must be handled -- straight after the previous loop, as any instances of `empty` need to be -- converted to nil. if list_args then for name, val in next, list_args do handle_holes(params, val, name) end end -- If the current page is the template which invoked this Lua instance, then ignore the `require` flag, as it -- means we're viewing the template directly. Required parameters sometimes have a `template_default` key set, -- which gets used in such cases as a demo. -- Note: this won't work on other pages in the Template: namespace (including the /documentation subpage), -- or if the #invoke: is on a page in another namespace. local pagename_set = args_new.pagename -- Handle defaults. for name, param in pairs(params) do if param ~= true then local arg_new = args_new[name] if arg_new == nil then args_new[name] = convert_default_val(name, param, pagename_set, any_args_set, true) elseif param.list and arg_new[1] == nil then local default_val = convert_default_val(name, param, pagename_set, any_args_set) if default_val ~= nil then arg_new[1] = default_val if arg_new.maxindex == 0 then arg_new.maxindex = 1 end end end end end -- Flatten nested lists if called for. This must come after setting the default. if list_args then for name, val in next, list_args do args_new[name] = maybe_flatten(params, val, name) end end -- The required table should now be empty. -- If any parameters remain, throw an error, unless we're on the current template or module's page. if required and next(required) ~= nil and not is_own_page() then params_list_error(required, "required") -- Return the arguments table. -- If there are any unknown parameters, throw an error, unless return_unknown is set, in which case return args_unknown as a second return value. elseif return_unknown then return args_new, args_unknown or {} elseif args_unknown and next(args_unknown) ~= nil then params_list_error(args_unknown, "not used by this template") end return args_new end return export gmsz2tmgony3ha5oucchstnmi0bn8nm 틀:자원 10 425599 4388257 4053137 2025-07-07T11:00:06Z CHK2605 33979 내용을 "<includeonly>{{#invoke:zh-glyph|main}}</includeonly><noinclude>{{설명문서}}</noinclude>"(으)로 바꿈 4388257 wikitext text/x-wiki <includeonly>{{#invoke:zh-glyph|main}}</includeonly><noinclude>{{설명문서}}</noinclude> 3bgnnbbzetq3q0pmx6o64y8jmlivc78 降りる 0 436067 4388193 3996716 2025-07-06T15:56:30Z CHK2605 33979 4388193 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|yomi=k}} === 발음 === {{ja-pron|おりる|acc=2|acc_ref=DJR}} === 동사 === {{ja-verb|おりる|type=2|tr=자동사}} # (탈것에서) [[내리다]] #: {{ux|ja|バスを'''降りる'''|バス を '''おりる'''|버스에서 '''내리다'''}} # (눈, 비 등이) [[내리다]] #: {{ux|ja|露が'''降りる'''|つゆ が '''おりる'''|이슬이 '''내리다'''}} #: {{ux|ja|霜が'''降りる'''|しも が '''おりる'''|서리가 '''내리다'''}} ==== 활용형 ==== {{ja-conj}} edobie1p4jwpct0kr75y5wwu51jcng4 居る 0 436241 4388221 3997620 2025-07-07T03:57:41Z CHK2605 33979 4388221 wikitext text/x-wiki == 일본어 == === 어원 1 === {{ja-kanjitab|い|yomi=k}} {{ja-see|いる}} === 어원 2 === {{ja-kanjitab|お|yomi=k}} {{ja-see|おる}} 3sdyo19fdkj9yuwspuj3jk4n3qni0as 別れる 0 438257 4388233 4023298 2025-07-07T05:03:57Z CHK2605 33979 4388233 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|わか|yomi=k}} === 어원 === * 고전 일본어 {{lang|ja|[[わかる]]}} === 발음 === {{ja-pron|わかれる|acc=3|acc_ref=DJR}} === 동사 === {{ja-verb|わかれる|type=2|tr=자동사}} # [[떨어지다]], [[갈라지다]] #: {{ux|ja|両%親と'''別れて'''暮らす|りょう%しん と '''わかれて''' くらす|부모님과 '''떨어져''' 살다}} #: {{ux|ja|道が三つに'''分かれる'''|みち が みっつ に '''わかれる'''|길이 셋으로 '''갈라지다'''}} # [[이별하다]], [[헤어지다]] #: {{ux|ja|夫と'''別れる'''|おっと と '''わかれる'''|남편과 '''이혼하다'''}} #: {{ux|ja|恋人と'''別れる'''|こいびと と '''わかれる'''|연인과 '''헤어지다'''}} # [[사별하다]] #: {{ux|ja|幼くして母と'''別れる'''|おさなく して はは と '''わかれる'''|어려서 어머니와 '''사별하다'''}} ==== 활용형 ==== {{ja-conj}} da5u943sombchpavbimy644ujsux1i0 馬鹿げる 0 438262 4388229 4023363 2025-07-07T04:50:09Z CHK2605 33979 4388229 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|ば|か|yomi=j|alt=馬鹿気る}} === 발음 === {{ja-pron|ばかげる|acc=3|acc_ref=DJR}} === 동사 === {{ja-verb|ばかげる|バカげる|type=2|tr=자동사}} # [[어리석다|어리석어]] [[보이다]], [[시시하다|시시하게]] [[여겨지다]] #: {{ux|ja|'''馬鹿げた'''話|'''ばかげた''' はなし|'''어리석은''' 이야기}} #: {{ux|ja|そんなことに時%間を使うなんて、'''馬鹿げて'''いる|そんな こと に じ%かん を つかう なんて、'''ばかげて''' いる|그런 일에 시간을 쓰다니 '''어리석다'''}} ==== 활용형 ==== {{ja-conj}} edupgc8jjpuvw3zu2hwoy62mf83exbc 모듈:headword/data 828 444396 4388241 4384975 2025-07-07T08:33:52Z CHK2605 33979 4388241 Scribunto text/plain local headword_page_module = "Module:headword/page" local list_to_set = require("Module:table").listToSet local data = {} ------ 1. Lists which are converted into sets. ------ -- Zero-plurals (i.e. invariable plurals). local irregular_plurals = list_to_set({ "cmavo", "cmene", "fu'ivla", "gismu", "Han tu", "hanja", "hanzi", "jyutping", "kana", "kanji", "lujvo", "phrasebook", "pinyin", "rafsi", }, function(_, item) return item end) -- Irregular non-zero plurals AND any regular plurals where the singular ends in "s", -- because the module assumes that inputs ending in "s" are plurals. The singular and -- plural both need to be added, as the module will generate a default plural if -- the input doesn't match a key in this table. for sg, pl in next, { mora = "morae" } do irregular_plurals[sg], irregular_plurals[pl] = pl, pl end data.irregular_plurals = irregular_plurals data.lemmas = list_to_set{ "abbreviations", "acronyms", "adjectives", "adnominals", "adpositions", "adverbs", "affixes", "ambipositions", "articles", "circumfixes", "circumpositions", "classifiers", "cmavo", "cmavo clusters", "cmene", "combining forms", "conjunctions", "counters", "determiners", "diacritical marks", "digraphs", "equative adjectives", "fu'ivla", "gismu", "Han characters", "Han tu", "hanja", "hanzi", "ideophones", "idioms", "infixes", "initialisms", "iteration marks", "interfixes", "interjections", "kana", "kanji", "letters", "ligatures", "logograms", "lujvo", "morae", "morphemes", "non-constituents", "nouns", "numbers", "numeral symbols", "numerals", "particles", "phrases", "postpositions", "postpositional phrases", "predicatives", "prefixes", "prepositional phrases", "prepositions", "preverbs", "pronominal adverbs", "pronouns", "proper nouns", "proverbs", "punctuation marks", "relatives", "roots","어근", "stems", "suffixes","접사", "syllables", "symbols", "verbs", } data.nonlemmas = list_to_set{ "active participle forms", "active participles", "adjectival participles", "adjective case forms", "adjective forms", "adjective feminine forms", "adjective plural forms", "adverb forms", "adverbial participles", "agent participles", "article forms", "circumfix forms", "combined forms", "comparative adjective forms", "comparative adjectives", "comparative adverb forms", "comparative adverbs", "conjunction forms", "contractions", "converbs", "determiner comparative forms", "determiner forms", "determiner superlative forms", "diminutive nouns", "elative adjectives", "equative adjective forms", "equative adjectives", "future participles", "gerunds", "infinitive forms", "infinitives", "interjection forms", "jyutping", "misspellings", "negative participles", "nominal participles", "noun case forms", "noun construct forms", "noun dual forms", "noun forms","명사 파생형", "noun paucal forms", "noun plural forms", "noun possessive forms", "noun singulative forms", "numeral forms", "participles", "participle forms", "particle forms", "passive participles", "past active participles", "past adverbial participles", "past participles", "past participle forms", "past passive participles", "perfect active participles", "perfect participles", "perfect passive participles", "pinyin", "plurals", "postposition forms", "prefix forms", "preposition contractions", "preposition forms", "prepositional pronouns", "present active participles", "present adverbial participles", "present participles", "present passive participles", "preverb forms", "pronoun forms", "pronoun possessive forms", "proper noun forms", "proper noun plural forms", "rafsi", "romanizations", "root forms", "singulatives", "suffix forms", "superlative adjective forms", "superlative adjectives", "superlative adverb forms", "superlative adverbs", "verb forms", "verbal nouns", } -- These langauges will not have links to separate parts of the headword. data.no_multiword_links = list_to_set{ "zh", } -- These languages will not have "LANG multiword terms" categories added. data.no_multiword_cat = list_to_set{ -------- Languages without spaces between words (sometimes spaces between phrases) -------- "blt", -- Tai Dam "ja", -- Japanese "khb", -- Lü "km", -- Khmer "lo", -- Lao "mnw", -- Mon "my", -- Burmese "nan", -- Min Nan (some words in Latin script; hyphens between syllables) "nan-hbl", -- Hokkien (some words in Latin script; hyphens between syllables) "nod", -- Northern Thai "ojp", -- Old Japanese "shn", -- Shan "sou", -- Southern Thai "tdd", -- Tai Nüa "th", -- Thai "tts", -- Isan "twh", -- Tai Dón "txg", -- Tangut "zh", -- Chinese (all varieties with Chinese characters) "zkt", -- Khitan -------- Languages with spaces between syllables -------- "ahk", -- Akha "aou", -- A'ou "atb", -- Zaiwa "byk", -- Biao "cdy", -- Chadong --"duu", -- Drung; not sure --"hmx-pro", -- Proto-Hmong-Mien --"hnj", -- Green Hmong; not sure "huq", -- Tsat "ium", -- Iu Mien --"lis", -- Lisu; not sure "mtq", -- Muong --"mww", -- White Hmong; not sure "onb", -- Lingao --"sit-gkh", -- Gokhy; not sure --"swi", -- Sui; not sure "tbq-lol-pro", -- Proto-Loloish "tdh", -- Thulung "ukk", -- Muak Sa-aak "vi", -- Vietnamese "yig", -- Wusa Nasu "zng", -- Mang -------- Languages with ~ with surrounding spaces used to separate variants -------- "mkh-ban-pro", -- Proto-Bahnaric "sit-pro", -- Proto-Sino-Tibetan; listed above -------- Other weirdnesses -------- "mul", -- Translingual; gestures, Morse code, etc. "aot", -- Atong (India); bullet is a letter -------- All sign languages -------- "ads", "aed", "aen", "afg", "ase", "asf", "asp", "asq", "asw", "bfi", "bfk", "bog", "bqn", "bqy", "bvl", "bzs", "cds", "csc", "csd", "cse", "csf", "csg", "csl", "csn", "csq", "csr", "doq", "dse", "dsl", "ecs", "esl", "esn", "eso", "eth", "fcs", "fse", "fsl", "fss", "gds", "gse", "gsg", "gsm", "gss", "gus", "hab", "haf", "hds", "hks", "hos", "hps", "hsh", "hsl", "icl", "iks", "ils", "inl", "ins", "ise", "isg", "isr", "jcs", "jhs", "jls", "jos", "jsl", "jus", "kgi", "kvk", "lbs", "lls", "lsl", "lso", "lsp", "lst", "lsy", "lws", "mdl", "mfs", "mre", "msd", "msr", "mzc", "mzg", "mzy", "nbs", "ncs", "nsi", "nsl", "nsp", "nsr", "nzs", "okl", "pgz", "pks", "prl", "prz", "psc", "psd", "psg", "psl", "pso", "psp", "psr", "pys", "rms", "rsl", "rsm", "sdl", "sfb", "sfs", "sgg", "sgx", "slf", "sls", "sqk", "sqs", "ssp", "ssr", "svk", "swl", "syy", "tse", "tsm", "tsq", "tss", "tsy", "tza", "ugn", "ugy", "ukl", "uks", "vgt", "vsi", "vsl", "vsv", "xki", "xml", "xms", "ygs", "ysl", "zib", "zsl", } -- In these languages, the hyphen is not considered a word separator for the "multiword terms" category. data.hyphen_not_multiword_sep = list_to_set{ "akk", -- Akkadian; hyphens between syllables "akl", -- Aklanon; hyphens for mid-word glottal stops "ber-pro", -- Proto-Berber; morphemes separated by hyphens "ceb", -- Cebuano; hyphens for mid-word glottal stops "cnk", -- Khumi Chin; hyphens used in single words "cpi", -- Chinese Pidgin English; Chinese-derived words with hyphens between syllables "de", -- too many false positives "esx-esk-pro", -- hyphen used to separate morphemes "fi", -- Finnish; hyphen used to separate components in compound words if the final and initial vowels match, respectively "hil", -- Hiligaynon; hyphens for mid-word glottal stops "hnn", -- Hanunoo; too many false positives "ilo", -- Ilocano; hyphens for mid-word glottal stops "kne", -- Kankanaey; hyphens for mid-word glottal stops "lcp", -- Western Lawa; dash as syllable joiner "lwl", -- Eastern Lawa; dash as syllable joiner "mfa", -- Pattani Malay in Thai script; dash as syllable joiner "mkh-vie-pro", -- Proto-Vietic; morphemes separated by hyphens "msb", -- Masbatenyo; too many false positives "tl", -- Tagalog; too many false positives "war", -- Waray-Waray; too many false positives "yo", -- Yoruba; hyphens used to show lengthened nasal vowels } -- These languages will not have "LANG masculine nouns" and similar categories added. data.no_gender_cat = list_to_set{ -- Languages without gender but which use the gender field for other purposes "ja", "th", } data.notranslit = list_to_set{ "ams", "az", "bbc", "bug", "cdo", "cia", "cjm", "cjy", "cmn", "cnp", "cpi", "cpx", "csp", "czh", "czo", "gan", "hak", "hnm", "hsn", "ja", "kzg", "lad", "ltc", "luh", "lzh", "mnp", "ms", "mul", "mvi", "nan", "nan-dat", "nan-hbl", "nan-hlh", "nan-lnx", "nan-tws", "nan-zhe", "nan-zsh", "och", "oj", "okn", "ryn", "rys", "ryu", "sh", "sjc", "tgt", "th", "tkn", "tly", "txg", "und", "vi", "wuu", "xug", "yoi", "yox", "yue", "za", "zh", "zhx-sic", "zhx-tai", } -- Script codes for which a script-tagged display title will be added. data.toBeTagged = list_to_set{ "Ahom", "Arab", "fa-Arab", "glk-Arab", "kk-Arab", "ks-Arab", "ku-Arab", "mzn-Arab", "ms-Arab", "ota-Arab", "pa-Arab", "ps-Arab", "sd-Arab", "tt-Arab", "ug-Arab", "ur-Arab", "Armi", "Armn", "Avst", "Bali", "Bamu", "Batk", "Beng", "as-Beng", "Bopo", "Brah", "Brai", "Bugi", "Buhd", "Cakm", "Cans", "Cari", "Cham", "Cher", "Copt", "Cprt", "Cyrl", "Cyrs", "Deva", "Dsrt", "Egyd", "Egyp", "Ethi", "Geok", "Geor", "Glag", "Goth", "Grek", "Polyt", "polytonic", "Gujr", "Guru", "Hang", "Hani", "Hano", "Hebr", "Hira", "Hluw", "Ital", "Java", "Kali", "Kana", "Khar", "Khmr", "Knda", "Kthi", "Lana", "Laoo", "Latn", "Latf", "Latg", "Latnx", "Latinx", "pjt-Latn", "Lepc", "Limb", "Linb", "Lisu", "Lyci", "Lydi", "Mand", "Mani", "Marc", "Merc", "Mero", "Mlym", "Mong", "mnc-Mong", "sjo-Mong", "xwo-Mong", "Mtei", "Mymr", "Narb", "Nkoo", "Nshu", "Ogam", "Olck", "Orkh", "Orya", "Osma", "Ougr", "Palm", "Phag", "Phli", "Phlv", "Phnx", "Plrd", "Prti", "Rjng", "Runr", "Samr", "Sarb", "Saur", "Sgnw", "Shaw", "Shrd", "Sinh", "Sora", "Sund", "Sylo", "Syrc", "Tagb", "Tale", "Talu", "Taml", "Tang", "Tavt", "Telu", "Tfng", "Tglg", "Thaa", "Thai", "Tibt", "Ugar", "Vaii", "Xpeo", "Xsux", "Yiii", "Zmth", "Zsym", "Ipach", "Music", "Rumin", } -- Parts of speech which will not be categorised in categories like "English terms spelled with É" if -- the term is the character in question (e.g. the letter entry for English [[é]]). This contrasts with -- entries like the French adjective [[m̂]], which is a one-letter word spelled with the letter. data.pos_not_spelled_with_self = list_to_set{ "diacritical marks", "Han characters", "Han tu", "hanja", "hanzi", "iteration marks", "kana", "kanji", "letters", "ligatures", "logograms", "morae", "numeral symbols", "numerals", "punctuation marks", "syllables", "symbols", } ------ 2. Lists not converted into sets. ------ -- Recognized aliases for parts of speech (param 2=). Key is the short form and value is the canonical singular (not -- pluralized) form. It is singular so that the same table can be used in [[Module:form of]] for the p=/POS= param -- and [[Module:links]] for the pos= param. data.pos_aliases = { a = "adjective", adj = "adjective", adv = "adverb", art = "article", det = "determiner", compadj = "comparative adjective", compadv = "comparative adverb", conj = "conjunction", conv = "converb", int = "interjection", interj = "interjection", intj = "interjection", n = "noun", -- the next two support Algonquian languages; see also vii/vai/vti/vta below na = "animate noun", ni = "inanimate noun", num = "numeral", part = "participle", pcl = "particle", phr = "phrase", pn = "proper noun", postp = "postposition", pref = "prefix", prep = "preposition", pron = "pronoun", prop = "proper noun", proper = "proper noun", propn = "proper noun", rom = "romanization", suf = "suffix", supadj = "superlative adjective", supadv = "superlative adverb", v = "verb", vb = "verb", vi = "intransitive verb", vt = "transitive verb", -- the next four support Algonquian languages vii = "inanimate intransitive verb", vai = "animate intransitive verb", vti = "transitive inanimate verb", vta = "transitive animate verb", } -- Parts of speech for which categories like "German masculine nouns" or "Russian imperfective verbs" -- will be generated if the headword is of the appropriate gender/number. data.pos_for_gender_number_cat = { ["nouns"] = "명사", ["proper nouns"] = "고유 명사", ["suffixes"] = "접미사", -- We include verbs because impf and pf are valid "genders". ["verbs"] = "동사", } ------ 3. Page-wide processing (so that it only needs to be done once per page). ------ data.page = require(headword_page_module).process_page() -- Fuckme, random references to data.pagename and data.encoded_pagename are scattered throughout the codebase. FIXME! data.pagename = data.page.pagename data.encoded_pagename = data.page.encoded_pagename return data pe7oag8otdfv4kt537z9wz0debdexgs 모듈:headword/page 828 445647 4388242 4385201 2025-07-07T08:36:46Z CHK2605 33979 4388242 Scribunto text/plain local export = {} local languages_module = "Module:languages" local maintenance_category_module = "Module:maintenance category" local string_compare_module = "Module:string/compare" local string_decode_entities_module = "Module:string/decodeEntities" local string_remove_comments_module = "Module:string/removeComments" local string_utilities_module = "Module:string utilities" local table_module = "Module:table" local template_parser_module = "Module:template parser" local mw = mw local string = string local table = table local ustring = mw.ustring local concat = table.concat local find = string.find local format = string.format local gsub = string.gsub local insert = table.insert local load_data = mw.loadData local match = string.match local new_title = mw.title.new local pairs = pairs local require = require local sub = string.sub local toNFC = ustring.toNFC local toNFD = ustring.toNFD local ugsub = ustring.gsub local function class_else_type(...) class_else_type = require(template_parser_module).class_else_type return class_else_type(...) end local function decode_entities(...) decode_entities = require(string_decode_entities_module) return decode_entities(...) end local function encode_entities(...) encode_entities = require(string_utilities_module).encode_entities return encode_entities(...) end local function get_category(...) get_category = require(maintenance_category_module).get_category return get_category(...) end local function get_lang(...) get_lang = require(languages_module).getByCode return get_lang(...) end local function list_to_set(...) list_to_set = require(table_module).listToSet return list_to_set(...) end local function parse(...) parse = require(template_parser_module).parse return parse(...) end local function remove_comments(...) remove_comments = require(string_remove_comments_module) return remove_comments(...) end local function split(...) split = require(string_utilities_module).split return split(...) end local function string_compare(...) string_compare = require(string_compare_module) return string_compare(...) end local function uupper(...) uupper = require(string_utilities_module).upper return uupper(...) end --[==[ Loaders for objects, which load data (or some other object) into some variable, which can then be accessed as "foo or get_foo()", where the function get_foo sets the object to "foo" and then returns it. This ensures they are only loaded when needed, and avoids the need to check for the existence of the object each time, since once "foo" has been set, "get_foo" will not be called again.]==] local langnames local function get_langnames() langnames, get_langnames = load_data("Module:languages/canonical names"), nil return langnames end -- Combining character data used when categorising unusual characters. These resolve into two patterns, used to find -- single combining characters (i.e. character + diacritic(s)) or double combining characters (i.e. character + -- diacritic(s) + character). -- Charsets are in the format used by Unicode's UnicodeSet tool: https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp. -- Single combining characters. -- Charset: [[:M:]&[:^Canonical_Combining_Class=/^Double_/:]&[:^subhead=Grapheme joiner:]&[:^Variation_Selector=Yes:]] -- Note: concatenating hundreds of lines at once gives an error, so () are used every 150 lines to break it up into chunks. local comb_chars_single = ("\204\128-\205\142" .. -- U+0300-U+034E "\205\144-\205\155" .. -- U+0350-U+035B "\205\163-\205\175" .. -- U+0363-U+036F "\210\131-\210\137" .. -- U+0483-U+0489 "\214\145-\214\189" .. -- U+0591-U+05BD "\214\191" .. -- U+05BF "\215\129" .. -- U+05C1 "\215\130" .. -- U+05C2 "\215\132" .. -- U+05C4 "\215\133" .. -- U+05C5 "\215\135" .. -- U+05C7 "\216\144-\216\154" .. -- U+0610-U+061A "\217\139-\217\159" .. -- U+064B-U+065F "\217\176" .. -- U+0670 "\219\150-\219\156" .. -- U+06D6-U+06DC "\219\159-\219\164" .. -- U+06DF-U+06E4 "\219\167" .. -- U+06E7 "\219\168" .. -- U+06E8 "\219\170-\219\173" .. -- U+06EA-U+06ED "\220\145" .. -- U+0711 "\220\176-\221\138" .. -- U+0730-U+074A "\222\166-\222\176" .. -- U+07A6-U+07B0 "\223\171-\223\179" .. -- U+07EB-U+07F3 "\223\189" .. -- U+07FD "\224\160\150-\224\160\153" .. -- U+0816-U+0819 "\224\160\155-\224\160\163" .. -- U+081B-U+0823 "\224\160\165-\224\160\167" .. -- U+0825-U+0827 "\224\160\169-\224\160\173" .. -- U+0829-U+082D "\224\161\153-\224\161\155" .. -- U+0859-U+085B "\224\162\151-\224\162\159" .. -- U+0897-U+089F "\224\163\138-\224\163\161" .. -- U+08CA-U+08E1 "\224\163\163-\224\164\131" .. -- U+08E3-U+0903 "\224\164\186-\224\164\188" .. -- U+093A-U+093C "\224\164\190-\224\165\143" .. -- U+093E-U+094F "\224\165\145-\224\165\151" .. -- U+0951-U+0957 "\224\165\162" .. -- U+0962 "\224\165\163" .. -- U+0963 "\224\166\129-\224\166\131" .. -- U+0981-U+0983 "\224\166\188" .. -- U+09BC "\224\166\190-\224\167\132" .. -- U+09BE-U+09C4 "\224\167\135" .. -- U+09C7 "\224\167\136" .. -- U+09C8 "\224\167\139-\224\167\141" .. -- U+09CB-U+09CD "\224\167\151" .. -- U+09D7 "\224\167\162" .. -- U+09E2 "\224\167\163" .. -- U+09E3 "\224\167\190" .. -- U+09FE "\224\168\129-\224\168\131" .. -- U+0A01-U+0A03 "\224\168\188" .. -- U+0A3C "\224\168\190-\224\169\130" .. -- U+0A3E-U+0A42 "\224\169\135" .. -- U+0A47 "\224\169\136" .. -- U+0A48 "\224\169\139-\224\169\141" .. -- U+0A4B-U+0A4D "\224\169\145" .. -- U+0A51 "\224\169\176" .. -- U+0A70 "\224\169\177" .. -- U+0A71 "\224\169\181" .. -- U+0A75 "\224\170\129-\224\170\131" .. -- U+0A81-U+0A83 "\224\170\188" .. -- U+0ABC "\224\170\190-\224\171\133" .. -- U+0ABE-U+0AC5 "\224\171\135-\224\171\137" .. -- U+0AC7-U+0AC9 "\224\171\139-\224\171\141" .. -- U+0ACB-U+0ACD "\224\171\162" .. -- U+0AE2 "\224\171\163" .. -- U+0AE3 "\224\171\186-\224\171\191" .. -- U+0AFA-U+0AFF "\224\172\129-\224\172\131" .. -- U+0B01-U+0B03 "\224\172\188" .. -- U+0B3C "\224\172\190-\224\173\132" .. -- U+0B3E-U+0B44 "\224\173\135" .. -- U+0B47 "\224\173\136" .. -- U+0B48 "\224\173\139-\224\173\141" .. -- U+0B4B-U+0B4D "\224\173\149-\224\173\151" .. -- U+0B55-U+0B57 "\224\173\162" .. -- U+0B62 "\224\173\163" .. -- U+0B63 "\224\174\130" .. -- U+0B82 "\224\174\190-\224\175\130" .. -- U+0BBE-U+0BC2 "\224\175\134-\224\175\136" .. -- U+0BC6-U+0BC8 "\224\175\138-\224\175\141" .. -- U+0BCA-U+0BCD "\224\175\151" .. -- U+0BD7 "\224\176\128-\224\176\132" .. -- U+0C00-U+0C04 "\224\176\188" .. -- U+0C3C "\224\176\190-\224\177\132" .. -- U+0C3E-U+0C44 "\224\177\134-\224\177\136" .. -- U+0C46-U+0C48 "\224\177\138-\224\177\141" .. -- U+0C4A-U+0C4D "\224\177\149" .. -- U+0C55 "\224\177\150" .. -- U+0C56 "\224\177\162" .. -- U+0C62 "\224\177\163" .. -- U+0C63 "\224\178\129-\224\178\131" .. -- U+0C81-U+0C83 "\224\178\188" .. -- U+0CBC "\224\178\190-\224\179\132" .. -- U+0CBE-U+0CC4 "\224\179\134-\224\179\136" .. -- U+0CC6-U+0CC8 "\224\179\138-\224\179\141" .. -- U+0CCA-U+0CCD "\224\179\149" .. -- U+0CD5 "\224\179\150" .. -- U+0CD6 "\224\179\162" .. -- U+0CE2 "\224\179\163" .. -- U+0CE3 "\224\179\179" .. -- U+0CF3 "\224\180\128-\224\180\131" .. -- U+0D00-U+0D03 "\224\180\187" .. -- U+0D3B "\224\180\188" .. -- U+0D3C "\224\180\190-\224\181\132" .. -- U+0D3E-U+0D44 "\224\181\134-\224\181\136" .. -- U+0D46-U+0D48 "\224\181\138-\224\181\141" .. -- U+0D4A-U+0D4D "\224\181\151" .. -- U+0D57 "\224\181\162" .. -- U+0D62 "\224\181\163" .. -- U+0D63 "\224\182\129-\224\182\131" .. -- U+0D81-U+0D83 "\224\183\138" .. -- U+0DCA "\224\183\143-\224\183\148" .. -- U+0DCF-U+0DD4 "\224\183\150" .. -- U+0DD6 "\224\183\152-\224\183\159" .. -- U+0DD8-U+0DDF "\224\183\178" .. -- U+0DF2 "\224\183\179" .. -- U+0DF3 "\224\184\177" .. -- U+0E31 "\224\184\180-\224\184\186" .. -- U+0E34-U+0E3A "\224\185\135-\224\185\142" .. -- U+0E47-U+0E4E "\224\186\177" .. -- U+0EB1 "\224\186\180-\224\186\188" .. -- U+0EB4-U+0EBC "\224\187\136-\224\187\142" .. -- U+0EC8-U+0ECE "\224\188\152" .. -- U+0F18 "\224\188\153" .. -- U+0F19 "\224\188\181" .. -- U+0F35 "\224\188\183" .. -- U+0F37 "\224\188\185" .. -- U+0F39 "\224\188\190" .. -- U+0F3E "\224\188\191" .. -- U+0F3F "\224\189\177-\224\190\132" .. -- U+0F71-U+0F84 "\224\190\134" .. -- U+0F86 "\224\190\135" .. -- U+0F87 "\224\190\141-\224\190\151" .. -- U+0F8D-U+0F97 "\224\190\153-\224\190\188" .. -- U+0F99-U+0FBC "\224\191\134" .. -- U+0FC6 "\225\128\171-\225\128\190" .. -- U+102B-U+103E "\225\129\150-\225\129\153" .. -- U+1056-U+1059 "\225\129\158-\225\129\160" .. -- U+105E-U+1060 "\225\129\162-\225\129\164" .. -- U+1062-U+1064 "\225\129\167-\225\129\173" .. -- U+1067-U+106D "\225\129\177-\225\129\180" .. -- U+1071-U+1074 "\225\130\130-\225\130\141" .. -- U+1082-U+108D "\225\130\143" .. -- U+108F "\225\130\154-\225\130\157" .. -- U+109A-U+109D "\225\141\157-\225\141\159" .. -- U+135D-U+135F "\225\156\146-\225\156\149" .. -- U+1712-U+1715 "\225\156\178-\225\156\180" .. -- U+1732-U+1734 "\225\157\146" .. -- U+1752 "\225\157\147" .. -- U+1753 "\225\157\178" .. -- U+1772 "\225\157\179" .. -- U+1773 "\225\158\180-\225\159\147") .. -- U+17B4-U+17D3 ("\225\159\157" .. -- U+17DD "\225\162\133" .. -- U+1885 "\225\162\134" .. -- U+1886 "\225\162\169" .. -- U+18A9 "\225\164\160-\225\164\171" .. -- U+1920-U+192B "\225\164\176-\225\164\187" .. -- U+1930-U+193B "\225\168\151-\225\168\155" .. -- U+1A17-U+1A1B "\225\169\149-\225\169\158" .. -- U+1A55-U+1A5E "\225\169\160-\225\169\188" .. -- U+1A60-U+1A7C "\225\169\191" .. -- U+1A7F "\225\170\176-\225\171\142" .. -- U+1AB0-U+1ACE "\225\172\128-\225\172\132" .. -- U+1B00-U+1B04 "\225\172\180-\225\173\132" .. -- U+1B34-U+1B44 "\225\173\171-\225\173\179" .. -- U+1B6B-U+1B73 "\225\174\128-\225\174\130" .. -- U+1B80-U+1B82 "\225\174\161-\225\174\173" .. -- U+1BA1-U+1BAD "\225\175\166-\225\175\179" .. -- U+1BE6-U+1BF3 "\225\176\164-\225\176\183" .. -- U+1C24-U+1C37 "\225\179\144-\225\179\146" .. -- U+1CD0-U+1CD2 "\225\179\148-\225\179\168" .. -- U+1CD4-U+1CE8 "\225\179\173" .. -- U+1CED "\225\179\180" .. -- U+1CF4 "\225\179\183-\225\179\185" .. -- U+1CF7-U+1CF9 "\225\183\128-\225\183\140" .. -- U+1DC0-U+1DCC "\225\183\142-\225\183\187" .. -- U+1DCE-U+1DFB "\225\183\189-\225\183\191" .. -- U+1DFD-U+1DFF "\226\131\144-\226\131\176" .. -- U+20D0-U+20F0 "\226\179\175-\226\179\177" .. -- U+2CEF-U+2CF1 "\226\181\191" .. -- U+2D7F "\226\183\160-\226\183\191" .. -- U+2DE0-U+2DFF "\227\128\170-\227\128\175" .. -- U+302A-U+302F "\227\130\153" .. -- U+3099 "\227\130\154" .. -- U+309A "\234\153\175-\234\153\178" .. -- U+A66F-U+A672 "\234\153\180-\234\153\189" .. -- U+A674-U+A67D "\234\154\158" .. -- U+A69E "\234\154\159" .. -- U+A69F "\234\155\176" .. -- U+A6F0 "\234\155\177" .. -- U+A6F1 "\234\160\130" .. -- U+A802 "\234\160\134" .. -- U+A806 "\234\160\139" .. -- U+A80B "\234\160\163-\234\160\167" .. -- U+A823-U+A827 "\234\160\172" .. -- U+A82C "\234\162\128" .. -- U+A880 "\234\162\129" .. -- U+A881 "\234\162\180-\234\163\133" .. -- U+A8B4-U+A8C5 "\234\163\160-\234\163\177" .. -- U+A8E0-U+A8F1 "\234\163\191" .. -- U+A8FF "\234\164\166-\234\164\173" .. -- U+A926-U+A92D "\234\165\135-\234\165\147" .. -- U+A947-U+A953 "\234\166\128-\234\166\131" .. -- U+A980-U+A983 "\234\166\179-\234\167\128" .. -- U+A9B3-U+A9C0 "\234\167\165" .. -- U+A9E5 "\234\168\169-\234\168\182" .. -- U+AA29-U+AA36 "\234\169\131" .. -- U+AA43 "\234\169\140" .. -- U+AA4C "\234\169\141" .. -- U+AA4D "\234\169\187-\234\169\189" .. -- U+AA7B-U+AA7D "\234\170\176" .. -- U+AAB0 "\234\170\178-\234\170\180" .. -- U+AAB2-U+AAB4 "\234\170\183" .. -- U+AAB7 "\234\170\184" .. -- U+AAB8 "\234\170\190" .. -- U+AABE "\234\170\191" .. -- U+AABF "\234\171\129" .. -- U+AAC1 "\234\171\171-\234\171\175" .. -- U+AAEB-U+AAEF "\234\171\181" .. -- U+AAF5 "\234\171\182" .. -- U+AAF6 "\234\175\163-\234\175\170" .. -- U+ABE3-U+ABEA "\234\175\172" .. -- U+ABEC "\234\175\173" .. -- U+ABED "\239\172\158" .. -- U+FB1E "\239\184\160-\239\184\175" .. -- U+FE20-U+FE2F "\240\144\135\189" .. -- U+101FD "\240\144\139\160" .. -- U+102E0 "\240\144\141\182-\240\144\141\186" .. -- U+10376-U+1037A "\240\144\168\129-\240\144\168\131" .. -- U+10A01-U+10A03 "\240\144\168\133" .. -- U+10A05 "\240\144\168\134" .. -- U+10A06 "\240\144\168\140-\240\144\168\143" .. -- U+10A0C-U+10A0F "\240\144\168\184-\240\144\168\186" .. -- U+10A38-U+10A3A "\240\144\168\191" .. -- U+10A3F "\240\144\171\165" .. -- U+10AE5 "\240\144\171\166" .. -- U+10AE6 "\240\144\180\164-\240\144\180\167" .. -- U+10D24-U+10D27 "\240\144\181\169-\240\144\181\173" .. -- U+10D69-U+10D6D "\240\144\186\171" .. -- U+10EAB "\240\144\186\172" .. -- U+10EAC "\240\144\187\188-\240\144\187\191" .. -- U+10EFC-U+10EFF "\240\144\189\134-\240\144\189\144" .. -- U+10F46-U+10F50 "\240\144\190\130-\240\144\190\133" .. -- U+10F82-U+10F85 "\240\145\128\128-\240\145\128\130" .. -- U+11000-U+11002 "\240\145\128\184-\240\145\129\134" .. -- U+11038-U+11046 "\240\145\129\176" .. -- U+11070 "\240\145\129\179" .. -- U+11073 "\240\145\129\180" .. -- U+11074 "\240\145\129\191-\240\145\130\130" .. -- U+1107F-U+11082 "\240\145\130\176-\240\145\130\186" .. -- U+110B0-U+110BA "\240\145\131\130" .. -- U+110C2 "\240\145\132\128-\240\145\132\130" .. -- U+11100-U+11102 "\240\145\132\167-\240\145\132\180" .. -- U+11127-U+11134 "\240\145\133\133" .. -- U+11145 "\240\145\133\134" .. -- U+11146 "\240\145\133\179" .. -- U+11173 "\240\145\134\128-\240\145\134\130" .. -- U+11180-U+11182 "\240\145\134\179-\240\145\135\128" .. -- U+111B3-U+111C0 "\240\145\135\137-\240\145\135\140" .. -- U+111C9-U+111CC "\240\145\135\142" .. -- U+111CE "\240\145\135\143" .. -- U+111CF "\240\145\136\172-\240\145\136\183" .. -- U+1122C-U+11237 "\240\145\136\190" .. -- U+1123E "\240\145\137\129" .. -- U+11241 "\240\145\139\159-\240\145\139\170" .. -- U+112DF-U+112EA "\240\145\140\128-\240\145\140\131" .. -- U+11300-U+11303 "\240\145\140\187" .. -- U+1133B "\240\145\140\188" .. -- U+1133C "\240\145\140\190-\240\145\141\132" .. -- U+1133E-U+11344 "\240\145\141\135" .. -- U+11347 "\240\145\141\136" .. -- U+11348 "\240\145\141\139-\240\145\141\141" .. -- U+1134B-U+1134D "\240\145\141\151" .. -- U+11357 "\240\145\141\162" .. -- U+11362 "\240\145\141\163" .. -- U+11363 "\240\145\141\166-\240\145\141\172" .. -- U+11366-U+1136C "\240\145\141\176-\240\145\141\180" .. -- U+11370-U+11374 "\240\145\142\184-\240\145\143\128" .. -- U+113B8-U+113C0 "\240\145\143\130" .. -- U+113C2 "\240\145\143\133" .. -- U+113C5 "\240\145\143\135-\240\145\143\138" .. -- U+113C7-U+113CA "\240\145\143\140-\240\145\143\144" .. -- U+113CC-U+113D0 "\240\145\143\146" .. -- U+113D2 "\240\145\143\161" .. -- U+113E1 "\240\145\143\162" .. -- U+113E2 "\240\145\144\181-\240\145\145\134" .. -- U+11435-U+11446 "\240\145\145\158" .. -- U+1145E "\240\145\146\176-\240\145\147\131" .. -- U+114B0-U+114C3 "\240\145\150\175-\240\145\150\181" .. -- U+115AF-U+115B5 "\240\145\150\184-\240\145\151\128" .. -- U+115B8-U+115C0 "\240\145\151\156" .. -- U+115DC "\240\145\151\157" .. -- U+115DD "\240\145\152\176-\240\145\153\128" .. -- U+11630-U+11640 "\240\145\154\171-\240\145\154\183" .. -- U+116AB-U+116B7 "\240\145\156\157-\240\145\156\171" .. -- U+1171D-U+1172B "\240\145\160\172-\240\145\160\186" .. -- U+1182C-U+1183A "\240\145\164\176-\240\145\164\181" .. -- U+11930-U+11935 "\240\145\164\183" .. -- U+11937 "\240\145\164\184" .. -- U+11938 "\240\145\164\187-\240\145\164\190" .. -- U+1193B-U+1193E "\240\145\165\128") .. -- U+11940 ("\240\145\165\130" .. -- U+11942 "\240\145\165\131" .. -- U+11943 "\240\145\167\145-\240\145\167\151" .. -- U+119D1-U+119D7 "\240\145\167\154-\240\145\167\160" .. -- U+119DA-U+119E0 "\240\145\167\164" .. -- U+119E4 "\240\145\168\129-\240\145\168\138" .. -- U+11A01-U+11A0A "\240\145\168\179-\240\145\168\185" .. -- U+11A33-U+11A39 "\240\145\168\187-\240\145\168\190" .. -- U+11A3B-U+11A3E "\240\145\169\135" .. -- U+11A47 "\240\145\169\145-\240\145\169\155" .. -- U+11A51-U+11A5B "\240\145\170\138-\240\145\170\153" .. -- U+11A8A-U+11A99 "\240\145\176\175-\240\145\176\182" .. -- U+11C2F-U+11C36 "\240\145\176\184-\240\145\176\191" .. -- U+11C38-U+11C3F "\240\145\178\146-\240\145\178\167" .. -- U+11C92-U+11CA7 "\240\145\178\169-\240\145\178\182" .. -- U+11CA9-U+11CB6 "\240\145\180\177-\240\145\180\182" .. -- U+11D31-U+11D36 "\240\145\180\186" .. -- U+11D3A "\240\145\180\188" .. -- U+11D3C "\240\145\180\189" .. -- U+11D3D "\240\145\180\191-\240\145\181\133" .. -- U+11D3F-U+11D45 "\240\145\181\135" .. -- U+11D47 "\240\145\182\138-\240\145\182\142" .. -- U+11D8A-U+11D8E "\240\145\182\144" .. -- U+11D90 "\240\145\182\145" .. -- U+11D91 "\240\145\182\147-\240\145\182\151" .. -- U+11D93-U+11D97 "\240\145\187\179-\240\145\187\182" .. -- U+11EF3-U+11EF6 "\240\145\188\128" .. -- U+11F00 "\240\145\188\129" .. -- U+11F01 "\240\145\188\131" .. -- U+11F03 "\240\145\188\180-\240\145\188\186" .. -- U+11F34-U+11F3A "\240\145\188\190-\240\145\189\130" .. -- U+11F3E-U+11F42 "\240\145\189\154" .. -- U+11F5A "\240\147\145\128" .. -- U+13440 "\240\147\145\135-\240\147\145\149" .. -- U+13447-U+13455 "\240\150\132\158-\240\150\132\175" .. -- U+1611E-U+1612F "\240\150\171\176-\240\150\171\180" .. -- U+16AF0-U+16AF4 "\240\150\172\176-\240\150\172\182" .. -- U+16B30-U+16B36 "\240\150\189\143" .. -- U+16F4F "\240\150\189\145-\240\150\190\135" .. -- U+16F51-U+16F87 "\240\150\190\143-\240\150\190\146" .. -- U+16F8F-U+16F92 "\240\150\191\164" .. -- U+16FE4 "\240\150\191\176" .. -- U+16FF0 "\240\150\191\177" .. -- U+16FF1 "\240\155\178\157" .. -- U+1BC9D "\240\155\178\158" .. -- U+1BC9E "\240\156\188\128-\240\156\188\173" .. -- U+1CF00-U+1CF2D "\240\156\188\176-\240\156\189\134" .. -- U+1CF30-U+1CF46 "\240\157\133\165-\240\157\133\169" .. -- U+1D165-U+1D169 "\240\157\133\173-\240\157\133\178" .. -- U+1D16D-U+1D172 "\240\157\133\187-\240\157\134\130" .. -- U+1D17B-U+1D182 "\240\157\134\133-\240\157\134\139" .. -- U+1D185-U+1D18B "\240\157\134\170-\240\157\134\173" .. -- U+1D1AA-U+1D1AD "\240\157\137\130-\240\157\137\132" .. -- U+1D242-U+1D244 "\240\157\168\128-\240\157\168\182" .. -- U+1DA00-U+1DA36 "\240\157\168\187-\240\157\169\172" .. -- U+1DA3B-U+1DA6C "\240\157\169\181" .. -- U+1DA75 "\240\157\170\132" .. -- U+1DA84 "\240\157\170\155-\240\157\170\159" .. -- U+1DA9B-U+1DA9F "\240\157\170\161-\240\157\170\175" .. -- U+1DAA1-U+1DAAF "\240\158\128\128-\240\158\128\134" .. -- U+1E000-U+1E006 "\240\158\128\136-\240\158\128\152" .. -- U+1E008-U+1E018 "\240\158\128\155-\240\158\128\161" .. -- U+1E01B-U+1E021 "\240\158\128\163" .. -- U+1E023 "\240\158\128\164" .. -- U+1E024 "\240\158\128\166-\240\158\128\170" .. -- U+1E026-U+1E02A "\240\158\130\143" .. -- U+1E08F "\240\158\132\176-\240\158\132\182" .. -- U+1E130-U+1E136 "\240\158\138\174" .. -- U+1E2AE "\240\158\139\172-\240\158\139\175" .. -- U+1E2EC-U+1E2EF "\240\158\147\172-\240\158\147\175" .. -- U+1E4EC-U+1E4EF "\240\158\151\174" .. -- U+1E5EE "\240\158\151\175" .. -- U+1E5EF "\240\158\163\144-\240\158\163\150" .. -- U+1E8D0-U+1E8D6 "\240\158\165\132-\240\158\165\138") -- U+1E944-U+1E94A -- Double combining characters. -- Charset: [[:M:]&[:Canonical_Combining_Class=/^Double_/:]&[:^subhead=Grapheme joiner:]&[:^Variation_Selector=Yes:]] local comb_chars_double = "\205\156-\205\162" .. -- U+035C-U+0362 "\225\183\141" .. -- U+1DCD "\225\183\188" -- U+1DFC -- Variation selectors etc.; separated out so that we don't get categories for them. -- Charset: [[:M:]&[[:subhead=Grapheme joiner:][:Variation_Selector=Yes:]]]. local comb_chars_other = "\205\143" .. -- U+034F "\225\160\139-\225\160\141" .. -- U+180B-U+180D "\225\160\143" .. -- U+180F "\239\184\128-\239\184\143" .. -- U+FE00-U+FE0F "\243\160\132\128-\243\160\135\175" -- U+E0100-U+E01EF local comb_chars_all = comb_chars_single .. comb_chars_double .. comb_chars_other local comb_chars = { combined_single = "[^" .. comb_chars_all .. "][" .. comb_chars_single .. comb_chars_other .. "]+%f[^" .. comb_chars_all .. "]", combined_double = "[^" .. comb_chars_all .. "][" .. comb_chars_single .. comb_chars_other .. "]*[" .. comb_chars_double .. "]+[" .. comb_chars_all .. "]*.[" .. comb_chars_single .. comb_chars_other .. "]*", diacritics_single = "[" .. comb_chars_single .. "]", diacritics_double = "[" .. comb_chars_double .. "]", diacritics_all = "[" .. comb_chars_all .. "]" } -- Somewhat curated list from https://unicode.org/Public/emoji/16.0/emoji-sequences.txt. -- NOTE: There are lots more emoji sequences involving non-emoji Plane 0 symbols followed by 0xFE0F, which we don't -- (yet?) handle. local emoji_chars = "\226\140\154" .. -- U+231A (⌚) "\226\140\155" .. -- U+231B (⌛) "\226\140\168" .. -- U+2328 (⌨) "\226\143\143" .. -- U+23CF (⏏) "\226\143\169-\226\143\179" .. -- U+23E9-U+23F3 (⏩-⏳) "\226\143\184-\226\143\186" .. -- U+23F8-U+23FA (⏸-⏺) "\226\150\170" .. -- U+25AA (▪) "\226\150\171" .. -- U+25AB (▫) "\226\150\182" .. -- U+25B6 (▶) "\226\151\128" .. -- U+25C0 (◀) "\226\151\187-\226\151\190" .. -- U+25FB-U+25FE (◻-◾) "\226\152\128-\226\152\132" .. -- U+2600-U+2604 (☀-☄) "\226\152\142" .. -- U+260E (☎) "\226\152\145" .. -- U+2611 (☑) "\226\152\148" .. -- U+2614 (☔) "\226\152\149" .. -- U+2615 (☕) "\226\152\152" .. -- U+2618 (☘) "\226\152\157" .. -- U+261D (☝) "\226\152\160" .. -- U+2620 (☠) "\226\152\162" .. -- U+2622 (☢) "\226\152\163" .. -- U+2623 (☣) "\226\152\166" .. -- U+2626 (☦) "\226\152\170" .. -- U+262A (☪) "\226\152\174" .. -- U+262E (☮) "\226\152\175" .. -- U+262F (☯) "\226\152\184-\226\152\186" .. -- U+2638-U+263A (☸-☺) "\226\153\136-\226\153\147" .. -- U+2648-U+2653 (♈-♓) "\226\153\159" .. -- U+265F (♟) "\226\153\160" .. -- U+2660 (♠) "\226\153\163" .. -- U+2663 (♣) "\226\153\165" .. -- U+2665 (♥) "\226\153\166" .. -- U+2666 (♦) "\226\153\168" .. -- U+2668 (♨) "\226\153\187" .. -- U+267B (♻) "\226\153\190" .. -- U+267E (♾) "\226\153\191" .. -- U+267F (♿) "\226\154\146-\226\154\151" .. -- U+2692-U+2697 (⚒-⚗) "\226\154\153" .. -- U+2699 (⚙) "\226\154\155" .. -- U+269B (⚛) "\226\154\156" .. -- U+269C (⚜) "\226\154\160" .. -- U+26A0 (⚠) "\226\154\161" .. -- U+26A1 (⚡) "\226\154\170" .. -- U+26AA (⚪) "\226\154\171" .. -- U+26AB (⚫) "\226\154\176" .. -- U+26B0 (⚰) "\226\154\177" .. -- U+26B1 (⚱) "\226\154\189" .. -- U+26BD (⚽) "\226\154\190" .. -- U+26BE (⚾) "\226\155\132" .. -- U+26C4 (⛄) "\226\155\133" .. -- U+26C5 (⛅) "\226\155\136" .. -- U+26C8 (⛈) "\226\155\142" .. -- U+26CE (⛎) "\226\155\143" .. -- U+26CF (⛏) "\226\155\145" .. -- U+26D1 (⛑) "\226\155\147" .. -- U+26D3 (⛓) "\226\155\148" .. -- U+26D4 (⛔) "\226\155\169" .. -- U+26E9 (⛩) "\226\155\170" .. -- U+26EA (⛪) "\226\155\176-\226\155\181" .. -- U+26F0-U+26F5 (⛰-⛵) "\226\155\183-\226\155\186" .. -- U+26F7-U+26FA (⛷-⛺) "\226\155\189" .. -- U+26FD (⛽) "\226\156\130" .. -- U+2702 (✂) "\226\156\133" .. -- U+2705 (✅) "\226\156\136-\226\156\141" .. -- U+2708-U+270D (✈-✍) "\226\156\143" .. -- U+270F (✏) "\226\156\146" .. -- U+2712 (✒) "\226\156\148" .. -- U+2714 (✔) "\226\156\150" .. -- U+2716 (✖) "\226\156\157" .. -- U+271D (✝) "\226\156\161" .. -- U+2721 (✡) "\226\156\168" .. -- U+2728 (✨) "\226\156\179" .. -- U+2733 (✳) "\226\156\180" .. -- U+2734 (✴) "\226\157\132" .. -- U+2744 (❄) "\226\157\135" .. -- U+2747 (❇) "\226\157\140" .. -- U+274C (❌) "\226\157\142" .. -- U+274E (❎) "\226\157\147-\226\157\149" .. -- U+2753-U+2755 (❓-❕) "\226\157\151" .. -- U+2757 (❗) "\226\157\163" .. -- U+2763 (❣) "\226\157\164" .. -- U+2764 (❤) "\226\158\149-\226\158\151" .. -- U+2795-U+2797 (➕-➗) "\226\158\161" .. -- U+27A1 (➡) "\226\158\176" .. -- U+27B0 (➰) "\226\158\191" .. -- U+27BF (➿) "\226\164\180" .. -- U+2934 (⤴) "\226\164\181" .. -- U+2935 (⤵) "\226\172\133-\226\172\135" .. -- U+2B05-U+2B07 (⬅-⬇) "\226\172\155" .. -- U+2B1B (⬛) "\226\172\156" .. -- U+2B1C (⬜) "\226\173\144" .. -- U+2B50 (⭐) "\226\173\149" .. -- U+2B55 (⭕) "\227\128\176" .. -- U+3030 (〰) "\227\128\189" .. -- U+303D (〽) "\227\138\151" .. -- U+3297 (㊗) "\227\138\153" .. -- U+3299 (㊙) "\240\159\128\132" .. -- U+1F004 (🀄) "\240\159\131\143" .. -- U+1F0CF (🃏) "\240\159\133\176" .. -- U+1F170 (🅰) "\240\159\133\177" .. -- U+1F171 (🅱) "\240\159\133\190" .. -- U+1F17E (🅾) "\240\159\133\191" .. -- U+1F17F (🅿) "\240\159\134\142" .. -- U+1F18E (🆎) "\240\159\134\145-\240\159\134\154" .. -- U+1F191-U+1F19A (🆑-🆚) "\240\159\136\129" .. -- U+1F201 (🈁) "\240\159\136\130" .. -- U+1F202 (🈂) "\240\159\136\154" .. -- U+1F21A (🈚) "\240\159\136\175" .. -- U+1F22F (🈯) "\240\159\136\178-\240\159\136\186" .. -- U+1F232-U+1F23A (🈲-🈺) "\240\159\137\144" .. -- U+1F250 (🉐) "\240\159\137\145" .. -- U+1F251 (🉑) "\240\159\140\128-\240\159\153\143" .. -- U+1F300-U+1F64F (🌀-🙏) "\240\159\154\128-\240\159\155\151" .. -- U+1F680-U+1F6D7 (🚀-🛗) "\240\159\155\156-\240\159\155\172" .. -- U+1F6DC-U+1F6EC (🛜-🛬) "\240\159\155\176-\240\159\155\188" .. -- U+1F6F0-U+1F6FC (🛰-🛼) "\240\159\159\160-\240\159\159\171" .. -- U+1F7E0-U+1F7EB (🟠-🟫) "\240\159\159\176" .. -- U+1F7F0 (🟰) "\240\159\164\140-\240\159\169\147" .. -- U+1F90C-U+1FA53 (🤌-🩓) "\240\159\169\160-\240\159\169\173" .. -- U+1FA60-U+1FA6D (🩠-🩭) "\240\159\169\176-\240\159\169\188" .. -- U+1FA70-U+1FA7C (🩰-🩼) "\240\159\170\128-\240\159\170\137" .. -- U+1FA80-U+1FA89 (🪀-🪉) "\240\159\170\143-\240\159\171\134" .. -- U+1FA8F-U+1FAC6 (🪏-🫆) "\240\159\171\142-\240\159\171\156" .. -- U+1FACE-U+1FADC (🫎-🫜) "\240\159\171\159-\240\159\171\169" .. -- U+1FADF-U+1FAE9 (🫟-🫩) "\240\159\171\176-\240\159\171\184" -- U+1FAF0-U+1FAF8 (🫰-🫸) local unsupported_characters local function get_unsupported_characters() unsupported_characters, get_unsupported_characters = {}, nil for k, v in pairs(load_data("Module:links/data").unsupported_characters) do unsupported_characters[v] = k end return unsupported_characters end -- The list of unsupported titles and invert it (so the keys are pagenames and values are canonical titles). local unsupported_titles local function get_unsupported_titles() unsupported_titles, get_unsupported_titles = {}, nil for k, v in pairs(load_data("Module:links/data").unsupported_titles) do unsupported_titles[v] = k end return unsupported_titles end --[==[ Given a pagename (or {nil} for the current page), create and return a data structure describing the page. The returned object includes the following fields: * `comb_chars`: A table containing various Lua character class patterns for different types of combined characters (those that decompose into multiple characters in the NFD decomposition). The patterns are meant to be used with {mw.ustring.find()}. The keys are: ** `single`: Single combining characters (character + diacritic), without surrounding brackets; ** `double`: Double combining characters (character + diacritic + character), without surrounding brackets; ** `vs`: Variation selectors, without surrounding brackets; ** `all`: Concatenation of `single` + `double` + `vs`, without surrounding brackets; ** `diacritics_single`: Like `single` but with surrounding brackets; ** `diacritics_double`: Like `double` but with surrounding brackets; ** `diacritics_all`: Like `all` but with surrounding brackets; ** `combined_single`: Lua pattern for matching a spacing character followed by one or more single combining characters; ** `combined_double`: Lua pattern for matching a combination of two spacing characters separated by one or more double combining characters, possibly also with single combining characters; * `emoji_pattern`: A Lua character class pattern (including surrounding brackets) that matches emojis. Meant to be used with {mw.ustring.find()}. * `L2_list`: Ordered list of L2 headings on the page, with the extra key `n` that gives the length of the list. * `L2_sections`: Lookup table of L2 headings on the page, where the key is the section number assigned by the preprocessor, and the value is the L2 heading name. Once an invocation has got its actual section number from get_current_L2 in [[Module:pages]], it can use this table to determine its parent L2. TODO: We could expand this to include subsections, to check POS headings are correct etc. * `unsupported_titles`: Map from pagenames to canonical titles for unsupported-title pages. * `namespace`: Namespace of the pagename. * `ns`: Namespace table for the page from mw.site.namespaces (TODO: merge with `namespace` above). * `full_raw_pagename`: Full version of the '''RAW''' pagename (i.e. unsupported-title pages aren't canonicalized); including the namespace and the root (portion before the slash). * `pagename`: Canonicalized subpage portion of the pagename (unsupported-title pages are canonicalized). * `decompose_pagename`: Equivalent of `pagename` in NFD decomposition. * `pagename_len`: Length of `pagename` in Unicode chars, where combinations of spacing character + decomposed diacritic are treated as single characters. * `explode_pagename`: Set of characters found in `pagename`. The keys are characters (where combinations of spacing character + decomposed diacritic are treated as single characters). * `encoded_pagename`: FIXME: Document me. * `pagename_defaultsort`: FIXME: Document me. * `raw_defaultsort`: FIXME: Document me. * `wikitext_topic_cat`: FIXME: Document me. * `wikitext_langname_cat`: FIXME: Document me. ]==] function export.process_page(pagename) local data = { comb_chars = comb_chars, emoji_pattern = "[" .. emoji_chars .. "]", unsupported_titles = unsupported_titles or get_unsupported_titles() } local cats = {} data.cats = cats -- We cannot store `raw_title` in `data` because it contains a metatable. local raw_title local function bad_pagename() if not pagename then error("Internal error: Something wrong, `data.pagename` not specified but current title contains illegal characters") else error(format("Bad value for `data.pagename`: '%s', which must not contain illegal characters", pagename)) end end if pagename then -- for testing, doc pages, etc. raw_title = new_title(pagename) if not raw_title then bad_pagename() end else raw_title = mw.title.getCurrentTitle() end local nsText = raw_title.nsText data.namespace = nsText data.ns = mw.site.namespaces[raw_title.namespace] local full_raw_pagename = raw_title.fullText data.full_raw_pagename = full_raw_pagename local frame = mw.getCurrentFrame() -- WARNING: `content` may be nil, e.g. if we're substing a template like {{ja-new}} on a not-yet-created page -- or if the module specifies the subpage as `data.pagename` (which many modules do) and we're in an Appendix -- or other non-mainspace page. We used to make the latter an error but there are too many modules that do it, -- and substing on a nonexistent page is totally legit, and we don't actually need to be able to access the -- content of the page. local content = raw_title:getContent() -- Get the pagename. pagename = gsub(raw_title.subpageText, "^Unsupported titles/(.+)", function(m) insert(cats, "Unsupported titles") local title = (unsupported_titles or get_unsupported_titles())[m] if title then return title end -- Substitute pairs of "`". Those not used for escaping should be escaped as "`grave`", but might not be, -- so if a pair don't form a match, the closing "`" should become the opening "`" of the next match attempt. -- This has to be done manually, instead of using gsub. local open_pos = find(m, "`") if not open_pos then return m end title = {sub(m, 1, open_pos - 1)} while true do local close_pos = find(m, "`", open_pos + 1) if not close_pos then -- Add "`" plus any remaining characters. insert(title, sub(m, open_pos)) break end local escape = sub(m, open_pos, close_pos) local ch = (unsupported_characters or get_unsupported_characters())[escape] -- Match found, so substitute the character and move to the first "`" after the match if found, or -- otherwise return. if ch then insert(title, ch) local nxt_pos = close_pos + 1 open_pos = find(m, "`", nxt_pos) -- Add any characters between the match and the next "`" or end. if open_pos then insert(title, sub(m, nxt_pos, open_pos - 1)) else insert(title, sub(m, nxt_pos)) break end -- Match not found, so make the closing "`" the opening "`" of the next attempt. else -- Add the failed match, except for the closing "`". insert(title, sub(m, open_pos, close_pos - 1)) open_pos = close_pos end end return concat(title) end) -- Save pagename, as local variable will be destructively modified. data.pagename = pagename -- Decompose the pagename in Unicode normalization form D. data.decompose_pagename = toNFD(pagename) -- Explode the current page name into a character table, taking decomposed combining characters into account. local explode_pagename = {} local pagename_len = 0 local function explode(char) explode_pagename[char] = true pagename_len = pagename_len + 1 return "" end pagename = ugsub(pagename, comb_chars.combined_double, explode) pagename = gsub(ugsub(pagename, comb_chars.combined_single, explode), ".[\128-\191]*", explode) data.explode_pagename = explode_pagename data.pagename_len = pagename_len -- Generate DEFAULTSORT. data.encoded_pagename = encode_entities(data.pagename) data.pagename_defaultsort = get_lang("mul"):makeSortKey(data.encoded_pagename) frame:callParserFunction("DEFAULTSORT", data.pagename_defaultsort) data.raw_defaultsort = uupper(raw_title.text) -- Make `L2_list` and `L2_sections`, note raw wikitext use of {{DEFAULTSORT:}} and {{DISPLAYTITLE:}}, then add categories if any unwanted L1 headings are found, the L2 headings are in the wrong order, or they don't match a canonical language name. -- Note: HTML comments shouldn't be removed from `content` until after this step, as they can affect the result. do local L2_list, L2_list_len, L2_sections, sort_cache, prev, rc = {}, 0, {}, {} local new_cats, L2_wrong_order = {} local function get_weight(L2) if L2 == "Translingual" then return "\1" elseif L2 == "English" then return "\2" elseif match(L2, "^[%z\1-\b\14-!#-&(-,.-\127]+$") then return L2 end local weight = sort_cache[L2] if weight then return weight end weight = toNFC(ugsub(ugsub(toNFD(L2), "[" .. comb_chars_all .. "'\"ʻʼ]+", ""), "[%s%-]+", " ")) sort_cache[L2] = weight return weight end local function handle_heading(heading) local level = heading.level if level > 2 then return end local name = heading:get_name() -- heading:get_name() will return nil if there are any newline characters in the preprocessed heading name (e.g. from an expanded template). In such cases, the preprocessor section count still increments (since it's calculated pre-expansion), but the heading will fail, so the L2 count shouldn't be incremented. if name == nil then return end L2_list_len = L2_list_len + 1 L2_list[L2_list_len] = name L2_sections[heading.section] = name -- Also add any L1s, since they terminate the preceding L2, but add a maintenance category since it's probably a mistake. if level == 1 then new_cats["Pages with unwanted L1 headings"] = true end -- Check the heading is in the right order. -- FIXME: we need a more sophisticated sorting method which handles non-diacritic special characters (e.g. Magɨ). if prev and not ( L2_wrong_order or string_compare(get_weight(prev), get_weight(name)) ) then new_cats["Pages with language headings in the wrong order"] = true L2_wrong_order = true end -- Check it's a canonical language name. if not (langnames or get_langnames())[name] then new_cats["Pages with nonstandard language headings"] = true end prev = name end local function handle_template(template) local name = template:get_name() if name == "DEFAULTSORT:" then new_cats["Pages with DEFAULTSORT conflicts"] = true elseif name == "DISPLAYTITLE:" then new_cats["Pages with DISPLAYTITLE conflicts"] = true elseif name == "reconstructed" then rc = true end end if content then for node in parse(content):iterate_nodes() do local node_class = class_else_type(node) if node_class == "heading" then handle_heading(node) elseif node_class == "template" then handle_template(node) elseif node_class == "parameter" then new_cats["Pages with raw triple-brace template parameters"] = true end end end L2_list.n = L2_list_len data.L2_list = L2_list data.L2_sections = L2_sections insert(cats, get_category("Pages with entries")) insert(cats, get_category(format("Pages with %s entr%s", L2_list_len, L2_list_len == 1 and "y" or "ies"))) for cat in pairs(new_cats) do insert(cats, get_category(cat)) end if nsText == "Reconstruction" and not rc then local langname = match(full_raw_pagename, "^Reconstruction:([^/]+)/.") if langname then insert(cats, get_category(langname .. " entries missing Template:reconstructed")) end end end ------ 4. Parse page for maintenance categories. ------ -- Use of tab characters. if content and find(content, "\t", 1, true) then insert(cats, get_category("Pages with tab characters")) end -- Unencoded character(s) in title. local IDS = list_to_set{"⿰", "⿱", "⿲", "⿳", "⿴", "⿵", "⿶", "⿷", "⿸", "⿹", "⿺", "⿻", "⿼", "⿽", "⿾", "⿿", "㇯"} for char in pairs(explode_pagename) do if IDS[char] and char ~= data.pagename then insert(cats, "Terms containing unencoded characters") break end end -- Raw wikitext use of a topic or langname category. Also check if any raw sortkeys have been used. do local wikitext_topic_cat = {} local wikitext_langname_cat = {} local raw_sortkey -- If a raw sortkey has been found, add it to the relevant table. -- If there's no table (or the index is just `true`), create one first. local function add_cat_table(t, lang, sortkey) local t_lang = t[lang] if not sortkey then if not t_lang then t[lang] = true end return elseif t_lang == true or not t_lang then t_lang = {} t[lang] = t_lang end t_lang[uupper(decode_entities(sortkey))] = true end local function process_category(content, cat, colon, nxt) local pipe = find(cat, "|", colon + 1, true) -- Categories cannot end "|]]". if pipe == #cat then return end local title = new_title(pipe and sub(cat, 1, pipe - 1) or cat) if not (title and title.namespace == 14) then return end -- Get the sortkey (if any), then canonicalize category title. local sortkey = pipe and sub(cat, pipe + 1) or nil cat = title.text if sortkey then raw_sortkey = true -- If the sortkey contains "[", the first "]" of a final "]]]" is treated as part of the sortkey. if find(sortkey, "[", 1, true) and sub(content, nxt, nxt) == "]" then sortkey = sortkey .. "]" end end local code = match(cat, "^([%w%-.]+):") if code then add_cat_table(wikitext_topic_cat, code, sortkey) return end -- Split by word. cat = split(cat, " ", true, true) -- Formerly we looked for the language name anywhere in the category. This is simply wrong -- because there are no categories like 'Alsatian French lemmas' (only L2 languages -- have langname categories), but doing it this way wrongly catches things like [[Category:Shapsug Adyghe]] -- in [[Category:Adyghe entries with language name categories using raw markup]]. local n = #cat - 1 if n <= 0 then return end -- Go from longest to shortest and stop once we've found a language name. Going from shortest -- to longest or not stopping after a match risks falsely matching (e.g.) German Low German -- categories as German. repeat local name = concat(cat, " ", 1, n) if (langnames or get_langnames())[name] then add_cat_table(wikitext_langname_cat, name, sortkey) return end n = n - 1 until n == 0 end if content then -- Remove comments, then iterate over category links. content = remove_comments(content, "BOTH") local head = find(content, "[[", 1, true) while head do local close = find(content, "]]", head + 2, true) if not close then break end -- Make sure there are no intervening "[[" between head and close. local open = find(content, "[[", head + 2, true) while open and open < close do head = open open = find(content, "[[", head + 2, true) end local cat = sub(content, head + 2, close - 1) -- Locate the colon, and weed out most unwanted links. "[ _\128-\244]*" catches valid whitespace, and ensures any category links using the colon trick are ignored. We match all non-ASCII characters, as there could be multibyte spaces, and mw.title.new will filter out any remaining false-positives; this is a lot faster than running mw.title.new on every link. local colon = match(cat, "^[ _\128-\244]*[Cc][Aa][Tt][EeGgOoRrYy _\128-\244]*():") if colon then process_category(content, cat, colon, close + 2) end head = open end end data.wikitext_topic_cat = wikitext_topic_cat data.wikitext_langname_cat = wikitext_langname_cat if raw_sortkey then insert(cats, get_category("Pages with raw sortkeys")) end end return data end return export c380ic3kjsqy22c3blgwyio3y65tlzc 4388246 4388242 2025-07-07T09:38:52Z CHK2605 33979 [[Special:Contributions/CHK2605|CHK2605]] ([[User talk:CHK2605|토론]])의 [[Special:Diff/4388242|4388242]] 판 편집을 되돌림; 오류 발생 4388246 Scribunto text/plain local require = require local m_str_utils = require("Module:string utilities") local mw = mw local string = string local table = table local ustring = mw.ustring local concat = table.concat local decode_entities = m_str_utils.decode_entities local encode_entities = m_str_utils.encode_entities local find = string.find local get_category = require("Module:maintenance category").get_category local get_etym_lang = require("Module:etymology languages").getByCanonicalName local insert = table.insert local ipairs = ipairs local list_to_set = require("Module:table").listToSet local load_data = mw.loadData local match = string.match local new_title = mw.title.new local remove_comments = m_str_utils.remove_comments local split = m_str_utils.split local sub = string.sub local toNFD = ustring.toNFD local type = type local type_or_class = require("Module:parser").type_or_class local u = m_str_utils.char local ugsub = ustring.gsub local uupper = m_str_utils.upper local export = {} -- Convert a numeric list of characters and ranges to the equivalent Lua pattern. WARNING: This destructively modifies -- the contents of `ranges`. local function char_ranges_to_pattern(ranges) for j, range in ipairs(ranges) do if type(range) == "table" then for k, char in ipairs(range) do range[k] = u(char) end ranges[j] = concat(range, "-") else ranges[j] = u(range) end end return concat(ranges) end -- Combining character data used when categorising unusual characters. These resolve into two patterns, used to find -- single combining characters (i.e. character + diacritic(s)) or double combining characters (i.e. character + -- diacritic(s) + character). local comb_chars = { single = { {0x0300, 0x034E}, -- Exclude combining grapheme joiner. {0x0350, 0x035B}, {0x0363, 0x036F}, {0x0483, 0x0489}, {0x0591, 0x05BD}, 0x05BF, {0x05C1, 0x05C2}, {0x05C4, 0x05C5}, 0x05C7, {0x0610, 0x061A}, {0x064B, 0x065F}, 0x0670, {0x06D6, 0x06DC}, {0x06DF, 0x06E4}, {0x06E7, 0x06E8}, {0x06EA, 0x06ED}, 0x0711, {0x0730, 0x074A}, {0x07A6, 0x07B0}, {0x07EB, 0x07F3}, 0x07FD, {0x0816, 0x0819}, {0x081B, 0x0823}, {0x0825, 0x0827}, {0x0829, 0x082D}, {0x0859, 0x085B}, {0x0898, 0x089F}, {0x08CA, 0x08E1}, {0x08E3, 0x0903}, {0x093A, 0x093C}, {0x093E, 0x094F}, {0x0951, 0x0957}, {0x0962, 0x0963}, {0x0981, 0x0983}, 0x09BC, {0x09BE, 0x09C4}, {0x09C7, 0x09C8}, {0x09CB, 0x09CD}, 0x09D7, {0x09E2, 0x09E3}, 0x09FE, {0x0A01, 0x0A03}, 0x0A3C, {0x0A3E, 0x0A42}, {0x0A47, 0x0A48}, {0x0A4B, 0x0A4D}, 0x0A51, {0x0A70, 0x0A71}, 0x0A75, {0x0A81, 0x0A83}, 0x0ABC, {0x0ABE, 0x0AC5}, {0x0AC7, 0x0AC9}, {0x0ACB, 0x0ACD}, {0x0AE2, 0x0AE3}, {0x0AFA, 0x0AFF}, {0x0B01, 0x0B03}, 0x0B3C, {0x0B3E, 0x0B44}, {0x0B47, 0x0B48}, {0x0B4B, 0x0B4D}, {0x0B55, 0x0B57}, {0x0B62, 0x0B63}, 0x0B82, {0x0BBE, 0x0BC2}, {0x0BC6, 0x0BC8}, {0x0BCA, 0x0BCD}, 0x0BD7, {0x0C00, 0x0C04}, 0x0C3C, {0x0C3E, 0x0C44}, {0x0C46, 0x0C48}, {0x0C4A, 0x0C4D}, {0x0C55, 0x0C56}, {0x0C62, 0x0C63}, {0x0C81, 0x0C83}, 0x0CBC, {0x0CBE, 0x0CC4}, {0x0CC6, 0x0CC8}, {0x0CCA, 0x0CCD}, {0x0CD5, 0x0CD6}, {0x0CE2, 0x0CE3}, 0x0CF3, {0x0D00, 0x0D03}, {0x0D3B, 0x0D3C}, {0x0D3E, 0x0D44}, {0x0D46, 0x0D48}, {0x0D4A, 0x0D4D}, 0x0D57, {0x0D62, 0x0D63}, {0x0D81, 0x0D83}, 0x0DCA, {0x0DCF, 0x0DD4}, 0x0DD6, {0x0DD8, 0x0DDF}, {0x0DF2, 0x0DF3}, 0x0E31, {0x0E34, 0x0E3A}, {0x0E47, 0x0E4E}, 0x0EB1, {0x0EB4, 0x0EBC}, {0x0EC8, 0x0ECE}, {0x0F18, 0x0F19}, 0x0F35, 0x0F37, 0x0F39, {0x0F3E, 0x0F3F}, {0x0F71, 0x0F84}, {0x0F86, 0x0F87}, {0x0F8D, 0x0F97}, {0x0F99, 0x0FBC}, 0x0FC6, {0x102B, 0x103E}, {0x1056, 0x1059}, {0x105E, 0x1060}, {0x1062, 0x1064}, {0x1067, 0x106D}, {0x1071, 0x1074}, {0x1082, 0x108D}, 0x108F, {0x109A, 0x109D}, {0x135D, 0x135F}, {0x1712, 0x1715}, {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, {0x17B4, 0x17D3}, 0x17DD, -- Exclude Mongolian variation selectors. {0x1885, 0x1886}, 0x18A9, {0x1920, 0x192B}, {0x1930, 0x193B}, {0x1A17, 0x1A1B}, {0x1A55, 0x1A5E}, {0x1A60, 0x1A7C}, 0x1A7F, {0x1AB0, 0x1ACE}, {0x1B00, 0x1B04}, {0x1B34, 0x1B44}, {0x1B6B, 0x1B73}, {0x1B80, 0x1B82}, {0x1BA1, 0x1BAD}, {0x1BE6, 0x1BF3}, {0x1C24, 0x1C37}, {0x1CD0, 0x1CD2}, {0x1CD4, 0x1CE8}, 0x1CED, 0x1CF4, {0x1CF7, 0x1CF9}, {0x1DC0, 0x1DCC}, {0x1DCE, 0x1DFB}, {0x1DFD, 0x1DFF}, {0x20D0, 0x20F0}, {0x2CEF, 0x2CF1}, 0x2D7F, {0x2DE0, 0x2DFF}, {0x302A, 0x302F}, {0x3099, 0x309A}, {0xA66F, 0xA672}, {0xA674, 0xA67D}, {0xA69E, 0xA69F}, {0xA6F0, 0xA6F1}, 0xA802, 0xA806, 0xA80B, {0xA823, 0xA827}, 0xA82C, {0xA880, 0xA881}, {0xA8B4, 0xA8C5}, {0xA8E0, 0xA8F1}, 0xA8FF, {0xA926, 0xA92D}, {0xA947, 0xA953}, {0xA980, 0xA983}, {0xA9B3, 0xA9C0}, 0xA9E5, {0xAA29, 0xAA36}, 0xAA43, {0xAA4C, 0xAA4D}, {0xAA7B, 0xAA7D}, 0xAAB0, {0xAAB2, 0xAAB4}, {0xAAB7, 0xAAB8}, {0xAABE, 0xAABF}, 0xAAC1, {0xAAEB, 0xAAEF}, {0xAAF5, 0xAAF6}, {0xABE3, 0xABEA}, {0xABEC, 0xABED}, 0xFB1E, {0xFE20, 0xFE2F}, 0x101FD, 0x102E0, {0x10376, 0x1037A}, {0x10A01, 0x10A03}, {0x10A05, 0x10A06}, {0x10A0C, 0x10A0F}, {0x10A38, 0x10A3A}, 0x10A3F, {0x10AE5, 0x10AE6}, {0x10D24, 0x10D27}, {0x10EAB, 0x10EAC}, {0x10EFD, 0x10EFF}, {0x10F46, 0x10F50}, {0x10F82, 0x10F85}, {0x11000, 0x11002}, {0x11038, 0x11046}, 0x11070, {0x11073, 0x11074}, {0x1107F, 0x11082}, {0x110B0, 0x110BA}, 0x110C2, {0x11100, 0x11102}, {0x11127, 0x11134}, {0x11145, 0x11146}, 0x11173, {0x11180, 0x11182}, {0x111B3, 0x111C0}, {0x111C9, 0x111CC}, {0x111CE, 0x111CF}, {0x1122C, 0x11237}, 0x1123E, 0x11241, {0x112DF, 0x112EA}, {0x11300, 0x11303}, {0x1133B, 0x1133C}, {0x1133E, 0x11344}, {0x11347, 0x11348}, {0x1134B, 0x1134D}, 0x11357, {0x11362, 0x11363}, {0x11366, 0x1136C}, {0x11370, 0x11374}, {0x11435, 0x11446}, 0x1145E, {0x114B0, 0x114C3}, {0x115AF, 0x115B5}, {0x115B8, 0x115C0}, {0x115DC, 0x115DD}, {0x11630, 0x11640}, {0x116AB, 0x116B7}, {0x1171D, 0x1172B}, {0x1182C, 0x1183A}, {0x11930, 0x11935}, {0x11937, 0x11938}, {0x1193B, 0x1193E}, 0x11940, {0x11942, 0x11943}, {0x119D1, 0x119D7}, {0x119DA, 0x119E0}, 0x119E4, {0x11A01, 0x11A0A}, {0x11A33, 0x11A39}, {0x11A3B, 0x11A3E}, 0x11A47, {0x11A51, 0x11A5B}, {0x11A8A, 0x11A99}, {0x11C2F, 0x11C36}, {0x11C38, 0x11C3F}, {0x11C92, 0x11CA7}, {0x11CA9, 0x11CB6}, {0x11D31, 0x11D36}, 0x11D3A, {0x11D3C, 0x11D3D}, {0x11D3F, 0x11D45}, 0x11D47, {0x11D8A, 0x11D8E}, {0x11D90, 0x11D91}, {0x11D93, 0x11D97}, {0x11EF3, 0x11EF6}, {0x11F00, 0x11F01}, 0x11F03, {0x11F34, 0x11F3A}, {0x11F3E, 0x11F42}, 0x13440, {0x13447, 0x13455}, {0x16AF0, 0x16AF4}, {0x16B30, 0x16B36}, 0x16F4F, {0x16F51, 0x16F87}, {0x16F8F, 0x16F92}, -- Exclude Khitan Small Script filler. {0x16FF0, 0x16FF1}, {0x1BC9D, 0x1BC9E}, {0x1CF00, 0x1CF2D}, {0x1CF30, 0x1CF46}, {0x1D165, 0x1D169}, {0x1D16D, 0x1D172}, {0x1D17B, 0x1D182}, {0x1D185, 0x1D18B}, {0x1D1AA, 0x1D1AD}, {0x1D242, 0x1D244}, {0x1DA00, 0x1DA36}, {0x1DA3B, 0x1DA6C}, 0x1DA75, 0x1DA84, {0x1DA9B, 0x1DA9F}, {0x1DAA1, 0x1DAAF}, {0x1E000, 0x1E006}, {0x1E008, 0x1E018}, {0x1E01B, 0x1E021}, {0x1E023, 0x1E024}, {0x1E026, 0x1E02A}, 0x1E08F, {0x1E130, 0x1E136}, 0x1E2AE, {0x1E2EC, 0x1E2EF}, {0x1E4EC, 0x1E4EF}, {0x1E8D0, 0x1E8D6}, {0x1E944, 0x1E94A}, }, double = { {0x035C, 0x0362}, 0x1DCD, 0x1DFC, }, vs = { -- variation selectors; separated out so that we don't get categories for them {0xFE00, 0xFE0F}, {0xE0100, 0xE01EF}, } } for key, charset in pairs(comb_chars) do comb_chars[key] = char_ranges_to_pattern(charset) end comb_chars.both = comb_chars.single .. comb_chars.double .. comb_chars.vs comb_chars = { combined_single = "[^" .. comb_chars.both .. "][" .. comb_chars.single .. comb_chars.vs .. "]+%f[^" .. comb_chars.both .. "]", combined_double = "[^" .. comb_chars.both .. "][" .. comb_chars.single .. comb_chars.vs .. "]*[" .. comb_chars.double .. "]+[" .. comb_chars.both .. "]*.[" .. comb_chars.single .. comb_chars.vs .. "]*", diacritics_single = "[" .. comb_chars.single .. "]", diacritics_double = "[" .. comb_chars.double .. "]" } -- From https://unicode.org/Public/emoji/15.1/emoji-sequences.txt local emoji_chars = { {0x231A, 0x231B}, -- watch..hourglass done # E0.6 [2] (⌚..⌛) {0x23E9, 0x23EC}, -- fast-forward button..fast down button # E0.6 [4] (⏩..⏬) 0x23F0, -- alarm clock # E0.6 [1] (⏰) 0x23F3, -- hourglass not done # E0.6 [1] (⏳) {0x25FD, 0x25FE}, -- white medium-small square..black medium-small square # E0.6 [2] (◽..◾) {0x2614, 0x2615}, -- umbrella with rain drops..hot beverage # E0.6 [2] (☔..☕) {0x2648, 0x2653}, -- Aries..Pisces # E0.6 [12] (♈..♓) 0x267F, -- wheelchair symbol # E0.6 [1] (♿) 0x2693, -- anchor # E0.6 [1] (⚓) 0x26A1, -- high voltage # E0.6 [1] (⚡) {0x26AA, 0x26AB}, -- white circle..black circle # E0.6 [2] (⚪..⚫) {0x26BD, 0x26BE}, -- soccer ball..baseball # E0.6 [2] (⚽..⚾) {0x26C4, 0x26C5}, -- snowman without snow..sun behind cloud # E0.6 [2] (⛄..⛅) 0x26CE, -- Ophiuchus # E0.6 [1] (⛎) 0x26D4, -- no entry # E0.6 [1] (⛔) 0x26EA, -- church # E0.6 [1] (⛪) {0x26F2, 0x26F3}, -- fountain..flag in hole # E0.6 [2] (⛲..⛳) 0x26F5, -- sailboat # E0.6 [1] (⛵) 0x26FA, -- tent # E0.6 [1] (⛺) 0x26FD, -- fuel pump # E0.6 [1] (⛽) 0x2705, -- check mark button # E0.6 [1] (✅) {0x270A, 0x270B}, -- raised fist..raised hand # E0.6 [2] (✊..✋) 0x2728, -- sparkles # E0.6 [1] (✨) 0x274C, -- cross mark # E0.6 [1] (❌) 0x274E, -- cross mark button # E0.6 [1] (❎) {0x2753, 0x2755}, -- red question mark..white exclamation mark # E0.6 [3] (❓..❕) 0x2757, -- red exclamation mark # E0.6 [1] (❗) {0x2795, 0x2797}, -- plus..divide # E0.6 [3] (➕..➗) 0x27B0, -- curly loop # E0.6 [1] (➰) 0x27BF, -- double curly loop # E1.0 [1] (➿) {0x2B1B, 0x2B1C}, -- black large square..white large square # E0.6 [2] (⬛..⬜) 0x2B50, -- star # E0.6 [1] (⭐) 0x2B55, -- hollow red circle # E0.6 [1] (⭕) {0x1F300, 0x1FAFF}, -- emoji in Plane 1 -- NOTE: There are lots more emoji sequences involving non-emoji Plane 0 symbols followed by 0xFE0F, which we don't -- (yet?) handle. } emoji_chars = char_ranges_to_pattern(emoji_chars) local unsupported_characters = {} for k, v in pairs(require("Module:links/data").unsupported_characters) do unsupported_characters[v] = k end -- Get the list of unsupported titles and invert it (so the keys are pagenames and values are canonical titles). local unsupported_titles = {} for k, v in pairs(require("Module:links/data").unsupported_titles) do unsupported_titles[v] = k end --[==[ Given a pagename (or {nil} for the current page), create and return a data structure describing the page. The returned object includes the following fields: * `comb_chars`: A table containing various Lua character class patterns for different types of combined characters (those that decompose into multiple characters in the NFD decomposition). The patterns are meant to be used with {mw.ustring.find()}. The keys are: ** `single`: Single combining characters (character + diacritic), without surrounding brackets; ** `double`: Double combining characters (character + diacritic + character), without surrounding brackets; ** `vs`: Variation selectors, without surrounding brackets; ** `both`: Concatenation of `single` + `double` + `vs` (FIXME: should be named `all`), without surrounding brackets; ** `diacritics_single`: Like `single` but with surrounding brackets; ** `diacritics_single`: Like `double` but with surrounding brackets; ** `combined_single`: Lua pattern for matching a spacing character followed by one or more single combining characters; ** `combined_double`: Lua pattern for matching a combination of two spacing characters separated by one or more double combining characters, possibly also with single combining characters; * `emoji_pattern`: A Lua character class pattern (including surrounding brackets) that matches emojis. Meant to be used with {mw.ustring.find()}. * `unsupported_titles`: Map from pagenames to canonical titles for unsupported-title pages. * `namespace`: Namespace of the pagename. * `ns`: Namespace table for the page from mw.site.namespaces (TODO: merge with `namespace` above). * `full_raw_pagename`: Full version of the '''RAW''' pagename (i.e. unsupported-title pages aren't canonicalized); including the namespace and the root (portion before the slash). * `pagename`: Canonicalized subpage portion of the pagename (unsupported-title pages are canonicalized). * `decompose_pagename`: Equivalent of `pagename` in NFD decomposition. * `pagename_len`: Length of `pagename` in Unicode chars, where combinations of spacing character + decomposed diacritic are treated as single characters. * `explode_pagename`: Set of characters found in `pagename`. The keys are characters (where combinations of spacing character + decomposed diacritic are treated as single characters). * `encoded_pagename`: FIXME: Document me. * `pagename_defaultsort`: FIXME: Document me. * `raw_defaultsort`: FIXME: Document me. * `page_L2s`: Lookup table of L2 headings on the page, where the key is the section number assigned by the preprocessor, and the value is the L2 heading name. Once an invocation has got its actual section number from get_current_section in [[Module:utilities]], it can use this table to determine its parent L2. TODO: We could expand this to include subsections, to check POS headings are correct etc. * `wikitext_topic_cat`: FIXME: Document me. * `wikitext_langname_cat`: FIXME: Document me. ]==] function export.process_page(pagename) local data = { comb_chars = comb_chars, emoji_pattern = "[" .. emoji_chars .. "]", unsupported_titles = unsupported_titles } local cats = {} data.cats = cats -- We cannot store `raw_title` in `data` because it contains a metatable. local raw_title local function bad_pagename() if not pagename then error("Internal error: Something wrong, `data.pagename` not specified but current title containg illegal characters") else error(("Bad value for `data.pagename`: '%s', which must not contain illegal characters"):format(pagename)) end end if pagename then -- for testing, doc pages, etc. raw_title = new_title(pagename) if not raw_title then bad_pagename() end else raw_title = mw.title.getCurrentTitle() end data.namespace = raw_title.nsText data.ns = mw.site.namespaces[raw_title.namespace] data.full_raw_pagename = raw_title.fullText local frame = mw.getCurrentFrame() -- WARNING: `content` May be nil, e.g. if we're substing a template like {{ja-new}} on a not-yet-created page -- or if the module specifies the subpage as `data.pagename` (which many modules do) and we're in an Appendix -- or other non-mainspace page. We used to make the latter an error but there are too many modules that do it, -- and substing on a nonexistent page is totally legit, and we don't actually need to be able to access the -- content of the page. local content = raw_title:getContent() local content_lang = mw.getContentLanguage() --Get the pagename. pagename = raw_title.subpageText :gsub("^Unsupported titles/(.*)", function(m) insert(cats, "Unsupported titles") return unsupported_titles[m] or (m:gsub("`.-`", unsupported_characters)) end) -- Save pagename, as local variable will be destructively modified. data.pagename = pagename -- Decompose the pagename in Unicode normalization form D. data.decompose_pagename = toNFD(pagename) -- Explode the current page name into a character table, taking decomposed combining characters into account. local explode_pagename = {} local pagename_len = 0 local function explode(char) explode_pagename[char] = true pagename_len = pagename_len + 1 return "" end pagename = ugsub(pagename, comb_chars.combined_double, explode) pagename = ugsub(pagename, comb_chars.combined_single, explode) :gsub(".[\128-\191]*", explode) data.explode_pagename = explode_pagename data.pagename_len = pagename_len -- Generate DEFAULTSORT. data.encoded_pagename = encode_entities(data.pagename) data.pagename_defaultsort = require("Module:languages").getByCode("mul"):makeSortKey(data.encoded_pagename) frame:callParserFunction( "DEFAULTSORT", data.pagename_defaultsort ) data.raw_defaultsort = raw_title.text:uupper() -- Get section numbers for the page, and note raw wikitext use of {{DEFAULTSORT:}} and {{DISPLAYTITLE:}}. -- Note: HTML comments shouldn't be removed from `content` until after this step, as they can affect the result. do local page_L2s, defaultsort, displaytitle, page_has_L1 = {} local function handle_heading(node) local level = node.level if level > 2 then return end local name = node:get_name() -- Check there are no newline characters in the heading, which might appear after preprocessing (e.g. from an expanded template). In such cases, the preprocessor section count still increments (since it's calculated pre-expansion), but the heading will fail, so we shouldn't increment the L2 count. if find(name, "\n", 1, true) then return end page_L2s[node.section] = name -- We also add any L1s, since they terminate the preceding L2, but add a maintenance category since it's probably a mistake. if level == 1 then page_has_L1 = true end end local function handle_template(node) local name = node:get_name() if name == "DEFAULTSORT:" then defaultsort = true elseif name == "DISPLAYTITLE:" then displaytitle = true end end if content then for node in require("Module:template parser").parse(content):__pairs("next_node") do local node_type = type_or_class(node) if node_type == "heading" then handle_heading(node) elseif node_type == "template" and not (defaultsort and displaytitle) then handle_template(node) end end end data.page_L2s = page_L2s if defaultsort then insert(cats, get_category("Pages with DEFAULTSORT conflicts")) end if displaytitle then insert(cats, get_category("Pages with DISPLAYTITLE conflicts")) end if page_has_L1 then insert(cats, get_category("Pages with unwanted L1 headings")) end end ------ 4. Parse page for maintenance categories. ------ -- Use of tab characters. if content and find(content, "\t", 1, true) then insert(cats, get_category("Pages with tab characters")) end -- Unencoded character(s) in title. local IDS = list_to_set{"⿰", "⿱", "⿲", "⿳", "⿴", "⿵", "⿶", "⿷", "⿸", "⿹", "⿺", "⿻", "⿼", "⿽", "⿾", "⿿", "㇯"} for char in pairs(explode_pagename) do if IDS[char] and char ~= data.pagename then insert(cats, "Terms containing unencoded characters") break end end -- Raw wikitext use of a topic or langname category. Also check if any raw sortkeys have been used. do local wikitext_topic_cat = {} local wikitext_langname_cat = {} local raw_sortkey local langnames = load_data("Module:languages/canonical names") local etym_langnames = load_data("Module:etymology languages/canonical names") -- If a raw sortkey has been found, add it to the relevant table. -- If there's no table (or the index is just `true`), create one first. local function add_cat_table(t, lang, sortkey) local t_lang = t[lang] if not sortkey then if not t_lang then t[lang] = true end return elseif t_lang == true or not t_lang then t_lang = {} t[lang] = t_lang end t_lang[uupper(decode_entities(sortkey))] = true end local function do_iteration(name, sortkey, wikitext_langname_cat) if langnames[name] then return add_cat_table(wikitext_langname_cat, name, sortkey) end name = etym_langnames[name] and name or content_lang:lcfirst(name) if etym_langnames[name] then name = get_etym_lang(name):getFullName() return add_cat_table(wikitext_langname_cat, name, sortkey) end end local function process_category(content, cat, colon, nxt) local pipe = find(cat, "|", colon + 1, true) -- Categories cannot end "|]]". if pipe == #cat then return end local title = new_title(pipe and sub(cat, 1, pipe - 1) or cat) if not (title and title.namespace == 14) then return end -- Get the sortkey (if any), then canonicalize category title. local sortkey = pipe and sub(cat, pipe + 1) or nil cat = title.text if sortkey then raw_sortkey = true -- If the sortkey contains "[", the first "]" of a final "]]]" is treated as part of the sortkey. if find(sortkey, "[", 1, true) and sub(content, nxt, nxt) == "]" then sortkey = sortkey .. "]" end end local code = match(cat, "^([%w%-.]+):") if code then return add_cat_table(wikitext_topic_cat, code, sortkey) end -- Split by word. cat = split(cat, " ", true, true) -- Iterate over the category name, starting with the longest possible name and shaving off the first word until we find one. We do it this way because: -- (a) Going from shortest to longest risks falsely matching (e.g.) German Low German categories as German. -- (b) Checking the start of category names first risks falsely match (e.g.) Alsatian French as Alsatian (a variety of Alemannic German), not French. -- If no matches are found, then check the start of the category name, shaving off the last word each iteration. local cat_len, n, name, done = #cat, 1 repeat name = concat(cat, " ", n, cat_len) done = do_iteration(name, sortkey, wikitext_langname_cat) if done then return end n = n + 1 until n > cat_len n = cat_len - 1 if n <= 0 then return end repeat name = concat(cat, " ", 1, n) done = do_iteration(name, sortkey, wikitext_langname_cat) if done then return end n = n - 1 until n == 0 end if content then -- Remove comments, then iterate over category links. content = remove_comments(content, "BOTH") local head = find(content, "[[", 1, true) while head do local close = find(content, "]]", head + 2, true) if not close then break end -- Make sure there are no intervening "[[" between head and close. local open = find(content, "[[", head + 2, true) while open and open < close do head = open open = find(content, "[[", head + 2, true) end local cat = sub(content, head + 2, close - 1) -- Locate the colon, and weed out most unwanted links. "[ _\128-\244]*" catches valid whitespace, and ensures any category links using the colon trick are ignored. We match all non-ASCII characters, as there could be multibyte spaces, and mw.title.new will filter out any remaining false-positives; this is a lot faster than running mw.title.new on every link. local colon = match(cat, "^[ _\128-\244]*[Cc][Aa][Tt][EeGgOoRrYy _\128-\244]*():") if colon then process_category(content, cat, colon, close + 2) end head = open end end data.wikitext_topic_cat = wikitext_topic_cat data.wikitext_langname_cat = wikitext_langname_cat if raw_sortkey then insert(cats, get_category("Pages with raw sortkeys")) end end return data end return export a5u7kk8w49sq88c3wqx19nrjpkq11st 모듈:utilities/data 828 445658 4388261 4065851 2025-07-07T11:50:02Z CHK2605 33979 4388261 Scribunto text/plain local data = {} -- Namespaces which format_categories will allow: (main), Appendix, Thesaurus, Citations, Reconstruction data.category_namespaces = require("Module:table").listToSet{0, 100, 110, 114, 118} -- Script that should be applied to links in categories. data.catfix_scripts = { ["ab"] = "Cyrl", ["ae"] = "Avst", ["ar"] = "Arab", ["ary"] = "Arab", ["be"] = "Cyrl", ["cmn"] = "Hani", ["cu"] = "Cyrs", ["de"] = "Latn", ["el"] = "Grek", ["en"] = "Latn", ["fa"] = "fa-Arab", ["grc"] = "Polyt", ["he"] = "Hebr", ["hi"] = "Deva", ["hu"] = "Latn", ["ja"] = "Jpan", ["ka"] = "Geor", ["ko"] = "Kore", ["mr"] = "Deva", ["nan-hbl"] = "Hani", ["orv"] = "Cyrs", ["ro"] = "Latn", ["ru"] = "Cyrl", ["sa"] = "Deva", ["sq"] = "Latn", ["syl"] = "Sylo", ["xfa"] = "Ital", ["yue"] = "Hani", ["zh"] = "Hani", ["zle-ono"] = "Cyrs", ["zle-ort"] = "Cyrs", --[[ [""] = "", ]] } return data 4x56htm3m5cvzeaw1vqlu3qn70xkp8k 모듈:math 828 447514 4388248 4384737 2025-07-07T09:49:49Z CHK2605 33979 4388248 Scribunto text/plain local export = {} local byte = string.byte local ceil = math.ceil local floor = math.floor local format = string.format local is_integer -- defined below local match = string.match local select = select local tonumber = tonumber local tonumber_ext -- defined below local tostring = tostring local type = type local INF = math.huge local function sign(x, signed_0) if x > 0 then return 1 elseif x < 0 then return -1 elseif x == 0 then -- 1/(+0) is infinity and 1/(-0) is -infinity. return signed_0 and (1 / x > 0 and 1 or -1) or 0 end -- NaN: convert to string with a forced sign prefix, and grab the first byte. local sign = byte(format("%+f", x)) return sign == 0x2B and 1 or -- + sign == 0x2D and -1 or -- - -- If there's no sign, throw an error. This shouldn't be possible, but -- avoids silent errors if it does happen. error("Internal error: cannot determine sign of " .. x) end --[==[ An extended version of {tonumber()}, which attempts to convert `x` to a number. Like {tonumber()}, it will convert from base 10 by default, and the optional parameter `base` can be used to specify a different base between 2 and 36, with the letters {A-Z} (case-insensitive) representing additional digits beyond {0-9}. When strings contain hexadecimal notation (e.g. {"0x100"}), base 16 is used as the default instead, but this is overridden if `base` is set to anything other than 16. This function differs from {tonumber()} in the following ways: * If `finite_real` is set, then the function will only return finite real numbers; inputs which would normally produce ±infinity or NaN will instead produce {nil}. * If `no_prefix` is set, then strings which start with {"0x"} will not be interpreted as containing hexadecimal notation, resulting in {nil}. * If `base` is explicitly set to {10}, then strings in hexadecimal notation will always return {nil}. This fixes a bug in {tonumber()}, which treats {base=10} the same as {base} being unset, causing base 16 to be used if `x` contains hexadecimal notation (e.g. {tonumber("0x10", 10)} returns {16}, whereas {tonumber_extended("0x10", 10)} returns {nil}).]==] function export.tonumber_extended(x, base, finite_real, no_prefix) -- TODO: tonumber() maxes out at 2^64 if the base is anything other than 10. -- TODO: support binary (0b) and octal (0o) prefixes. local n = tonumber(x, base) if not n or finite_real and (n ~= n or n == INF or n == -INF) then return nil -- If `base` is explicitly set to 10 (not simply nil), or `no_prefix` is set -- and `base` is nil or 16, filter out inputs that started with hexadecimal -- prefixes. Note that if `base` is anything else, the initial "0x" will -- have been interpreted as digits by tonumber() instead of a prefix (as "x" -- can be a digit from base 34 upwards), so there's no prefix to check for. elseif base == 10 or no_prefix and (base == nil or base == 16) then return not match(x, "^%s*[+-]?0[xX]()") and n or nil end return n end tonumber_ext = export.tonumber_extended --[==[ Converts `x` to an integer by removing the fractional portion (e.g. {3.5} becomes {3}, and {-2.9} becomes {-2}). This is equivalent to rounding down positive numbers and rounding up negative numbers. If conversion is not possible, returns {nil}.]==] function export.to_integer(x) x = tonumber(x) if not (x and x == x and x ~= INF and x ~= -INF) then return nil elseif x % 1 == 0 then return x -- Round-down positives. elseif x >= 0 then return floor(x) end --Round-up negatives. return ceil(x) end --[==[ Returns {1} if `x` is positive, {-1} if `x` is negative, or {0} if `x` is {0}. If `signed_0` is set, this function will only return either {1} or {-1}, and will make a distinction between [[w:signed zero|signed zeroes]] ({+0} and {-0}). This is useful when a {0} result could be disruptive (e.g. {x % 0}).]==] function export.sign(x, signed_0) return sign( tonumber(x) or error(format("bad argument #1 to 'sign' (number expected, got %s)", type(x)), 2), signed_0 ) end --[==[ Returns {true} if `x` is a finite real number, or {false} if not.]==] function export.is_finite_real_number(x) return x and x == x and not (x == INF or x == -INF) and type(x) == "number" end --[==[ Returns {true} if `x` is an integer, or {false} if not.]==] function export.is_integer(x) return x and type(x) == "number" and x % 1 == 0 or false end is_integer = export.is_integer --[==[ Returns {true} if `x` is a positive integer (or zero if the `include_0` flag is set), or {false} if not.]==] function export.is_positive_integer(x, include_0) return x and type(x) == "number" and (x > 0 or include_0 and x == 0) and x % 1 == 0 or false end --[==[ Returns {true} is `x` is [[w:NaN|NaN]] (Not a Number), or {false} if not. NaN is a value that has the type "number", but does not represent an actual numeric value; it has the unique property that if {x} is NaN, {x ~= x} evaluates to {true}.]==] function export.is_NaN(x) return x ~= x end --[==[ Returns the base-10 logarithm of `x`. This function should be used instead of {math.log10}, which is deprecated and may stop working if Scribunto is updated to a more recent Lua version.]==] function export.log10(x) -- Structured like this so that module documentation works. local log10 = math.log10 if log10 ~= nil then return log10 end local log = math.log return log(10, 10) == 1 and function(x) -- Lua 5.2 return log(x, 10) end or function(x) -- Lua 5.1 return log(x) * 0.43429448190325182765112891891660508229439700580367 -- log10(e) end end export.log10 = export.log10() -- Sets the actual returned function. local function integer_error(x, param, func_name) local type_x = type(x) error(format( "bad argument #%d to '%s' (integer expected, got %s)", param, func_name, type_x == "number" and tostring(x) or type_x ), 3) end --[==[ Converts a decimal number to hexadecimal. If `include_prefix` is set, the returned number will include the 0x prefix.]==] function export.to_hex(dec, include_prefix) dec = tonumber(dec) or dec if not is_integer(dec) then integer_error(dec, 1, "to_hex") end local neg = dec < 0 if neg then dec = -dec end -- Inputs >= 2^64 cause string.format to return "0". if dec >= 0x1p64 then error("integer overflow in 'to_hex': cannot convert inputs with a magnitude greater than or equal to 2^64 (18446744073709551616)", 2) end -- string.format treats hex numbers as unsigned, so any sign must be added manually. return format("%s%s%X", neg and "-" or "", include_prefix and "0x" or "", dec) end --[==[ Returns the greatest common divisor of an arbitrary number of input numbers.]==] function export.gcd(x, ...) x = tonumber(x) or x if not is_integer(x) then integer_error(x, 1, "gcd") end local q, args_len, integers = ..., select("#", ...) -- Compute p_1 = gcd(n_1, n_2), p_2 = gcd(p_1, n_3), ... i.e. compute GCD by Euclid's algorithm for the current result and the next number. for i = 2, args_len + 1 do q = tonumber(q) or q if not is_integer(q) then integer_error(q, i, "gcd") elseif x ~= 1 then -- If x is 1, validate remaining inputs. -- GCD of two integers x, q with Euclid's algorithm. while q ~= 0 do x, q = q, x % q end end if i <= args_len then -- Only create a table if absolutely necessary, as it's inefficient. if i == 2 then integers = {...} end q = integers[i] end end return x < 0 and -x or x end --[==[ Returns the least common multiple of an arbitrary number of input numbers.]==] function export.lcm(x, ...) x = tonumber(x) or x if not is_integer(x) then integer_error(x, 1, "lcm") end local q, args_len, integers = ..., select("#", ...) -- Compute the product of all inputs as p and GCD as x. for i = 2, args_len + 1 do q = tonumber(q) or q if not is_integer(q) then integer_error(q, i, "lcm") elseif x ~= 0 then -- If x is 0, validate remaining inputs. -- Compute the product. local p = x * q -- GCD of two integers x, q with Euclid's algorithm. while q ~= 0 do x, q = q, x % q end -- Divide product by the GCD to get new LCM. x = p / x end if i <= args_len then -- Only create a table if absolutely necessary, as it's inefficient. if i == 2 then integers = {...} end q = integers[i] end end return x < 0 and -x or x end return export 9iueib95u6jd0lc3zzrya3gsltprarl 著る 0 448012 4388182 2025-07-06T15:08:27Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|き|yomi=k}} {{ja-see|着る}} 4388182 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|き|yomi=k}} {{ja-see|着る}} 4eec3bl9b6vkt3yv752lwegr7o43t60 似る 0 448013 4388186 2025-07-06T15:28:20Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|に|yomi=k|alt=肖る}} === 발음 === {{ja-pron|にる|acc=0|acc_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} === 동사 === {{ja-verb|にる|type=2|tr=자동사}} # [[닮다]], [[비슷하다]] #: {{ux|ja|双%子のように'''似て'''いる|ふた%ご の よう に '''にて''' いる|쌍둥이처럼 '''닮아''' 있다}} #: {{ux|ja|夕顔に'''似た'''白い花|ゆうがお に '''にた'''... 4388186 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|に|yomi=k|alt=肖る}} === 발음 === {{ja-pron|にる|acc=0|acc_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} === 동사 === {{ja-verb|にる|type=2|tr=자동사}} # [[닮다]], [[비슷하다]] #: {{ux|ja|双%子のように'''似て'''いる|ふた%ご の よう に '''にて''' いる|쌍둥이처럼 '''닮아''' 있다}} #: {{ux|ja|夕顔に'''似た'''白い花|ゆうがお に '''にた''' しろい はな|박꽃을 '''닮은''' 하얀 꽃}} # [[유사하다]] #: {{ux|ja|意味の'''似た'''言%葉|いみ の '''にた''' こと%ば|의미가 '''비슷한''' 단어}} # (…に似ず…だ의 형태로) ~[[답다|답지]] [[않다|않게]] ~[[하다]] #: {{ux|ja|外見に'''似ず'''たくましい|がいけん に '''にず''' たくましい|외모와는 '''달리''' 억세다}} #: {{ux|ja|彼は年齢に'''似ず'''落ち着いている|かれ は ねんれい に '''にず''' おちついている|그는 나이에 '''어울리지 않게''' 침착하다}} ==== 활용형 ==== {{ja-conj}} q3tvs3lzstmi8owxlnjskehhx23uv10 肖る 0 448014 4388187 2025-07-06T15:31:38Z CHK2605 33979 새 문서: ==일본어== === 어원 1 === {{ja-kanjitab|あやか|yomi=k}} {{ja-see|あやかる}} === 어원 2 === {{ja-kanjitab|に|y=k}} {{ja-see|似る}} 4388187 wikitext text/x-wiki ==일본어== === 어원 1 === {{ja-kanjitab|あやか|yomi=k}} {{ja-see|あやかる}} === 어원 2 === {{ja-kanjitab|に|y=k}} {{ja-see|似る}} 3lfluttd0ikhrjtrtgm9ltnap9vt0th 4388190 4388187 2025-07-06T15:40:54Z CHK2605 33979 4388190 wikitext text/x-wiki ==일본어== === 어원 1 === {{ja-kanjitab|あやか|yomi=k}} ==== 발음 ==== {{ja-pron|あやかる|acc=3|acc_ref=DJR}} ==== 동사 ==== {{ja-verb|type=1|あやかる|tr=자동사|hhira=あやかる}} # [[본받다]], [[영향]]을 [[받다]] #: {{ux|ja|彼の幸運に'''肖りたい'''|かれ の こううん に '''あやかりたい'''|그의 행운을 '''본받고''' 싶다}} ===== 활용형 ===== {{ja-conj}} === 어원 2 === {{ja-kanjitab|に|y=k}} {{ja-see|似る}} q9v8hrgprfejk4750i2u033flgtmbpl 煮る 0 448015 4388188 2025-07-06T15:34:33Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|に|yomi=k}} === 발음 === {{ja-pron|にる|acc=0|acc_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} === 동사 === {{ja-verb|にる|type=2|tr=타동사}} # [[삶다]], [[끓이다]], [[조리다]] #: {{ux|ja|強%火で'''煮る'''|つよ%び で '''にる'''|센 불로 '''끓이다'''}} #: {{ux|ja|野%菜を柔らかくなるまで'''煮る'''|や%さい を やわらかく なる まで '''にる'... 4388188 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|に|yomi=k}} === 발음 === {{ja-pron|にる|acc=0|acc_loc={{w|도쿄 방언|도쿄}}|acc_ref=DJR,NHK|acc2=1|acc2_loc={{w|미시마섬|미시마}}}} === 동사 === {{ja-verb|にる|type=2|tr=타동사}} # [[삶다]], [[끓이다]], [[조리다]] #: {{ux|ja|強%火で'''煮る'''|つよ%び で '''にる'''|센 불로 '''끓이다'''}} #: {{ux|ja|野%菜を柔らかくなるまで'''煮る'''|や%さい を やわらかく なる まで '''にる'''|야채를 부드러워질 때까지 '''삶다'''}} ==== 활용형 ==== {{ja-conj}} 3r8cmkakde3g50frmgyns2yg4z3zau4 あやかる 0 448016 4388191 2025-07-06T15:41:38Z CHK2605 33979 새 문서: == 일본어 == {{ja-see|肖る}} 4388191 wikitext text/x-wiki == 일본어 == {{ja-see|肖る}} 2s29gwy7dbmz03ik1o76miyjxwh0h46 下りる 0 448017 4388192 2025-07-06T15:54:11Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|お|yomi=k|alt=降りる}} === 발음 === {{ja-pron|おりる|acc=2|acc_ref=DJR,NHK}} === 동사 === {{ja-verb|type=2|tr=자동사|おりる}} # [[내려가다]], [[내려오다]] #: {{ux|ja|山を'''下りる'''|やま を '''おりる'''|산을 '''내려오다'''}} #: {{ux|ja|木から'''下りる'''|き から '''おりる'''|나무에서 '''내려오다'''}} #: {{ux|ja|階段を'''下りる'''|かいだん を '''おりる'''|계단을 '''내... 4388192 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|yomi=k|alt=降りる}} === 발음 === {{ja-pron|おりる|acc=2|acc_ref=DJR,NHK}} === 동사 === {{ja-verb|type=2|tr=자동사|おりる}} # [[내려가다]], [[내려오다]] #: {{ux|ja|山を'''下りる'''|やま を '''おりる'''|산을 '''내려오다'''}} #: {{ux|ja|木から'''下りる'''|き から '''おりる'''|나무에서 '''내려오다'''}} #: {{ux|ja|階段を'''下りる'''|かいだん を '''おりる'''|계단을 '''내려가다'''}} # (물건이) [[내려오다]], [[닫히다]] #: {{ux|ja|シャッターが'''下りる'''|シャッター が '''おりる'''|셔터가 '''내려오다'''}} #: {{ux|ja|幕が'''下りる'''|まく が '''おりる'''|막이 '''내리다'''}} # (몸 밖으로) [[나오다]], (열 등이) [[내리다]] #: {{ux|ja|回%虫が'''下りる'''|かい%ちゅう が '''おりる'''|회충이 '''나오다'''}} #: {{ux|ja|熱が'''下りる'''|ねつ が '''おりる'''|열이 '''내리다'''}} # [[벗어나다]], [[없어지다]] #: {{ux|ja|胸のつかえが'''下りる'''|むね の つかえ が '''おりる'''|가슴의 답답함이 '''해소되다'''}} # [[물러나다]], [[사임하다]] #: {{ux|ja|代%表の座を'''下りる'''|だい%ひょう の ざ を '''おりる'''|대표 자리에서 '''내려오다'''}} # [[지급되다]], [[허가되다]] #: {{ux|ja|許%可が'''下りた'''|きょ%か が '''おりた'''|허가가 '''났다'''}} # [[기권하다]], [[포기하다]] #: {{ux|ja|勝ち目がないので'''下りる'''|かちめ が ない ので '''おりる'''|승산이 없어서 '''기권하다'''}} ==== 활용형 ==== {{ja-conj}} ==== 반의어 ==== * {{ja-r|上がる|あがる}} 9d9muvjyzi9alqerna7zz99wjim0nnr 落る 0 448018 4388197 2025-07-07T02:09:14Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|yomi=k|おち}} {{ja-see|落ちる}} 4388197 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|yomi=k|おち}} {{ja-see|落ちる}} tvolturdsk4rw9d2tdhldn2jfumt2pg 零ちる 0 448019 4388198 2025-07-07T02:10:02Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|yomi=k|お}} {{ja-see|落ちる}} 4388198 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|yomi=k|お}} {{ja-see|落ちる}} em5wx09kmeaalcv65135n8iygltww9c 堕ちる 0 448020 4388199 2025-07-07T02:11:19Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|お|yomi=k}} {{ja-see|落ちる}} 4388199 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|yomi=k}} {{ja-see|落ちる}} rh7d8c8qo9eke2wen72cu04m83fxtgy 墮ちる 0 448021 4388200 2025-07-07T02:11:35Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|お|yomi=k}} {{ja-see|落ちる}} 4388200 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|yomi=k}} {{ja-see|落ちる}} rh7d8c8qo9eke2wen72cu04m83fxtgy 墜ちる 0 448022 4388201 2025-07-07T02:12:34Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|yomi=k|お}} {{ja-see|落ちる}} 4388201 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|yomi=k|お}} {{ja-see|落ちる}} em5wx09kmeaalcv65135n8iygltww9c 熾きる 0 448023 4388204 2025-07-07T02:22:43Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|お|yomi=k}} === 발음 === {{ja-pron|おきる}} === 동사 === {{ja-verb|おきる|type=2|tr=자동사}} # [[불붙다]], [[활활]] [[타오르다]] #: {{ux|ja|炭%火が'''熾きる'''|すみ%び が '''おきる'''|숯불이 '''활활 타오르다'''}} ==== 활용형 ==== {{ja-conj}} 4388204 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|お|yomi=k}} === 발음 === {{ja-pron|おきる}} === 동사 === {{ja-verb|おきる|type=2|tr=자동사}} # [[불붙다]], [[활활]] [[타오르다]] #: {{ux|ja|炭%火が'''熾きる'''|すみ%び が '''おきる'''|숯불이 '''활활 타오르다'''}} ==== 활용형 ==== {{ja-conj}} 5ny5fy1vc4sd2acscijsnwtrrfwalfj 鋳る 0 448024 4388207 2025-07-07T03:23:57Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる|acc=1|acc_ref=DJR}} === 동사 === {{ja-verb|tr=타동사|type=2|いる}} # [[주조하다]] #: {{ux|ja|鐘を'''鋳る'''|かね を '''いる'''|종을 '''주조하다'''}} #: {{ux|ja|貨%幣を'''鋳る'''|か%へい を '''いる'''|화폐를 '''주조하다'''}} ==== 활용형 ==== {{ja-conj}} 4388207 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる|acc=1|acc_ref=DJR}} === 동사 === {{ja-verb|tr=타동사|type=2|いる}} # [[주조하다]] #: {{ux|ja|鐘を'''鋳る'''|かね を '''いる'''|종을 '''주조하다'''}} #: {{ux|ja|貨%幣を'''鋳る'''|か%へい を '''いる'''|화폐를 '''주조하다'''}} ==== 활용형 ==== {{ja-conj}} gsab1cxe0jtvfqdm9ouq28yfrtkpjp0 鑄る 0 448025 4388208 2025-07-07T03:24:40Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|鋳る}} 4388208 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|鋳る}} n5l8gxnpmff0j14pc6087ahq6ihj3tq 率る 0 448026 4388209 2025-07-07T03:28:19Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k|alt=将る|kyu=將る}} === 동사 === {{ja-verb|いる|type=2|tr=타동사|hhira=ゐる}} # {{라벨|ja|고어}} [[데리다|데리고]] [[가다]], [[인솔하다]] # {{라벨|ja|고어}} [[지니다]] ==== 활용형 ==== {{ja-conj}} 4388209 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k|alt=将る|kyu=將る}} === 동사 === {{ja-verb|いる|type=2|tr=타동사|hhira=ゐる}} # {{라벨|ja|고어}} [[데리다|데리고]] [[가다]], [[인솔하다]] # {{라벨|ja|고어}} [[지니다]] ==== 활용형 ==== {{ja-conj}} 8m80myy93626lm4z64u69q6uidhqequ 將る 0 448027 4388211 2025-07-07T03:34:21Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|率る}} 4388211 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|率る}} 14ka74jjgbg2oanl3v1ny37wa7nl6yq 将る 0 448028 4388212 2025-07-07T03:34:36Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|率る}} 4388212 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|率る}} 14ka74jjgbg2oanl3v1ny37wa7nl6yq 煎る 0 448029 4388213 2025-07-07T03:38:01Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k|alt=炒る,熬る}} === 발음 ==== {{ja-pron|いる|acc=1|acc_ref=SMK2,NHK}} === 동사 === {{ja-verb|いる|tr=타동사|type=1}} # [[볶다]], [[지지다]] #: {{ux|ja|豆を'''煎る'''|まめ を '''いる'''|콩을 '''볶다'''}} #: {{ux|ja|塩を'''煎って'''使う|しお を '''いって''' つかう|소금을 '''볶아서''' 사용하다}} ==== 활용형 ==== {{ja-conj}} 4388213 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k|alt=炒る,熬る}} === 발음 ==== {{ja-pron|いる|acc=1|acc_ref=SMK2,NHK}} === 동사 === {{ja-verb|いる|tr=타동사|type=1}} # [[볶다]], [[지지다]] #: {{ux|ja|豆を'''煎る'''|まめ を '''いる'''|콩을 '''볶다'''}} #: {{ux|ja|塩を'''煎って'''使う|しお を '''いって''' つかう|소금을 '''볶아서''' 사용하다}} ==== 활용형 ==== {{ja-conj}} pmribwahw442gh383gry9if3zpw57cc 炒る 0 448030 4388214 2025-07-07T03:39:30Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|煎る}} 4388214 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|煎る}} 91ca26nqen2cl55y1utfl8zhggwxaoa 熬る 0 448031 4388215 2025-07-07T03:39:43Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|煎る}} 4388215 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} {{ja-see|煎る}} 91ca26nqen2cl55y1utfl8zhggwxaoa 沃る 0 448032 4388218 2025-07-07T03:50:53Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる}} === 동사 === {{ja-verb|tr=타동사|type=2|いる}} # {{라벨|ja|고어}} [[물]]을 [[붓다]], [[뿌리다]], [[끼얹다]] ==== 활용형 ==== {{ja-conj}} 4388218 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる}} === 동사 === {{ja-verb|tr=타동사|type=2|いる}} # {{라벨|ja|고어}} [[물]]을 [[붓다]], [[뿌리다]], [[끼얹다]] ==== 활용형 ==== {{ja-conj}} 0iftxt7zc5kyb1j4kgj9d6yw9n0v43d 熟る 0 448033 4388219 2025-07-07T03:56:04Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる}} === 동사 === {{ja-verb|tr=자동사|type=1|いる}} # {{라벨|ja|고어}} (열매가) [[익다]] ==== 활용형 ==== {{ja-conj}} 4388219 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|い|yomi=k}} === 발음 === {{ja-pron|いる}} === 동사 === {{ja-verb|tr=자동사|type=1|いる}} # {{라벨|ja|고어}} (열매가) [[익다]] ==== 활용형 ==== {{ja-conj}} 234iitjncn9ol7zv1hzb3rdupjbof7x 顕れる 0 448034 4388223 2025-07-07T04:15:20Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|あらわ|yomi=k}} {{ja-see|現れる}} 4388223 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あらわ|yomi=k}} {{ja-see|現れる}} sxvmx8a9dy1urkibajdm82q7st0f8x0 顯れる 0 448035 4388224 2025-07-07T04:15:29Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|あらわ|yomi=k}} {{ja-see|現れる}} 4388224 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あらわ|yomi=k}} {{ja-see|現れる}} sxvmx8a9dy1urkibajdm82q7st0f8x0 現われる 0 448036 4388226 2025-07-07T04:16:21Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|あら|yomi=k}} {{ja-see|現れる}} 4388226 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あら|yomi=k}} {{ja-see|現れる}} cayga9wxk5pfozla5yl0cx6puor36nm 表われる 0 448037 4388227 2025-07-07T04:16:56Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|あら|yomi=k}} {{ja-see|現れる}} 4388227 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あら|yomi=k}} {{ja-see|現れる}} cayga9wxk5pfozla5yl0cx6puor36nm 露れる 0 448038 4388228 2025-07-07T04:17:17Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|あらわ|yomi=k}} {{ja-see|現れる}} 4388228 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|あらわ|yomi=k}} {{ja-see|現れる}} sxvmx8a9dy1urkibajdm82q7st0f8x0 馬鹿気る 0 448039 4388230 2025-07-07T04:57:52Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|ば|か|け|k3=げ|yomi=kanon,k,g}} {{ja-see|馬鹿げる}} 4388230 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|ば|か|け|k3=げ|yomi=kanon,k,g}} {{ja-see|馬鹿げる}} 2d3rop27dowbnpn8aqv7764fem7tar4 バカげる 0 448040 4388231 2025-07-07T04:58:34Z CHK2605 33979 새 문서: == 일본어 == {{ja-see|馬鹿げる}} 4388231 wikitext text/x-wiki == 일본어 == {{ja-see|馬鹿げる}} iuecpce0sz9r82425gl0w7wai5tcgy1 馬鹿氣る 0 448041 4388232 2025-07-07T04:58:48Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|ば|か|け|k3=げ|yomi=kanon,k,g}} {{ja-see|馬鹿げる}} 4388232 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|ば|か|け|k3=げ|yomi=kanon,k,g}} {{ja-see|馬鹿げる}} 2d3rop27dowbnpn8aqv7764fem7tar4 分かれる 0 448042 4388234 2025-07-07T05:20:18Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|わ|yomi=k|alt=分れる}} === 발음 === {{ja-pron|わかれる|acc=3}} === 동사 === {{ja-verb|わかれる|type=2|tr=자동사}} # (물리적으로) [[갈라지다]], [[나뉘다]] #: {{ux|ja|道が四方に'''分かれる'''|みち が しほう に '''わかれる'''|길이 사방으로 '''갈라지다'''}} #: {{ux|ja|二%手に'''分かれて'''敵を追う|ふた%て に '''わかれて''' てき を おう|두 패로 '''나뉘어''' 적... 4388234 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|わ|yomi=k|alt=分れる}} === 발음 === {{ja-pron|わかれる|acc=3}} === 동사 === {{ja-verb|わかれる|type=2|tr=자동사}} # (물리적으로) [[갈라지다]], [[나뉘다]] #: {{ux|ja|道が四方に'''分かれる'''|みち が しほう に '''わかれる'''|길이 사방으로 '''갈라지다'''}} #: {{ux|ja|二%手に'''分かれて'''敵を追う|ふた%て に '''わかれて''' てき を おう|두 패로 '''나뉘어''' 적을 쫓다}} # (구조적으로) [[나뉘다]], [[구성되다]] #: {{ux|ja|この本は大きく三つのパートに'''分かれる'''|この ほん は おおきく みっつ の パート に '''わかれる'''|이 책은 크게 세 부분으로 '''나뉜다'''}} #: {{ux|ja|物%語は三%章%節に'''分かれる'''|もの%がたり は さん%しょう%せつ に '''わかれる'''|이야기는 세 개의 장으로 '''구성된다'''}} # (의견, 운명 등이) [[갈리다]], [[차이]]가 [[나다]] #: {{ux|ja|意%見が'''分かれる'''|い%けん が '''わかれる'''|의견이 '''갈리다'''}} #: {{ux|ja|生存者と死%者との運命が'''分かれた'''場%所|せいぞんしゃ と し%しゃ との うんめい が '''わかれた''' ば%しょ|생존자와 사망자의 운명이 '''갈린''' 장소}} ==== 활용형 ==== {{ja-conj}} fut0utgfb7lf24xxspokxxjt9vjch1x 틀:ja-verb form 10 448043 4388236 2025-07-07T05:26:11Z CHK2605 33979 새 문서: <includeonly>{{#invoke:Jpan-headword|show|ja|verb forms}}</includeonly><noinclude>{{설명문서}}</noinclude> 4388236 wikitext text/x-wiki <includeonly>{{#invoke:Jpan-headword|show|ja|verb forms}}</includeonly><noinclude>{{설명문서}}</noinclude> cunqiz89j80bhmywfjmdnzyhuywzegh 押寄せる 0 448044 4388239 2025-07-07T05:44:34Z CHK2605 33979 새 문서: == 일본어 == {{ja-kanjitab|おし|よ|yomi=k}} {{ja-see|押し寄せる}} 4388239 wikitext text/x-wiki == 일본어 == {{ja-kanjitab|おし|よ|yomi=k}} {{ja-see|押し寄せる}} 7ormsxxvso9du4duboq00mp31qgxu3v おしよせる 0 448045 4388240 2025-07-07T05:45:16Z CHK2605 33979 새 문서: == 일본어 == {{ja-see|押し寄せる}} 4388240 wikitext text/x-wiki == 일본어 == {{ja-see|押し寄せる}} box7fjt73qw07c7ntdbhve8lld8l0e1 모듈:zh-glyph 828 448046 4388243 2025-07-07T08:51:43Z CHK2605 33979 새 문서: local concat = table.concat local insert = table.insert local load_data = mw.loadData local new_title = mw.title.new local process_params = require("Module:parameters").process local data = load_data("Module:zh/data/glyph-data") local export = {} function export.main(frame) local boolean = {type = "boolean"} local args = process_params(frame:getParent().args, { [1] = true, ["no_img"] = boolean, ["no_phon"] = boolean, }) local target_page = args[1] or load_data("Mo... 4388243 Scribunto text/plain local concat = table.concat local insert = table.insert local load_data = mw.loadData local new_title = mw.title.new local process_params = require("Module:parameters").process local data = load_data("Module:zh/data/glyph-data") local export = {} function export.main(frame) local boolean = {type = "boolean"} local args = process_params(frame:getParent().args, { [1] = true, ["no_img"] = boolean, ["no_phon"] = boolean, }) local target_page = args[1] or load_data("Module:headword/data").pagename local showEras, showScripts, showImgs, hideText = {}, {}, {}, {} local success, data_module = pcall(load_data, "Module:zh/data/glyph-data/" .. target_page) local char_data = { ["bronze"] = {}, ["oracle"] = {}, ["silk"] = {}, ["slip"] = {}, ["seal"] = {}, ["bigseal"] = {}, } local count = 0 if not args.no_img then for _, era in ipairs(data.eras) do local count_era = 0 for _, script in ipairs(era[2]) do local img_link = target_page .. "-" .. script .. ".svg" local img_file = new_title("Media:" .. img_link) if img_file.exists and not img_file.isRedirect then count = count + 1 count_era = count_era + 1 insert(showScripts, "\n!" .. data.scripts[script]) insert(showImgs, "\n| style=\"padding: 8px;\"|[[File:" .. img_link .. "|60px|class=mw-invert skin-invert]]") end end if count_era > 0 then insert(showEras, "\n! colspan=\"" .. count_era .. "\"|" .. era[1]) end end end if success then local img_count = 0 for _ in ipairs(data_module[1]) do img_count = img_count + 1 end success = success and new_title("Media:ACC-" .. data_module[1][img_count] .. ".svg").exists end if success then for _, img in ipairs(data_module[1]) do insert(char_data[data.script_abbrev[img:match("^.[\128-\191]*")]], '<div class="gallerybox" style="display:inline-block"' .. '><div style="text-align:center">[[File:ACC-' .. img .. '.svg|60px|class=mw-invert skin-invert]]<div class="gallerytext"><small>' .. img .. '</small></div></div></div>') end for i, script in ipairs(data.hide_scripts) do if char_data[script][1] then if i ~= 1 then insert(hideText, "<hr>") end insert(hideText, "<div class=\"gallery\"><div><b>" .. data.scripts[script] .. "</b></div>" .. concat(char_data[script]) .. "</div>") end end insert(hideText, '\n|- class="vsHide"\n| width="100%" align="left" colspan="' .. (count == 0 and 1 or count) .. '|\n<div class="standard-box mw-collapsible mw-collapsed"><b>참고 자료</b>:' .. '<div class="mw-collapsible-content">\n주로 리처드 시어스(Richard Sears)의 \' ' .. "[http://hanziyuan.net/#" .. target_page .. " 자원 사이트]([[c:Commons:Ancient Chinese characters/Richard Sears Agreement" .. "|승인됨]])에서 가져왔으며,<br>이는 다음을 포함한 고대 중국 한자의 다양한 자료를 기반으로 한다" .. ", including:\n* ''설문해자'' (소전), \n* ''금문편'' (금문)" .. ", \n* ''육서통'' (육서통 자체) and \n* ''은허 갑골문'' (갑골문).</div></div>") end local glyph_forms if ( success or count > 0 ) and not args.no_img then glyph_forms = "<div style=\"overflow:auto;width:fit-content;max-width:100%\">\n" .. [=[{| class="wikitable zh-glyph]=] .. (success and ' vsSwitcher" data-toggle-category="forms' or "") .. [=[" cellpadding=7 style="border-spacing: 1px; border: 1px solid darkgray; text-align:center" ! class="vsToggleElement" colspan="]=] .. (count == 0 and 1 or count) .. [=[" |<span lang="zh-Hant" class="Hani">]=] .. target_page .. [=[</span>의 역사적 형태]=] .. (count > 0 and "\n|-" .. concat(showEras) .. "\n|-" .. concat(showScripts) .. "\n|-" .. concat(showImgs) or "") .. (success and "\n|- class=\"vsHide\"\n| align=\"center\" colspan=\"" .. (count == 0 and 1 or count) .. "|" .. concat(hideText, "") or "") .. "\n|}\n</div>" else glyph_forms = "" end local phonText = {} local list = load_data("Module:zh-glyph/phonetic/list") local phonComp = list[target_page] or nil if phonComp and not args.no_phon then insert(phonText, '\n' .. '<div class="NavFrame" style="border:0px; max-width: 37em; text-align:center;">' .. '<div class="NavHead" style="font-size:105%; border:1px solid var(--border-color-base, #a2a9b1); background-color:var(--wikt-palette-indigo-3, #e0defa); text-align:center; margin:0">' .. '동일한 [[위키낱말사전:중국어/형성자 계열|형성자 계열]]의 글자' .. ' (<span class="Hani">[[' .. phonComp .. ']]</span>)' .. ' <small>([[위키낱말사전:중국어/참고 문헌|Zhengzhang, 2003]])</small>&nbsp; ' .. '</div>' .. '<div class="NavContent" style="border-top: 0">' .. '\n{| class="wikitable zh-glyph" style="margin-top: 0; width: 100%; display: table; border-top: 0"' .. '\n|-\n! align="center" style="border-top: 0"|\n! style="border-top: 0" | Old Chinese' ) local phonData = load_data("Module:zh-glyph/phonetic") local m_och = require("Module:och-pron").retrieve_pron for item in phonData[phonComp]:gmatch(".[\128-\191]*") do insert(phonText, '\n|-\n| align="center" |<span class="Hani">[[' .. item .. '#중국어|' .. item .. ']]</span>') local IPA = m_och(item, nil, true) if IPA then insert(phonText, '\n|<small><span class="IPA">' .. IPA .. '</span></small>') end end insert(phonText, '\n|}\n</div></div>') end return glyph_forms .. concat(phonText) end return export hem30eeyrz3tmjqgrzelsebs6yjd2qr 4388244 4388243 2025-07-07T08:52:05Z CHK2605 33979 4388244 Scribunto text/plain local concat = table.concat local insert = table.insert local load_data = mw.loadData local new_title = mw.title.new local process_params = require("Module:parameters").process local data = load_data("Module:zh/data/glyph-data") local export = {} function export.main(frame) local boolean = {type = "boolean"} local args = process_params(frame:getParent().args, { [1] = true, ["no_img"] = boolean, ["no_phon"] = boolean, }) local target_page = args[1] or load_data("Module:headword/data").pagename local showEras, showScripts, showImgs, hideText = {}, {}, {}, {} local success, data_module = pcall(load_data, "Module:zh/data/glyph-data/" .. target_page) local char_data = { ["bronze"] = {}, ["oracle"] = {}, ["silk"] = {}, ["slip"] = {}, ["seal"] = {}, ["bigseal"] = {}, } local count = 0 if not args.no_img then for _, era in ipairs(data.eras) do local count_era = 0 for _, script in ipairs(era[2]) do local img_link = target_page .. "-" .. script .. ".svg" local img_file = new_title("Media:" .. img_link) if img_file.exists and not img_file.isRedirect then count = count + 1 count_era = count_era + 1 insert(showScripts, "\n!" .. data.scripts[script]) insert(showImgs, "\n| style=\"padding: 8px;\"|[[File:" .. img_link .. "|60px|class=mw-invert skin-invert]]") end end if count_era > 0 then insert(showEras, "\n! colspan=\"" .. count_era .. "\"|" .. era[1]) end end end if success then local img_count = 0 for _ in ipairs(data_module[1]) do img_count = img_count + 1 end success = success and new_title("Media:ACC-" .. data_module[1][img_count] .. ".svg").exists end if success then for _, img in ipairs(data_module[1]) do insert(char_data[data.script_abbrev[img:match("^.[\128-\191]*")]], '<div class="gallerybox" style="display:inline-block"' .. '><div style="text-align:center">[[File:ACC-' .. img .. '.svg|60px|class=mw-invert skin-invert]]<div class="gallerytext"><small>' .. img .. '</small></div></div></div>') end for i, script in ipairs(data.hide_scripts) do if char_data[script][1] then if i ~= 1 then insert(hideText, "<hr>") end insert(hideText, "<div class=\"gallery\"><div><b>" .. data.scripts[script] .. "</b></div>" .. concat(char_data[script]) .. "</div>") end end insert(hideText, '\n|- class="vsHide"\n| width="100%" align="left" colspan="' .. (count == 0 and 1 or count) .. '|\n<div class="standard-box mw-collapsible mw-collapsed"><b>참고 문헌</b>:' .. '<div class="mw-collapsible-content">\n주로 리처드 시어스(Richard Sears)의 \' ' .. "[http://hanziyuan.net/#" .. target_page .. " 자원 사이트]([[c:Commons:Ancient Chinese characters/Richard Sears Agreement" .. "|승인됨]])에서 가져왔으며,<br>이는 다음을 포함한 고대 중국 한자의 다양한 자료를 기반으로 한다" .. ", including:\n* ''설문해자'' (소전), \n* ''금문편'' (금문)" .. ", \n* ''육서통'' (육서통 자체) and \n* ''은허 갑골문'' (갑골문).</div></div>") end local glyph_forms if ( success or count > 0 ) and not args.no_img then glyph_forms = "<div style=\"overflow:auto;width:fit-content;max-width:100%\">\n" .. [=[{| class="wikitable zh-glyph]=] .. (success and ' vsSwitcher" data-toggle-category="forms' or "") .. [=[" cellpadding=7 style="border-spacing: 1px; border: 1px solid darkgray; text-align:center" ! class="vsToggleElement" colspan="]=] .. (count == 0 and 1 or count) .. [=[" |<span lang="zh-Hant" class="Hani">]=] .. target_page .. [=[</span>의 역사적 형태]=] .. (count > 0 and "\n|-" .. concat(showEras) .. "\n|-" .. concat(showScripts) .. "\n|-" .. concat(showImgs) or "") .. (success and "\n|- class=\"vsHide\"\n| align=\"center\" colspan=\"" .. (count == 0 and 1 or count) .. "|" .. concat(hideText, "") or "") .. "\n|}\n</div>" else glyph_forms = "" end local phonText = {} local list = load_data("Module:zh-glyph/phonetic/list") local phonComp = list[target_page] or nil if phonComp and not args.no_phon then insert(phonText, '\n' .. '<div class="NavFrame" style="border:0px; max-width: 37em; text-align:center;">' .. '<div class="NavHead" style="font-size:105%; border:1px solid var(--border-color-base, #a2a9b1); background-color:var(--wikt-palette-indigo-3, #e0defa); text-align:center; margin:0">' .. '동일한 [[위키낱말사전:중국어/형성자 계열|형성자 계열]]의 글자' .. ' (<span class="Hani">[[' .. phonComp .. ']]</span>)' .. ' <small>([[위키낱말사전:중국어/참고 문헌|Zhengzhang, 2003]])</small>&nbsp; ' .. '</div>' .. '<div class="NavContent" style="border-top: 0">' .. '\n{| class="wikitable zh-glyph" style="margin-top: 0; width: 100%; display: table; border-top: 0"' .. '\n|-\n! align="center" style="border-top: 0"|\n! style="border-top: 0" | Old Chinese' ) local phonData = load_data("Module:zh-glyph/phonetic") local m_och = require("Module:och-pron").retrieve_pron for item in phonData[phonComp]:gmatch(".[\128-\191]*") do insert(phonText, '\n|-\n| align="center" |<span class="Hani">[[' .. item .. '#중국어|' .. item .. ']]</span>') local IPA = m_och(item, nil, true) if IPA then insert(phonText, '\n|<small><span class="IPA">' .. IPA .. '</span></small>') end end insert(phonText, '\n|}\n</div></div>') end return glyph_forms .. concat(phonText) end return export cutl77umkcu88u9igmrtb32z9gmbg96 4388256 4388244 2025-07-07T10:59:08Z CHK2605 33979 4388256 Scribunto text/plain local concat = table.concat local insert = table.insert local load_data = mw.loadData local new_title = mw.title.new local process_params = require("Module:parameters").process local data = load_data("Module:zh/data/glyph-data") local export = {} function export.main(frame) local boolean = {type = "boolean"} local args = process_params(frame:getParent().args, { [1] = true, ["no_img"] = boolean, ["no_phon"] = boolean, }) local target_page = args[1] or load_data("Module:headword/data").pagename local showEras, showScripts, showImgs, hideText = {}, {}, {}, {} local success, data_module = pcall(load_data, "Module:zh/data/glyph-data/" .. target_page) local char_data = { ["bronze"] = {}, ["oracle"] = {}, ["silk"] = {}, ["slip"] = {}, ["seal"] = {}, ["bigseal"] = {}, } local count = 0 if not args.no_img then for _, era in ipairs(data.eras) do local count_era = 0 for _, script in ipairs(era[2]) do local img_link = target_page .. "-" .. script .. ".svg" local img_file = new_title("Media:" .. img_link) if img_file.exists and not img_file.isRedirect then count = count + 1 count_era = count_era + 1 insert(showScripts, "\n!" .. data.scripts[script]) insert(showImgs, "\n| style=\"padding: 8px;\"|[[File:" .. img_link .. "|60px|class=mw-invert skin-invert]]") end end if count_era > 0 then insert(showEras, "\n! colspan=\"" .. count_era .. "\"|" .. era[1]) end end end if success then local img_count = 0 for _ in ipairs(data_module[1]) do img_count = img_count + 1 end success = success and new_title("Media:ACC-" .. data_module[1][img_count] .. ".svg").exists end if success then for _, img in ipairs(data_module[1]) do insert(char_data[data.script_abbrev[img:match("^.[\128-\191]*")]], '<div class="gallerybox" style="display:inline-block"' .. '><div style="text-align:center">[[File:ACC-' .. img .. '.svg|60px|class=mw-invert skin-invert]]<div class="gallerytext"><small>' .. img .. '</small></div></div></div>') end for i, script in ipairs(data.hide_scripts) do if char_data[script][1] then if i ~= 1 then insert(hideText, "<hr>") end insert(hideText, "<div class=\"gallery\"><div><b>" .. data.scripts[script] .. "</b></div>" .. concat(char_data[script]) .. "</div>") end end insert(hideText, '\n|- class="vsHide"\n| width="100%" align="left" colspan="' .. (count == 0 and 1 or count) .. '|\n<div class="standard-box mw-collapsible mw-collapsed"><b>참고 문헌</b>:' .. '<div class="mw-collapsible-content">\n주로 리처드 시어스(Richard Sears)의 \' ' .. "[http://hanziyuan.net/#" .. target_page .. " 자원 사이트]([[c:Commons:Ancient Chinese characters/Richard Sears Agreement" .. "|승인됨]])에서 가져왔으며,<br>이는 다음을 포함한 고대 중국 한자의 다양한 자료를 기반으로 한다" .. ", including:\n* ''설문해자'' (소전), \n* ''금문편'' (금문)" .. ", \n* ''육서통'' (육서통 자체) and \n* ''은허 갑골문'' (갑골문).</div></div>") end local glyph_forms if ( success or count > 0 ) and not args.no_img then glyph_forms = "<div style=\"overflow:auto;width:fit-content;max-width:100%\">\n" .. [=[{| class="wikitable zh-glyph]=] .. (success and ' vsSwitcher" data-toggle-category="forms' or "") .. [=[" cellpadding=7 style="border-spacing: 1px; border: 1px solid darkgray; text-align:center" ! class="vsToggleElement" colspan="]=] .. (count == 0 and 1 or count) .. [=[" |<span lang="zh-Hant" class="Hani">]=] .. target_page .. [=[</span>의 역사적 형태]=] .. (count > 0 and "\n|-" .. concat(showEras) .. "\n|-" .. concat(showScripts) .. "\n|-" .. concat(showImgs) or "") .. (success and "\n|- class=\"vsHide\"\n| align=\"center\" colspan=\"" .. (count == 0 and 1 or count) .. "|" .. concat(hideText, "") or "") .. "\n|}\n</div>" else glyph_forms = "" end local phonText = {} local list = load_data("Module:zh-glyph/phonetic/list") local phonComp = list[target_page] or nil if phonComp and not args.no_phon then insert(phonText, '\n' .. '<div class="NavFrame" style="border:0px; max-width: 37em; text-align:center;">' .. '<div class="NavHead" style="font-size:105%; border:1px solid var(--border-color-base, #a2a9b1); background-color:var(--wikt-palette-indigo-3, #e0defa); text-align:center; margin:0">' .. '동일한 [[위키낱말사전:중국어/형성자 계열|형성자 계열]]의 글자' .. ' (<span class="Hani">[[' .. phonComp .. ']]</span>)' .. ' <small>([[위키낱말사전:중국어/참고 문헌|Zhengzhang, 2003]])</small>&nbsp; ' .. '</div>' .. '<div class="NavContent" style="border-top: 0">' .. '\n{| class="wikitable zh-glyph" style="margin-top: 0; width: 100%; display: table; border-top: 0"' .. '\n|-\n! align="center" style="border-top: 0"|\n! style="border-top: 0" | 상고음' ) local phonData = load_data("Module:zh-glyph/phonetic") local m_och = require("Module:och-pron").retrieve_pron for item in phonData[phonComp]:gmatch(".[\128-\191]*") do insert(phonText, '\n|-\n| align="center" |<span class="Hani">[[' .. item .. '#중국어|' .. item .. ']]</span>') local IPA = m_och(item, nil, true) if IPA then insert(phonText, '\n|<small><span class="IPA">' .. IPA .. '</span></small>') end end insert(phonText, '\n|}\n</div></div>') end return glyph_forms .. concat(phonText) end return export 9zhnim9rg0heftcfdwzlw4rkdeuq3r5 모듈:zh/data/glyph-data 828 448047 4388245 2025-07-07T09:36:44Z CHK2605 33979 새 문서: local data = {} data.eras = { { "[[w:상나라|상나라]]", { "bronze-shang", "oracle" } }, { "[[w:서주|서주]]", { "bronze", "oracle-zhouyuan" } }, { "[[w:춘추 시대|춘추 시대]]", { "bronze-spring" } }, { "[[w:전국 시대|전국 시대]]", { "bronze-warring", "silk", "slip" } }, { "『[[w:설문해자|설문해자]]』<br> ([[w:한나라|후한대]] [[w:허신 (후한)|허신]] 편찬)", { "zhou", "ancient", "odd", "seal", "vulgar" } }, { "『한간』<br> (... 4388245 Scribunto text/plain local data = {} data.eras = { { "[[w:상나라|상나라]]", { "bronze-shang", "oracle" } }, { "[[w:서주|서주]]", { "bronze", "oracle-zhouyuan" } }, { "[[w:춘추 시대|춘추 시대]]", { "bronze-spring" } }, { "[[w:전국 시대|전국 시대]]", { "bronze-warring", "silk", "slip" } }, { "『[[w:설문해자|설문해자]]』<br> ([[w:한나라|후한대]] [[w:허신 (후한)|허신]] 편찬)", { "zhou", "ancient", "odd", "seal", "vulgar" } }, { "『한간』<br> ([[w:송나라|송대]] 곽충서 편찬)", { "hanjian" } }, { "『고문사성운』<br> ([[w:송나라|송대]] 편찬)", { "GWSSY" } }, { "『집전고문운해』<br> ([[w:송나라|송대]] 편찬)", { "JZGWYH" } }, { "『육서통』<br> ([[w:명나라|명대]] 민제급 편찬)", { "bigseal" } }, { "『예변』<br> ([[w:청나라|청대]] 고애길 편찬)", { "clerical" } }, { "[[w:개성석경|개성석경]]", { "kai-Kaicheng" } }, { "『[[w:강희자전|강희자전]]』<br> ([[w:청나라|청대]] 편찬)", { "mingti-Kangxi" } }, } data.scripts = { ["bronze-shang"] = "[[w:금문|금문]]", ["oracle"] = "[[w:갑골 문자|갑골 문자]]", ["oracle-zhouyuan"] = "[[w:갑골 문자|갑골 문자]]", ["bronze"] = "[[w:금문|금문]]", ["bronze-spring"] = "[[w:금문|금문]]", ["bronze-warring"] = "[[w:금문|금문]]", ["silk"] = "[[w:간독|초계 간백 문자]]", ["slip"] = "[[w:간독|진계 간독 문자]]", ["zhou"] = "[[w:주문 (한자 서체)|주문]]", ["ancient"] = "고문자", ["odd"] = "벽자", ["seal"] = "[[w:소전|소전]]", ["vulgar"] = "[[w:속자|속자]]", ["bigseal"] = "[[w:대전 (서체)|대전]] 전사체", ["hanjian"] = "고문자 전사체", ["GWSSY"] = "고문자 전사체", ["JZGWYH"] = "고문자 전사체", ["clerical"] = "[[w:예서|예서]]", ["kai-Kaicheng"] = "[[w:해서 (서체)|해서]]", ["mingti-Kangxi"] = "[[w:명조체|명조체]]", } data.hide_scripts = { "oracle", "bronze", "seal", "bigseal" } data.script_abbrev = { ["B"] = "bronze", ["b"] = "bronze", ["31"] = "bronze", ["32"] = "bronze", ["33"] = "bronze", ["34"] = "bronze", ["j"] = "oracle", ["41"] = "oracle", ["42"] = "oracle", ["43"] = "oracle", ["51"] = "silk", ["52"] = "silk", ["53"] = "silk", ["71"] = "slip", ["Q"] = "slip", ["S"] = "silk", ["s"] = "seal", ["27"] = "seal", ["L"] = "bigseal", } return data tgvdo55pyoi46aw45dk5hvm7zsuocd4 모듈:Scribunto 828 448048 4388247 2025-07-07T09:45:32Z CHK2605 33979 새 문서: local export = {} local math_module = "Module:math" local dump = mw.dumpObject local format = string.format local gsub = string.gsub local match = string.match local php_trim -- defined below local sub = string.sub local tonumber = tonumber local tostring = tostring local type = type do local php_htmlspecialchars_data local function get_php_htmlspecialchars_data() php_htmlspecialchars_data, get_php_htmlspecialchars_data = { ["\""] = "&quot;", ["&"] = "&amp;", ["'... 4388247 Scribunto text/plain local export = {} local math_module = "Module:math" local dump = mw.dumpObject local format = string.format local gsub = string.gsub local match = string.match local php_trim -- defined below local sub = string.sub local tonumber = tonumber local tostring = tostring local type = type do local php_htmlspecialchars_data local function get_php_htmlspecialchars_data() php_htmlspecialchars_data, get_php_htmlspecialchars_data = { ["\""] = "&quot;", ["&"] = "&amp;", ["'"] = "&#039;", ["<"] = "&lt;", [">"] = "&gt;", }, nil return php_htmlspecialchars_data end --[==[Lua equivalent of PHP's {{code|php|htmlspecialchars($string)}}, which converts the characters `&"'<>` to HTML entities. If the `quotes` flag is set to {"compat"}, then `'` will not be converted, and if it is set to {"noquotes"}, then neither `"` nor `'` will be converted.]==] function export.php_htmlspecialchars(str, quotes) if quotes == nil or quotes == "quotes" then quotes = "'\"" elseif quotes == "compat" then quotes = "\"" elseif quotes == "noquotes" then quotes = "" else local quotes_type = type(quotes) error('`quotes` must be "quotes", "compat", "noquotes" or nil; received ' .. (quotes_type == "string" and dump(quotes) or "a " .. quotes_type)) end return (gsub(str, "[&<>" .. quotes .. "]", php_htmlspecialchars_data or get_php_htmlspecialchars_data())) end end do local function tonumber_extended(...) tonumber_extended = require(math_module).tonumber_extended return tonumber_extended(...) end -- Normalizes a string for use in comparisons which emulate PHP's equals -- operator, which coerces certain strings to numbers: those within the -- range -2^63 to 2^63 - 1 which don't have decimal points or exponents are -- coerced to integers, while any others are coerced to doubles if possible; -- otherwise, they remain as strings. PHP and Lua have the same precision -- for doubles, but Lua's integer precision range is -2^53 + 1 to 2^53 - 1. -- Any integers within Lua's precision, as well as all doubles, are simply -- coerced to numbers, but PHP integers outside of Lua's precision are -- emulated as normalized strings, with leading 0s and any + sign removed. -- The `not_long` flag is used for the second comparator if the first did -- not get normalized to a long integer, as PHP will only coerce strings to -- integers if it's possible for both comparators. local function php_normalize_string(str, not_long) local num = tonumber_extended(str, nil, true) -- Must be a number that isn't ±infinity, NaN or hexadecimal. if not num or match(str, "^%s*[+-]?0[xX]()") then return str -- If `not_long` is set or `num` is within Lua's precision, return as a -- number. elseif not_long or num < 9007199254740992 and num > -9007199254740992 then return num, "number" end -- Check if it could be a long integer, and return as a double if not. local sign, str_no_0 = match(str, "^%s*([+-]?)0*(%d+)$") if not str_no_0 then return num, "number" end -- Otherwise, check if it's a long integer. 2^63 is 9223372036854775808, -- so slice off the last 15 digits and deal with the two parts -- separately. If the integer value would be too high/low, return as a -- string. local high = tonumber(sub(str_no_0, 1, -16)) if high > 9223 then return str elseif high == 9223 then local low = tonumber(sub(str_no_0, -15)) -- Range is -2^63 to 2^63 - 1 (not symmetrical). if low > 372036854775808 or low == 372036854775808 and sign ~= "-" then return str end end return (sign == "+" and "" or sign) .. str_no_0, "long integer", num end --[==[Lua equivalent of PHP's {{code|php|===}} operator for strings.]==] function export.php_string_equals(str1, str2) if str1 == str2 then return true end local str1, str1_type, str1_num = php_normalize_string(str1) if str1 == str2 then return true elseif str1_type == "long integer" then local str2, str2_type = php_normalize_string(str2) return str2 == (str2_type == "number" and str1_num or str1) elseif str1_type == "number" then return str1 == php_normalize_string(str2, true) end return false end end --[==[Lua equivalent of PHP's {{code|php|trim($string)}}, which trims {"\0"}, {"\t"}, {"\n"}, {"\v"}, {"\r"} and {" "}. This is useful when dealing with template parameters, since the native parser trims them like this.]==] function export.php_trim(str) return match(str, "[^ \t-\v\r%z].*%f[ \t-\v\r%z]") or "" end php_trim = export.php_trim --[==[Lua equivalent of PHP's {{code|php|ltrim($string)}}, which trims {"\0"}, {"\t"}, {"\n"}, {"\v"}, {"\r"} and {" "} from the beginning of the input string.]==] function export.php_ltrim(str) return (gsub(str, "^[ \t-\v\r%z]+", "")) end --[==[Lua equivalent of PHP's {{code|php|rtrim($string)}}, which trims {"\0"}, {"\t"}, {"\n"}, {"\v"}, {"\r"} and {" "} from the end of the input string.]==] function export.php_rtrim(str) return match(str, "^.+%f[ \t-\v\r%z]") or "" end --[==[Takes a template or module parameter name as either a string or number, and returns the Scribunto-normalized form (i.e. the key that that parameter would have in a {frame.args} table). For example, {"1"} (a string) is normalized to {1} (a number), {" foo "} is normalized to {"foo"}, and {1.5} (a number) is normalized to {"1.5"} (a string). Inputs which cannot be normalized (e.g. booleans) return {nil}. Strings are trimmed with {export.php_trim}, unless the `no_trim` flag is set. If it is, then string parameters are not trimmed, but strings may still be converted to numbers if they do not contain whitespace; this is necessary when normalizing keys into the form received by PHP during callbacks, before any trimming occurs (e.g. in the table of arguments when calling {frame:expandTemplates()}). After trimming (if applicable), keys are then converted to numbers if '''all''' of the following are true: # They are integers; i.e. no decimals or leading zeroes (e.g. {"2"}, but not {"2.0"} or {"02"}). # They are ≤ 2{{sup|53}} and ≥ -2{{sup|53}}. # There is no leading sign unless < 0 (e.g. {"2"} or {"-2"}, but not {"+2"} or {"-0"}). # They contain no leading or trailing whitespace (which may be present when the `no_trim` flag is set). Numbers are converted to strings if '''either''': # They are not integers (e.g. {1.5}). # They are > 2{{sup|53}} or < -2{{sup|53}}. When converted to strings, integers ≤ 2{{sup|63}} and ≥ -2{{sup|63}} are formatted as integers (i.e. all digits are given), which is the range of PHP's integer precision, though the actual output may be imprecise since Lua's integer precision is > 2{{sup|53}} to < -2{{sup|53}}. All other numbers use the standard formatting output by {tostring()}.]==] function export.scribunto_parameter_key(key, no_trim) local key_type = type(key) if key_type == "string" then if not no_trim then key = php_trim(key) end if match(key, "^()-?[1-9]%d*$") then local num = tonumber(key) -- Lua integers are only precise to 2^53 - 1, so specifically check -- for 2^53 and -2^53 as strings, since a numerical comparison won't -- work as it can't distinguish 2^53 from 2^53 + 1. return ( num <= 9007199254740991 and num >= -9007199254740991 or key == "9007199254740992" or key == "-9007199254740992" ) and num or key end return key == "0" and 0 or key elseif key_type == "number" then -- No special handling needed for inf or NaN. return key % 1 == 0 and ( key <= 9007199254740992 and key >= -9007199254740992 and key or key <= 9223372036854775808 and key >= -9223372036854775808 and format("%d", key) ) or tostring(key) end return nil end --[==[Takes a template or module parameter value as either a string, number or boolean, and returns the Scribunto-normalized form (i.e. the value that that parameter would have in a {frame.args} table), which is always a string. For example, {"foo"} remains the same, {2} (a number) is normalized to {"2"} (a string), {true} is normalized to {"1"}, and {false} is normalized to {""}. Inputs which cannot be normalized (e.g. tables) return {nil}. By default, returned values are not trimmed, which matches the treatment of unnamed parameters (e.g. `bar` in {{tl|<nowiki/>foo|bar}}). If the `named` flag is set, then returned values will be trimmed, which matches the treatment of named parameters (e.g. `baz` in {{tl|<nowiki/>foo|bar=baz}}).]==] function export.scribunto_parameter_value(value, named) local value_type = type(value) if value_type == "string" then return named and php_trim(value) or value elseif value_type == "number" then return tostring(value) elseif value_type == "boolean" then return value and "1" or "" end return nil end return export 90dvo9iqmpdordtuzghbnnl9rw4476r 모듈:parameters/track 828 448049 4388249 2025-07-07T09:51:26Z CHK2605 33979 새 문서: local debug_track_module = "Module:debug/track" local string_gline_module = "Module:string/gline" local match = string.match local new_title = mw.title.new local require = require local traceback = debug.traceback local function debug_track(...) debug_track = require(debug_track_module) return debug_track(...) end local function gline(...) gline = require(string_gline_module) return gline(...) end local params_title local function get_params_title() params_title, get_pa... 4388249 Scribunto text/plain local debug_track_module = "Module:debug/track" local string_gline_module = "Module:string/gline" local match = string.match local new_title = mw.title.new local require = require local traceback = debug.traceback local function debug_track(...) debug_track = require(debug_track_module) return debug_track(...) end local function gline(...) gline = require(string_gline_module) return gline(...) end local params_title local function get_params_title() params_title, get_params_title = new_title("parameters", 828), nil return params_title end return function(page, param_name) debug_track("parameters/" .. page) if param_name ~= nil then debug_track("parameters/" .. page .. "/" .. param_name .. "=") end -- Check through the traceback to get the calling module and function. local mod_title for line in gline((traceback())) do local mod, func = match(line, "^\t*(.-):%d+: in function (.*)$") -- Must match a conventional module, not a tail call, C function, in- -- built Scribunto file etc. If `mod` matches `mod_title`, it means the -- module has been seen before, so there is nothing else to check. if mod and not (mod_title and mod == mod_title.prefixedText) then mod_title = new_title(mod) if mod_title and mod_title.namespace == 828 and not ( mod_title == (params_title or get_params_title()) or mod_title:isSubpageOf(params_title) ) then mod = mod_title.text debug_track("parameters/" .. page .. "/" .. mod) -- traceback() encloses function names in single quotes. local funcname = match(func, "^'(.*)'$") if funcname then debug_track("parameters/" .. page .. "/" .. mod .. "/" .. funcname) return end -- WHen a function is unnamed, line numbers are given after the -- module name in angle brackets, directly after a separating -- colon. local funcline = match(func, "^<.-:(%d+)>$") if funcline then debug_track("parameters/" .. page .. "/" .. mod .. ":" .. funcline) end return end end end end ep6rfkuslbwvncu36j3fa17iqe4seb6 모듈:string/gline 828 448050 4388250 2025-07-07T09:52:29Z CHK2605 33979 새 문서: local error = error local find = string.find local gmatch = string.gmatch local match = string.match local sub = string.sub --[==[ Iterates over the lines in a string, treating {"\n"}, {"\r"} and {"\r\n"} as new lines. The optional {skip} parameter determines whether certain lines are skipped: * {NONE}: none (default). * {EMPTY}: empty lines: lines with a length of 0, consisting of no characters. * {BLANK}: blank lines: empty lines and lines which only consist of whitespace ch... 4388250 Scribunto text/plain local error = error local find = string.find local gmatch = string.gmatch local match = string.match local sub = string.sub --[==[ Iterates over the lines in a string, treating {"\n"}, {"\r"} and {"\r\n"} as new lines. The optional {skip} parameter determines whether certain lines are skipped: * {NONE}: none (default). * {EMPTY}: empty lines: lines with a length of 0, consisting of no characters. * {BLANK}: blank lines: empty lines and lines which only consist of whitespace characters.]==] return function(str, skip) -- Use gmatch() for EMPTY and BLANK, for speed. if skip == "EMPTY" then return gmatch(str, "[^\n\r]+") elseif skip == "BLANK" then return gmatch(str, "[^\n\r]-%S[^\n\r]*") elseif not (skip == nil or skip == "NONE") then error("bad argument #2 to 'string/gline' (expected NONE, EMPTY or BLANK)", 2) end local start, linechar, flag = 1 if not find(str, "\n", nil, true) then if not find(str, "\r", nil, true) then -- No newlines: return `str` on the first iteration then end. return function() if flag then return end flag = true return str end end linechar = "\r" elseif find(str, "\r", nil, true) then -- Newline could be "\n", "\r" or "\r\n" (but not "\n\r"). return function() if not flag then local line, nl, pos = match(str, "^([^\n\r]*)([\n\r]\n?)()", start) if not line then flag = true return sub(str, start) end -- If `nl` is "\r\n" it should be treated as a single newline, -- but if it's "\n\n" it needs to be treated as two separate -- newlines, so set `flag` to 2 to avoid an unnecessary match() -- call on the next iteration. if nl == "\n\n" then flag = 2 end start = pos return line elseif flag == 2 then flag = nil return "" end end else linechar = "\n" end -- Newline is either "\n" or "\r", depending on which has been found. return function() if flag then return end local pos = find(str, linechar, start, true) if not pos then flag = true return sub(str, start) end local line = sub(str, start, pos - 1) start = pos + 1 return line end end r6wdku3u8kbsa2pnl1f07kxp328mzdt 모듈:zh-glyph/phonetic/list 828 448051 4388252 2025-07-07T09:54:37Z CHK2605 33979 새 문서: return { ["愛"] = "愛", ["曖"] = "愛", ["僾"] = "愛", ["靉"] = "愛", ["薆"] = "愛", ["璦"] = "愛", ["瞹"] = "愛", ["安"] = "安", ["鞍"] = "安", ["鞌"] = "安", ["侒"] = "安", ["按"] = "安", ["案"] = "安", ["洝"] = "安", ["荌"] = "安", ["晏"] = "安", ["鴳"] = "安", ["騴"] = "安", ["鷃"] = "安", ["頞"] = "安", ["胺"] = "安", ["咹"] = "安", ["卬"] = "卬", ["枊"] = "卬", ["昂"] = "卬", ["仰"] = "卬", ["迎... 4388252 Scribunto text/plain return { ["愛"] = "愛", ["曖"] = "愛", ["僾"] = "愛", ["靉"] = "愛", ["薆"] = "愛", ["璦"] = "愛", ["瞹"] = "愛", ["安"] = "安", ["鞍"] = "安", ["鞌"] = "安", ["侒"] = "安", ["按"] = "安", ["案"] = "安", ["洝"] = "安", ["荌"] = "安", ["晏"] = "安", ["鴳"] = "安", ["騴"] = "安", ["鷃"] = "安", ["頞"] = "安", ["胺"] = "安", ["咹"] = "安", ["卬"] = "卬", ["枊"] = "卬", ["昂"] = "卬", ["仰"] = "卬", ["迎"] = "卬", ["熬"] = "敖", ["敖"] = "敖", ["嗷"] = "敖", ["螯"] = "敖", ["聱"] = "敖", ["驁"] = "敖", ["鰲"] = "敖", ["遨"] = "敖", ["獒"] = "敖", ["滶"] = "敖", ["蔜"] = "敖", ["鷔"] = "敖", ["鼇"] = "敖", ["謷"] = "敖", ["嶅"] = "敖", ["嗸"] = "敖", ["摮"] = "敖", ["嫯"] = "敖", ["鏊"] = "敖", ["傲"] = "敖", ["磝"] = "敖", ["襖"] = "奧", ["懊"] = "奧", ["燠"] = "奧", ["奧"] = "奧", ["墺"] = "奧", ["隩"] = "奧", ["澳"] = "奧", ["噢"] = "奧", ["薁"] = "奧", ["䉛"] = "奧", ["扒"] = "八", ["八"] = "八", ["𩡩"] = "八", ["朳"] = "八", ["玐"] = "八", ["釟"] = "八", ["汃"] = "八", ["巴"] = "巴", ["芭"] = "巴", ["笆"] = "巴", ["豝"] = "巴", ["鈀"] = "巴", ["吧"] = "巴", ["蚆"] = "巴", ["疤"] = "巴", ["把"] = "巴", ["爸"] = "巴", ["弝"] = "巴", ["靶"] = "巴", ["葩"] = "巴", ["舥"] = "巴", ["妑"] = "巴", ["帊"] = "巴", ["琶"] = "巴", ["爬"] = "巴", ["杷"] = "巴", ["跁"] = "巴", ["耙"] = "巴", ["軷"] = "犮", ["韍"] = "犮", ["祓"] = "犮", ["蛂"] = "犮", ["拔"] = "犮", ["菝"] = "犮", ["袚"] = "犮", ["茇"] = "犮", ["盋"] = "犮", ["帗"] = "犮", ["跋"] = "犮", ["魃"] = "犮", ["䣮"] = "犮", ["馛"] = "犮", ["炦"] = "犮", ["颰"] = "犮", ["妭"] = "犮", ["犮"] = "犮", ["胈"] = "犮", ["鈸"] = "犮", ["苃"] = "犮", ["坺"] = "犮", ["髮"] = "犮", ["冹"] = "犮", ["瞂"] = "犮", ["紱"] = "犮", ["黻"] = "犮", ["翇"] = "犮", ["發"] = "癹", ["癹"] = "癹", ["擺"] = "罷", ["犤"] = "罷", ["罷"] = "罷", ["矲"] = "罷", ["羆"] = "罷", ["襬"] = "罷", ["藣"] = "罷", ["壩"] = "霸", ["霸"] = "霸", ["灞"] = "霸", ["欛"] = "霸", ["怕"] = "白", ["帕"] = "白", ["粕"] = "白", ["胉"] = "白", ["泊"] = "白", ["箔"] = "白", ["魄"] = "白", ["皕"] = "白", ["伯"] = "白", ["百"] = "白", ["迫"] = "白", ["敀"] = "白", ["柏"] = "白", ["湐"] = "白", ["拍"] = "白", ["珀"] = "白", ["皛"] = "白", ["洦"] = "白", ["白"] = "白", ["帛"] = "白", ["舶"] = "白", ["鮊"] = "白", ["陌"] = "白", ["帞"] = "白", ["袹"] = "白", ["蛨"] = "白", ["貊"] = "白", ["佰"] = "白", ["銆"] = "白", ["碧"] = "白", ["咟"] = "白", ["拜"] = "拜", ["湃"] = "拜", ["班"] = "班", ["斑"] = "班", ["螌"] = "般", ["般"] = "般", ["媻"] = "般", ["搫"] = "般", ["搬"] = "般", ["盤"] = "般", ["磐"] = "般", ["瘢"] = "般", ["幋"] = "般", ["槃"] = "般", ["縏"] = "般", ["鎜"] = "般", ["鞶"] = "般", ["半"] = "半", ["絆"] = "半", ["靽"] = "半", ["姅"] = "半", ["拌"] = "半", ["拚"] = "半", ["坢"] = "半", ["判"] = "半", ["泮"] = "半", ["頖"] = "半", ["胖"] = "半", ["冸"] = "半", ["牉"] = "半", ["柈"] = "半", ["伴"] = "半", ["叛"] = "半", ["畔"] = "半", ["袢"] = "半", ["袍"] = "勹", ["袌"] = "勹", ["軳"] = "勹", ["抱"] = "勹", ["勽"] = "勹", ["菢"] = "勹", ["勹"] = "勹", ["包"] = "勹", ["胞"] = "勹", ["苞"] = "勹", ["枹"] = "勹", ["飽"] = "勹", ["泡"] = "勹", ["炮"] = "勹", ["皰"] = "勹", ["疱"] = "勹", ["跑"] = "勹", ["咆"] = "勹", ["庖"] = "勹", ["匏"] = "勹", ["刨"] = "勹", ["狍"] = "勹", ["炰"] = "勹", ["鉋"] = "勹", ["瓟"] = "勹", ["颮"] = "勹", ["鞄"] = "勹", ["鮑"] = "勹", ["骲"] = "勹", ["玸"] = "勹", ["雹"] = "勹", ["窇"] = "勹", ["襃"] = "保", ["保"] = "保", ["堡"] = "保", ["褓"] = "保", ["堢"] = "保", ["緥"] = "保", ["葆"] = "保", ["賲"] = "保", ["宲"] = "保", ["椺"] = "保", ["鴇"] = "鴇", ["駂"] = "鴇", ["暴"] = "暴", ["曝"] = "暴", ["瀑"] = "暴", ["虣"] = "暴", ["爆"] = "暴", ["襮"] = "暴", ["嚗"] = "暴", ["謈"] = "暴", ["犦"] = "暴", ["懪"] = "暴", ["捭"] = "卑", ["牌"] = "卑", ["郫"] = "卑", ["蠯"] = "卑", ["猈"] = "卑", ["稗"] = "卑", ["粺"] = "卑", ["𥱼"] = "卑", ["豍"] = "卑", ["箄"] = "卑", ["錍"] = "卑", ["睥"] = "卑", ["渒"] = "卑", ["鼙"] = "卑", ["鞞"] = "卑", ["椑"] = "卑", ["崥"] = "卑", ["髀"] = "卑", ["卑"] = "卑", ["鵯"] = "卑", ["裨"] = "卑", ["痺"] = "卑", ["碑"] = "卑", ["婢"] = "卑", ["諀"] = "卑", ["脾"] = "卑", ["埤"] = "卑", ["陴"] = "卑", ["蜱"] = "卑", ["焷"] = "卑", ["螷"] = "卑", ["庳"] = "卑", ["琕"] = "卑", ["萆"] = "卑", ["綼"] = "卑", ["背"] = "北", ["鄁"] = "北", ["偝"] = "北", ["邶"] = "北", ["苝"] = "北", ["北"] = "北", ["貝"] = "貝", ["狽"] = "貝", ["鋇"] = "貝", ["浿"] = "貝", ["垻"] = "貝", ["敗"] = "貝", ["唄"] = "貝", ["憊"] = "備", ["韛"] = "備", ["備"] = "備", ["俻"] = "備", ["鞴"] = "備", ["糒"] = "備", ["犕"] = "備", ["賁"] = "奔", ["蟦"] = "奔", ["膹"] = "奔", ["橨"] = "奔", ["奔"] = "奔", ["錛"] = "奔", ["噴"] = "奔", ["濆"] = "奔", ["歕"] = "奔", ["獖"] = "奔", ["餴"] = "奔", ["饙"] = "奔", ["僨"] = "奔", ["墳"] = "奔", ["燌"] = "奔", ["豶"] = "奔", ["羵"] = "奔", ["蕡"] = "奔", ["鐼"] = "奔", ["馩"] = "奔", ["轒"] = "奔", ["鼖"] = "奔", ["憤"] = "奔", ["鱝"] = "奔", ["本"] = "本", ["笨"] = "本", ["苯"] = "本", ["翉"] = "本", ["体"] = "本", ["鉢"] = "本", ["缽"] = "本", ["匕"] = "匕", ["庀"] = "匕", ["疕"] = "匕", ["朼"] = "匕", ["牝"] = "匕", ["梐"] = "比", ["狴"] = "比", ["悂"] = "比", ["螕"] = "比", ["鎞"] = "比", ["蓖"] = "比", ["篦"] = "比", ["批"] = "比", ["砒"] = "比", ["鈚"] = "比", ["磇"] = "比", ["媲"] = "比", ["笓"] = "比", ["膍"] = "比", ["陛"] = "比", ["仳"] = "比", ["吡"] = "比", ["紕"] = "比", ["比"] = "比", ["妣"] = "比", ["秕"] = "比", ["沘"] = "比", ["枇"] = "比", ["粊"] = "比", ["庇"] = "比", ["屁"] = "比", ["琵"] = "比", ["毗"] = "比", ["貔"] = "比", ["豼"] = "比", ["蚍"] = "比", ["芘"] = "比", ["肶"] = "比", ["魮"] = "比", ["阰"] = "比", ["坒"] = "比", ["玭"] = "比", ["鄙"] = "啚", ["啚"] = "啚", ["泌"] = "必", ["秘"] = "必", ["毖"] = "必", ["閟"] = "必", ["柲"] = "必", ["鉍"] = "必", ["邲"] = "必", ["覕"] = "必", ["咇"] = "必", ["苾"] = "必", ["馝"] = "必", ["飶"] = "必", ["鴓"] = "必", ["鮅"] = "必", ["必"] = "必", ["珌"] = "必", ["佖"] = "必", ["駜"] = "必", ["怭"] = "必", ["妼"] = "必", ["宓"] = "必", ["樒"] = "必", ["密"] = "必", ["蔤"] = "必", ["滵"] = "必", ["蜜"] = "必", ["謐"] = "必", ["榓"] = "必", ["淧"] = "必", ["瑟"] = "必", ["璱"] = "必", ["飋"] = "必", ["虙"] = "必", ["箅"] = "畀", ["濞"] = "畀", ["畀"] = "畀", ["痹"] = "畀", ["淠"] = "畀", ["嚊"] = "畀", ["鼻"] = "畀", ["襣"] = "畀", ["畢"] = "畢", ["蓽"] = "畢", ["篳"] = "畢", ["蹕"] = "畢", ["韠"] = "畢", ["滭"] = "畢", ["鷝"] = "畢", ["熚"] = "畢", ["彃"] = "畢", ["縪"] = "畢", ["饆"] = "畢", ["鏎"] = "畢", ["罼"] = "畢", ["蔽"] = "敝", ["鄨"] = "敝", ["鷩"] = "敝", ["彆"] = "敝", ["潎"] = "敝", ["斃"] = "敝", ["敝"] = "敝", ["幣"] = "敝", ["弊"] = "敝", ["鱉"] = "敝", ["虌"] = "敝", ["憋"] = "敝", ["瞥"] = "敝", ["鐅"] = "敝", ["嫳"] = "敝", ["撇"] = "敝", ["撆"] = "敝", ["暼"] = "敝", ["蹩"] = "敝", ["襒"] = "敝", ["閉"] = "閉", ["閇"] = "閉", ["嬖"] = "辟", ["薜"] = "辟", ["鐾"] = "辟", ["臂"] = "辟", ["譬"] = "辟", ["避"] = "辟", ["檗"] = "辟", ["擘"] = "辟", ["糪"] = "辟", ["掰"] = "辟", ["繴"] = "辟", ["辟"] = "辟", ["璧"] = "辟", ["鐴"] = "辟", ["躄"] = "辟", ["襞"] = "辟", ["僻"] = "辟", ["癖"] = "辟", ["廦"] = "辟", ["擗"] = "辟", ["躃"] = "辟", ["闢"] = "辟", ["壁"] = "辟", ["鼊"] = "辟", ["霹"] = "辟", ["劈"] = "辟", ["澼"] = "辟", ["憵"] = "辟", ["甓"] = "辟", ["鷿"] = "辟", ["幦"] = "辟", ["斒"] = "扁", ["鯿"] = "扁", ["編"] = "扁", ["揙"] = "扁", ["褊"] = "扁", ["篇"] = "扁", ["偏"] = "扁", ["翩"] = "扁", ["媥"] = "扁", ["扁"] = "扁", ["萹"] = "扁", ["騗"] = "扁", ["騙"] = "扁", ["諞"] = "扁", ["楄"] = "扁", ["蝙"] = "扁", ["甂"] = "扁", ["猵"] = "扁", ["牑"] = "扁", ["蹁"] = "扁", ["匾"] = "扁", ["碥"] = "扁", ["惼"] = "扁", ["糄"] = "扁", ["徧"] = "扁", ["遍"] = "扁", ["頨"] = "扁", ["艑"] = "扁", ["汴"] = "卞", ["卞"] = "卞", ["忭"] = "卞", ["抃"] = "卞", ["犿"] = "卞", ["笇"] = "卞", ["飰"] = "卞", ["鴘"] = "弁", ["弁"] = "弁", ["拚"] = "弁", ["閞"] = "弁", ["昪"] = "弁", ["匥"] = "弁", ["笲"] = "弁", ["軬"] = "弁", ["畚"] = "弁", ["鞭"] = "便", ["鯾"] = "便", ["箯"] = "便", ["便"] = "便", ["緶"] = "便", ["楩"] = "便", ["辬"] = "辡", ["瓣"] = "辡", ["辦"] = "辡", ["辨"] = "辡", ["辡"] = "辡", ["辯"] = "辡", ["辮"] = "辡", ["彪"] = "彪", ["淲"] = "彪", ["滮"] = "彪", ["飆"] = "猋", ["猋"] = "猋", ["贆"] = "猋", ["藨"] = "麃", ["麃"] = "麃", ["臕"] = "麃", ["鑣"] = "麃", ["儦"] = "麃", ["瀌"] = "麃", ["犥"] = "麃", ["皫"] = "麃", ["表"] = "表", ["裱"] = "表", ["俵"] = "表", ["捌"] = "别", ["哵"] = "别", ["別"] = "别", ["莂"] = "别", ["虨"] = "彬", ["彬"] = "彬", ["霦"] = "彬", ["斌"] = "斌", ["贇"] = "斌", ["燹"] = "豩", ["豳"] = "豩", ["蠙"] = "賓", ["賓"] = "賓", ["檳"] = "賓", ["鑌"] = "賓", ["濱"] = "賓", ["顮"] = "賓", ["儐"] = "賓", ["矉"] = "賓", ["擯"] = "賓", ["殯"] = "賓", ["鬢"] = "賓", ["繽"] = "賓", ["嬪"] = "賓", ["薲"] = "賓", ["獱"] = "賓", ["臏"] = "賓", ["髕"] = "賓", ["冫"] = "仌", ["冰"] = "仌", ["砅"] = "仌", ["馮"] = "仌", ["憑"] = "仌", ["浜"] = "兵", ["捠"] = "兵", ["兵"] = "兵", ["更"] = "丙", ["粳"] = "丙", ["埂"] = "丙", ["浭"] = "丙", ["稉"] = "丙", ["梗"] = "丙", ["哽"] = "丙", ["綆"] = "丙", ["鯁"] = "丙", ["挭"] = "丙", ["骾"] = "丙", ["郠"] = "丙", ["硬"] = "丙", ["鞕"] = "丙", ["丙"] = "丙", ["炳"] = "丙", ["邴"] = "丙", ["怲"] = "丙", ["苪"] = "丙", ["蛃"] = "丙", ["昺"] = "丙", ["昞"] = "丙", ["窉"] = "丙", ["柄"] = "丙", ["鈵"] = "丙", ["寎"] = "丙", ["病"] = "丙", ["秉"] = "秉", ["棅"] = "秉", ["燷"] = "禀", ["壈"] = "禀", ["燣"] = "禀", ["顲"] = "禀", ["稟"] = "禀", ["廩"] = "禀", ["懍"] = "禀", ["凜"] = "禀", ["癛"] = "禀", ["檁"] = "禀", ["鵧"] = "并", ["駢"] = "并", ["胼"] = "并", ["骿"] = "并", ["軿"] = "并", ["賆"] = "并", ["跰"] = "并", ["恲"] = "并", ["鮩"] = "并", ["絣"] = "并", ["拼"] = "并", ["迸"] = "并", ["姘"] = "并", ["皏"] = "并", ["併"] = "并", ["并"] = "并", ["栟"] = "并", ["屏"] = "并", ["箳"] = "并", ["餅"] = "并", ["鉼"] = "并", ["摒"] = "并", ["庰"] = "并", ["偋"] = "并", ["艵"] = "并", ["頩"] = "并", ["竮"] = "并", ["瓶"] = "并", ["缾"] = "并", ["蛢"] = "并", ["荓"] = "并", ["郱"] = "并", ["洴"] = "并", ["蓱"] = "并", ["湴"] = "並", ["跰"] = "並", ["並"] = "並", ["竝"] = "並", ["誖"] = "孛", ["悖"] = "孛", ["孛"] = "孛", ["哱"] = "孛", ["馞"] = "孛", ["勃"] = "孛", ["餑"] = "孛", ["郣"] = "孛", ["浡"] = "孛", ["桲"] = "孛", ["挬"] = "孛", ["脖"] = "孛", ["鵓"] = "孛", ["渤"] = "孛", ["綍"] = "孛", ["仆"] = "卜", ["赴"] = "卜", ["訃"] = "卜", ["朴"] = "卜", ["圤"] = "卜", ["卜"] = "卜", ["鳪"] = "卜", ["扑"] = "卜", ["攴"] = "卜", ["肧"] = "不", ["俖"] = "不", ["娝"] = "不", ["痞"] = "不", ["丕"] = "不", ["伾"] = "不", ["秠"] = "不", ["駓"] = "不", ["怌"] = "不", ["豾"] = "不", ["髬"] = "不", ["魾"] = "不", ["鉟"] = "不", ["嚭"] = "不", ["邳"] = "不", ["岯"] = "不", ["否"] = "不", ["抔"] = "不", ["不"] = "不", ["紑"] = "不", ["鴀"] = "不", ["衃"] = "不", ["罘"] = "不", ["芣"] = "不", ["杯"] = "不", ["盃"] = "不", ["桮"] = "不", ["坯"] = "不", ["胚"] = "不", ["荹"] = "步", ["步"] = "步", ["踄"] = "步", ["部"] = "部", ["蔀"] = "部", ["篰"] = "部", ["茬"] = "才", ["材"] = "才", ["才"] = "才", ["財"] = "才", ["鼒"] = "才", ["在"] = "才", ["豺"] = "才", ["采"] = "采", ["睬"] = "采", ["彩"] = "采", ["採"] = "采", ["綵"] = "采", ["寀"] = "采", ["菜"] = "采", ["埰"] = "采", ["棌"] = "采", ["篸"] = "參", ["參"] = "參", ["驂"] = "參", ["傪"] = "參", ["慘"] = "參", ["黲"] = "參", ["謲"] = "參", ["毿"] = "參", ["蔘"] = "參", ["犙"] = "參", ["糝"] = "參", ["槮"] = "參", ["鬖"] = "參", ["摻"] = "參", ["醦"] = "參", ["縿"] = "參", ["穇"] = "參", ["嵾"] = "參", ["磣"] = "參", ["墋"] = "參", ["曑"] = "參", ["瘮"] = "參", ["滲"] = "參", ["餐"] = "粲", ["湌"] = "粲", ["粲"] = "粲", ["燦"] = "粲", ["璨"] = "粲", ["薒"] = "粲", ["殩"] = "粲", ["艙"] = "倉", ["倉"] = "倉", ["蒼"] = "倉", ["滄"] = "倉", ["傖"] = "倉", ["鶬"] = "倉", ["凔"] = "倉", ["槍"] = "倉", ["搶"] = "倉", ["蹌"] = "倉", ["瑲"] = "倉", ["牄"] = "倉", ["嗆"] = "倉", ["創"] = "倉", ["瘡"] = "倉", ["愴"] = "倉", ["鎗"] = "倉", ["遭"] = "曹", ["糟"] = "曹", ["醩"] = "曹", ["傮"] = "曹", ["槽"] = "曹", ["曹"] = "曹", ["螬"] = "曹", ["漕"] = "曹", ["嘈"] = "曹", ["艚"] = "曹", ["褿"] = "曹", ["蓸"] = "曹", ["慒"] = "曹", ["栅"] = "冊", ["冊"] = "冊", ["笧"] = "冊", ["稷"] = "畟", ["畟"] = "畟", ["溭"] = "畟", ["謖"] = "畟", ["叉"] = "叉", ["杈"] = "叉", ["靫"] = "叉", ["汊"] = "叉", ["衩"] = "叉", ["扠"] = "叉", ["釵"] = "叉", ["芆"] = "叉", ["訍"] = "叉", ["偛"] = "臿", ["插"] = "臿", ["鍤"] = "臿", ["臿"] = "臿", ["喢"] = "臿", ["牐"] = "臿", ["歃"] = "臿", ["敮"] = "臿", ["孱"] = "孱", ["潺"] = "孱", ["僝"] = "孱", ["轏"] = "孱", ["樼"] = "孱", ["纏"] = "廛", ["緾"] = "廛", ["躔"] = "廛", ["瀍"] = "廛", ["鄽"] = "廛", ["廛"] = "廛", ["纔"] = "毚", ["讒"] = "毚", ["饞"] = "毚", ["毚"] = "毚", ["欃"] = "毚", ["攙"] = "毚", ["儳"] = "毚", ["酁"] = "毚", ["瀺"] = "毚", ["嚵"] = "毚", ["巉"] = "毚", ["劖"] = "毚", ["艬"] = "毚", ["鑱"] = "毚", ["昌"] = "昌", ["倡"] = "昌", ["猖"] = "昌", ["菖"] = "昌", ["閶"] = "昌", ["鯧"] = "昌", ["裮"] = "昌", ["琩"] = "昌", ["唱"] = "昌", ["張"] = "長", ["餦"] = "長", ["粻"] = "長", ["漲"] = "長", ["長"] = "長", ["脹"] = "長", ["痮"] = "長", ["帳"] = "長", ["賬"] = "長", ["倀"] = "長", ["鼚"] = "長", ["鋹"] = "長", ["悵"] = "長", ["韔"] = "長", ["萇"] = "長", ["瓺"] = "長", ["棖"] = "長", ["掁"] = "長", ["璅"] = "巢", ["繅"] = "巢", ["薻"] = "巢", ["罺"] = "巢", ["摷"] = "巢", ["勦"] = "巢", ["巢"] = "巢", ["轈"] = "巢", ["樔"] = "巢", ["鄛"] = "巢", ["剿"] = "巢", ["漅"] = "巢", ["嘲"] = "朝", ["廟"] = "朝", ["朝"] = "朝", ["潮"] = "朝", ["車"] = "車", ["硨"] = "車", ["厙"] = "車", ["庫"] = "車", ["徹"] = "徹", ["撤"] = "徹", ["澈"] = "徹", ["轍"] = "徹", ["臤"] = "臣", ["掔"] = "臣", ["慳"] = "臣", ["藖"] = "臣", ["堅"] = "臣", ["鋻"] = "臣", ["鰹"] = "臣", ["蜸"] = "臣", ["菣"] = "臣", ["賢"] = "臣", ["礥"] = "臣", ["臔"] = "臣", ["挋"] = "臣", ["臣"] = "臣", ["茞"] = "臣", ["腎"] = "臣", ["頣"] = "臣", ["緊"] = "臣", ["嚚"] = "臣", ["鏗"] = "臣", ["摼"] = "臣", ["硻"] = "臣", ["辴"] = "辰", ["屒"] = "辰", ["振"] = "辰", ["侲"] = "辰", ["桭"] = "辰", ["唇"] = "辰", ["帪"] = "辰", ["賑"] = "辰", ["裖"] = "辰", ["敐"] = "辰", ["震"] = "辰", ["娠"] = "辰", ["蜃"] = "辰", ["辰"] = "辰", ["晨"] = "辰", ["宸"] = "辰", ["鷐"] = "辰", ["麎"] = "辰", ["祳"] = "辰", ["脤"] = "辰", ["鋠"] = "辰", ["磭"] = "辰", ["陙"] = "辰", ["脣"] = "辰", ["漘"] = "辰", ["陳"] = "陳", ["敶"] = "陳", ["陣"] = "陳", ["讖"] = "韱", ["攕"] = "韱", ["櫼"] = "韱", ["懺"] = "韱", ["殲"] = "韱", ["瀸"] = "韱", ["鑯"] = "韱", ["虃"] = "韱", ["籤"] = "韱", ["韯"] = "韱", ["纖"] = "韱", ["孅"] = "韱", ["韱"] = "韱", ["襳"] = "韱", ["稱"] = "爯", ["爯"] = "爯", ["偁"] = "爯", ["蒸"] = "丞", ["烝"] = "丞", ["篜"] = "丞", ["脀"] = "丞", ["拯"] = "丞", ["氶"] = "丞", ["承"] = "丞", ["丞"] = "丞", ["巹"] = "丞", ["成"] = "成", ["城"] = "成", ["誠"] = "成", ["宬"] = "成", ["郕"] = "成", ["筬"] = "成", ["盛"] = "成", ["珹"] = "成", ["晟"] = "成", ["墭"] = "成", ["挰"] = "呈", ["鋥"] = "呈", ["逞"] = "呈", ["裎"] = "呈", ["悜"] = "呈", ["睈"] = "呈", ["呈"] = "呈", ["程"] = "呈", ["酲"] = "呈", ["珵"] = "呈", ["徎"] = "呈", ["郢"] = "呈", ["浧"] = "呈", ["桯"] = "呈", ["鞓"] = "呈", ["壬"] = "呈", ["鐵"] = "呈", ["驖"] = "呈", ["戜"] = "呈", ["乘"] = "乘", ["溗"] = "乘", ["塖"] = "乘", ["騬"] = "乘", ["椉"] = "乘", ["剩"] = "乘", ["嵊"] = "乘", ["尺"] = "尺", ["蚇"] = "尺", ["蠡"] = "彖", ["盠"] = "彖", ["彖"] = "彖", ["墬"] = "彖", ["喙"] = "彖", ["餯"] = "彖", ["剶"] = "彖", ["猭"] = "彖", ["鶨"] = "彖", ["椽"] = "彖", ["篆"] = "彖", ["瑑"] = "彖", ["堟"] = "彖", ["蝝"] = "彖", ["緣"] = "彖", ["櫞"] = "彖", ["掾"] = "彖", ["褖"] = "彖", ["湪"] = "彖", ["浾"] = "赤", ["嚇"] = "赤", ["赦"] = "赤", ["郝"] = "赤", ["赫"] = "赤", ["爀"] = "赤", ["赤"] = "赤", ["烾"] = "赤", ["螫"] = "赤", ["赥"] = "赤", ["捇"] = "赤", ["焃"] = "赤", ["敕"] = "敕", ["勅"] = "敕", ["鷘"] = "敕", ["慗"] = "敕", ["遫"] = "敕", ["統"] = "充", ["充"] = "充", ["珫"] = "充", ["茺"] = "充", ["銃"] = "充", ["樁"] = "舂", ["憃"] = "舂", ["舂"] = "舂", ["摏"] = "舂", ["蹖"] = "舂", ["痋"] = "蟲", ["鉵"] = "蟲", ["赨"] = "蟲", ["爞"] = "蟲", ["蟲"] = "蟲", ["融"] = "蟲", ["瀜"] = "蟲", ["犨"] = "雔", ["犫"] = "雔", ["雔"] = "雔", ["售"] = "雔", ["讎"] = "雔", ["峱"] = "丑", ["紐"] = "丑", ["扭"] = "丑", ["狃"] = "丑", ["鈕"] = "丑", ["忸"] = "丑", ["杻"] = "丑", ["莥"] = "丑", ["羞"] = "丑", ["丑"] = "丑", ["沑"] = "丑", ["粈"] = "丑", ["衄"] = "丑", ["臭"] = "臭", ["殠"] = "臭", ["糗"] = "臭", ["嗅"] = "臭", ["齅"] = "臭", ["聉"] = "出", ["贅"] = "出", ["祟"] = "出", ["出"] = "出", ["茁"] = "出", ["欪"] = "出", ["貀"] = "出", ["袦"] = "出", ["咄"] = "出", ["柮"] = "出", ["拙"] = "出", ["炪"] = "出", ["掘"] = "出", ["鈯"] = "出", ["啒"] = "出", ["淈"] = "出", ["窟"] = "出", ["泏"] = "出", ["堀"] = "出", ["胐"] = "出", ["窋"] = "出", ["絀"] = "出", ["黜"] = "出", ["屈"] = "出", ["趉"] = "出", ["鶌"] = "出", ["詘"] = "出", ["倔"] = "出", ["崛"] = "出", ["煼"] = "芻", ["謅"] = "芻", ["縐"] = "芻", ["鄒"] = "芻", ["騶"] = "芻", ["搊"] = "芻", ["皺"] = "芻", ["篘"] = "芻", ["㑳"] = "芻", ["趍"] = "芻", ["趨"] = "芻", ["芻"] = "芻", ["犓"] = "芻", ["雛"] = "芻", ["鶵"] = "芻", ["媰"] = "芻", ["齺"] = "芻", ["冢"] = "豖", ["塚"] = "豖", ["涿"] = "豖", ["琢"] = "豖", ["啄"] = "豖", ["諑"] = "豖", ["剢"] = "豖", ["瘃"] = "豖", ["豖"] = "豖", ["川"] = "川", ["釧"] = "川", ["巛"] = "川", ["巡"] = "川", ["馴"] = "川", ["紃"] = "川", ["甽"] = "川", ["順"] = "川", ["訓"] = "川", ["舛"] = "舛", ["荈"] = "舛", ["僢"] = "舛", ["舜"] = "舛", ["瞬"] = "舛", ["蕣"] = "舛", ["梁"] = "刅", ["粱"] = "刅", ["刱"] = "刅", ["吹"] = "吹", ["炊"] = "吹", ["焁"] = "吹", ["埵"] = "垂", ["綞"] = "垂", ["涶"] = "垂", ["唾"] = "垂", ["厜"] = "垂", ["腄"] = "垂", ["箠"] = "垂", ["娷"] = "垂", ["諈"] = "垂", ["錘"] = "垂", ["甀"] = "垂", ["硾"] = "垂", ["捶"] = "垂", ["垂"] = "垂", ["陲"] = "垂", ["倕"] = "垂", ["菙"] = "垂", ["睡"] = "垂", ["辤"] = "辭", ["辭"] = "辭", ["些"] = "此", ["跐"] = "此", ["柴"] = "此", ["祡"] = "此", ["茈"] = "此", ["眦"] = "此", ["砦"] = "此", ["寨"] = "此", ["啙"] = "此", ["泚"] = "此", ["玼"] = "此", ["皉"] = "此", ["鮆"] = "此", ["眥"] = "此", ["貲"] = "此", ["髭"] = "此", ["頾"] = "此", ["訾"] = "此", ["鴜"] = "此", ["鈭"] = "此", ["姕"] = "此", ["觜"] = "此", ["紫"] = "此", ["訿"] = "此", ["呰"] = "此", ["嘴"] = "此", ["雌"] = "此", ["此"] = "此", ["佌"] = "此", ["庛"] = "此", ["疵"] = "此", ["骴"] = "此", ["胔"] = "此", ["飺"] = "此", ["齜"] = "此", ["債"] = "朿", ["積"] = "朿", ["刺"] = "朿", ["莿"] = "朿", ["刾"] = "朿", ["朿"] = "朿", ["漬"] = "朿", ["耫"] = "朿", ["嘖"] = "朿", ["梀"] = "朿", ["捒"] = "朿", ["幘"] = "朿", ["簀"] = "朿", ["嫧"] = "朿", ["謮"] = "朿", ["責"] = "朿", ["皟"] = "朿", ["憡"] = "朿", ["策"] = "朿", ["筴"] = "朿", ["拺"] = "朿", ["賾"] = "朿", ["鰿"] = "朿", ["擌"] = "朿", ["蹟"] = "朿", ["襀"] = "朿", ["磧"] = "朿", ["洓"] = "朿", ["績"] = "朿", ["勣"] = "朿", ["樍"] = "朿", ["咨"] = "次", ["資"] = "次", ["姿"] = "次", ["粢"] = "次", ["諮"] = "次", ["恣"] = "次", ["澬"] = "次", ["趑"] = "次", ["蠀"] = "次", ["次"] = "次", ["佽"] = "次", ["絘"] = "次", ["薋"] = "次", ["瓷"] = "次", ["茨"] = "次", ["餈"] = "次", ["垐"] = "次", ["楶"] = "次", ["牎"] = "囱", ["窗"] = "囱", ["窓"] = "囱", ["囱"] = "囱", ["總"] = "囱", ["熜"] = "囱", ["傯"] = "囱", ["緫"] = "囱", ["揔"] = "囱", ["偬"] = "囱", ["囪"] = "囱", ["璁"] = "囱", ["驄"] = "囱", ["蔥"] = "囱", ["匆"] = "囱", ["怱"] = "囱", ["葱"] = "囱", ["楤"] = "囱", ["聦"] = "囱", ["繱"] = "囱", ["騘"] = "囱", ["鍯"] = "囱", ["聰"] = "囱", ["愡"] = "囱", ["檧"] = "囱", ["憽"] = "囱", ["幒"] = "囱", ["摐"] = "从", ["鏦"] = "从", ["豵"] = "从", ["嵸"] = "从", ["蓯"] = "从", ["蹤"] = "从", ["縱"] = "从", ["樅"] = "从", ["磫"] = "从", ["熧"] = "从", ["瘲"] = "从", ["暰"] = "从", ["瑽"] = "从", ["從"] = "从", ["从"] = "从", ["慫"] = "从", ["聳"] = "从", ["傱"] = "从", ["躥"] = "竄", ["竄"] = "竄", ["攛"] = "竄", ["鑹"] = "竄", ["嗺"] = "崔", ["催"] = "崔", ["璀"] = "崔", ["皠"] = "崔", ["漼"] = "崔", ["鏙"] = "崔", ["摧"] = "崔", ["崔"] = "崔", ["慛"] = "崔", ["槯"] = "崔", ["繀"] = "崔", ["膗"] = "崔", ["膬"] = "毳", ["毳"] = "毳", ["竁"] = "毳", ["橇"] = "毳", ["荐"] = "存", ["洊"] = "存", ["臶"] = "存", ["栫"] = "存", ["袸"] = "存", ["存"] = "存", ["拵"] = "存", ["村"] = "寸", ["忖"] = "寸", ["刌"] = "寸", ["寸"] = "寸", ["踏"] = "沓", ["濌"] = "沓", ["錔"] = "沓", ["鞜"] = "沓", ["沓"] = "沓", ["涾"] = "沓", ["誻"] = "沓", ["羍"] = "羍", ["達"] = "羍", ["闥"] = "羍", ["撻"] = "羍", ["躂"] = "羍", ["澾"] = "羍", ["薘"] = "羍", ["龖"] = "龖", ["襲"] = "龖", ["馱"] = "大", ["大"] = "大", ["忕"] = "大", ["太"] = "大", ["汰"] = "大", ["汏"] = "大", ["軑"] = "大", ["釱"] = "大", ["达"] = "大", ["杕"] = "大", ["褱"] = "眔", ["鰥"] = "眔", ["鳏"] = "眔", ["嚃"] = "眔", ["眔"] = "眔", ["遝"] = "眔", ["帶"] = "帶", ["蹛"] = "帶", ["艜"] = "帶", ["慸"] = "帶", ["滯"] = "帶", ["懘"] = "帶", ["蔕"] = "帶", ["螮"] = "帶", ["摕"] = "帶", ["僀"] = "帶", ["殢"] = "帶", ["遰"] = "帶", ["墆"] = "帶", ["嵽"] = "帶", ["蒂"] = "帶", ["丹"] = "丹", ["旃"] = "丹", ["栴"] = "丹", ["嚲"] = "單", ["癉"] = "單", ["奲"] = "單", ["驒"] = "單", ["鼉"] = "單", ["磾"] = "單", ["鷤"] = "單", ["觶"] = "單", ["單"] = "單", ["鄲"] = "單", ["殫"] = "單", ["簞"] = "單", ["匰"] = "單", ["襌"] = "單", ["啴"] = "單", ["彈"] = "單", ["貚"] = "單", ["撣"] = "單", ["潬"] = "單", ["僤"] = "單", ["憚"] = "單", ["樿"] = "單", ["燀"] = "單", ["戰"] = "單", ["闡"] = "單", ["繟"] = "單", ["幝"] = "單", ["嘽"] = "單", ["灛"] = "單", ["蟬"] = "單", ["禪"] = "單", ["嬋"] = "單", ["墠"] = "單", ["鱓"] = "單", ["蕇"] = "單", ["皽"] = "旦", ["担"] = "旦", ["胆"] = "旦", ["疸"] = "旦", ["觛"] = "旦", ["亶"] = "旦", ["嬗"] = "旦", ["笪"] = "旦", ["狚"] = "旦", ["旦"] = "旦", ["鴠"] = "旦", ["譠"] = "旦", ["坦"] = "旦", ["但"] = "旦", ["檀"] = "旦", ["壇"] = "旦", ["儃"] = "旦", ["驙"] = "旦", ["袒"] = "旦", ["襢"] = "旦", ["繵"] = "旦", ["膻"] = "旦", ["澶"] = "旦", ["邅"] = "旦", ["鱣"] = "旦", ["饘"] = "旦", ["旜"] = "旦", ["氈"] = "旦", ["鸇"] = "旦", ["顫"] = "旦", ["蟺"] = "旦", ["擅"] = "旦", ["羶"] = "旦", ["呾"] = "旦", ["怛"] = "旦", ["妲"] = "旦", ["靼"] = "旦", ["炟"] = "旦", ["宕"] = "宕", ["菪"] = "宕", ["刀"] = "刀", ["忉"] = "刀", ["鱽"] = "刀", ["舠"] = "刀", ["朷"] = "刀", ["叨"] = "刀", ["倒"] = "刀", ["到"] = "刀", ["菿"] = "刀", ["鞀"] = "刀", ["鳭"] = "刀", ["灱"] = "刀", ["菬"] = "刀", ["超"] = "刀", ["怊"] = "刀", ["欩"] = "刀", ["召"] = "刀", ["昭"] = "刀", ["招"] = "刀", ["鉊"] = "刀", ["沼"] = "刀", ["照"] = "刀", ["詔"] = "刀", ["炤"] = "刀", ["弨"] = "刀", ["眧"] = "刀", ["韶"] = "刀", ["佋"] = "刀", ["軺"] = "刀", ["玿"] = "刀", ["柖"] = "刀", ["紹"] = "刀", ["袑"] = "刀", ["綤"] = "刀", ["邵"] = "刀", ["劭"] = "刀", ["卲"] = "刀", ["刁"] = "刀", ["芀"] = "刀", ["貂"] = "刀", ["蛁"] = "刀", ["迢"] = "刀", ["苕"] = "刀", ["髫"] = "刀", ["岧"] = "刀", ["得"] = "得", ["淂"] = "得", ["棏"] = "得", ["登"] = "登", ["璒"] = "登", ["燈"] = "登", ["簦"] = "登", ["蹬"] = "登", ["磴"] = "登", ["鐙"] = "登", ["嶝"] = "登", ["隥"] = "登", ["橙"] = "登", ["凳"] = "登", ["墱"] = "登", ["鼟"] = "登", ["膯"] = "登", ["澄"] = "登", ["鄧"] = "登", ["僜"] = "登", ["覴"] = "登", ["瞪"] = "登", ["憕"] = "登", ["撜"] = "登", ["證"] = "登", ["逖"] = "狄", ["悐"] = "狄", ["狄"] = "狄", ["荻"] = "狄", ["梑"] = "狄", ["櫂"] = "翟", ["濯"] = "翟", ["耀"] = "翟", ["曜"] = "翟", ["燿"] = "翟", ["糶"] = "翟", ["粜"] = "翟", ["嬥"] = "翟", ["藋"] = "翟", ["躍"] = "翟", ["戳"] = "翟", ["擢"] = "翟", ["蠗"] = "翟", ["鸐"] = "翟", ["翟"] = "翟", ["趯"] = "翟", ["籊"] = "翟", ["糴"] = "翟", ["䊮"] = "翟", ["低"] = "氐", ["氐"] = "氐", ["袛"] = "氐", ["羝"] = "氐", ["眡"] = "氐", ["岻"] = "氐", ["奃"] = "氐", ["趆"] = "氐", ["柢"] = "氐", ["邸"] = "氐", ["底"] = "氐", ["詆"] = "氐", ["坻"] = "氐", ["抵"] = "氐", ["牴"] = "氐", ["觝"] = "氐", ["弤"] = "氐", ["軧"] = "氐", ["骶"] = "氐", ["砥"] = "氐", ["胝"] = "氐", ["疷"] = "氐", ["秪"] = "氐", ["泜"] = "氐", ["蚳"] = "氐", ["彽"] = "氐", ["阺"] = "氐", ["貾"] = "氐", ["祗"] = "氐", ["厎"] = "氐", ["茋"] = "氐", ["鴟"] = "氐", ["汦"] = "氐", ["梯"] = "弟", ["睇"] = "弟", ["涕"] = "弟", ["挮"] = "弟", ["鬀"] = "弟", ["剃"] = "弟", ["綈"] = "弟", ["蕛"] = "弟", ["稊"] = "弟", ["苐"] = "弟", ["鵜"] = "弟", ["銻"] = "弟", ["鮷"] = "弟", ["罤"] = "弟", ["弟"] = "弟", ["娣"] = "弟", ["悌"] = "弟", ["第"] = "弟", ["膪"] = "帝", ["揥"] = "帝", ["腣"] = "帝", ["諦"] = "帝", ["偙"] = "帝", ["渧"] = "帝", ["帝"] = "帝", ["楴"] = "帝", ["啼"] = "帝", ["蹄"] = "帝", ["締"] = "帝", ["崹"] = "帝", ["鶙"] = "帝", ["禘"] = "帝", ["啻"] = "帝", ["嫡"] = "帝", ["摘"] = "帝", ["謫"] = "帝", ["讁"] = "帝", ["擿"] = "帝", ["蹢"] = "帝", ["適"] = "帝", ["啇"] = "帝", ["滴"] = "帝", ["鏑"] = "帝", ["甋"] = "帝", ["樀"] = "帝", ["敵"] = "帝", ["典"] = "典", ["錪"] = "典", ["腆"] = "典", ["痶"] = "典", ["淟"] = "典", ["琠"] = "典", ["賟"] = "典", ["晪"] = "典", ["奠"] = "奠", ["鄭"] = "奠", ["擲"] = "奠", ["躑"] = "奠", ["殿"] = "殿", ["澱"] = "殿", ["壂"] = "殿", ["臀"] = "殿", ["盄"] = "弔", ["弔"] = "弔", ["伄"] = "弔", ["曡"] = "疊", ["疊"] = "疊", ["圢"] = "丁", ["町"] = "丁", ["打"] = "丁", ["盯"] = "丁", ["朾"] = "丁", ["丁"] = "丁", ["玎"] = "丁", ["虰"] = "丁", ["揨"] = "丁", ["釘"] = "丁", ["靪"] = "丁", ["仃"] = "丁", ["叮"] = "丁", ["疔"] = "丁", ["頂"] = "丁", ["奵"] = "丁", ["耵"] = "丁", ["酊"] = "丁", ["葶"] = "丁", ["矴"] = "丁", ["訂"] = "丁", ["飣"] = "丁", ["汀"] = "丁", ["艼"] = "丁", ["庁"] = "丁", ["婷"] = "丁", ["停"] = "丁", ["聤"] = "丁", ["渟"] = "丁", ["楟"] = "丁", ["亭"] = "丁", ["鼎"] = "鼎", ["薡"] = "鼎", ["濎"] = "鼎", ["疼"] = "冬", ["冬"] = "冬", ["苳"] = "冬", ["笗"] = "冬", ["炵"] = "冬", ["佟"] = "冬", ["鼕"] = "冬", ["鉖"] = "冬", ["終"] = "冬", ["螽"] = "冬", ["鼨"] = "冬", ["柊"] = "冬", ["鴤"] = "冬", ["泈"] = "冬", ["蔠"] = "冬", ["東"] = "東", ["菄"] = "東", ["鶇"] = "東", ["倲"] = "東", ["涷"] = "東", ["蝀"] = "東", ["凍"] = "東", ["鯟"] = "東", ["崠"] = "東", ["埬"] = "東", ["棟"] = "東", ["兜"] = "兜", ["篼"] = "兜", ["斗"] = "斗", ["抖"] = "斗", ["蚪"] = "斗", ["枓"] = "斗", ["阧"] = "斗", ["斢"] = "斗", ["鈄"] = "斗", ["侸"] = "豆", ["剅"] = "豆", ["郖"] = "豆", ["鬪"] = "豆", ["鋀"] = "豆", ["頭"] = "豆", ["豆"] = "豆", ["逗"] = "豆", ["痘"] = "豆", ["梪"] = "豆", ["脰"] = "豆", ["荳"] = "豆", ["浢"] = "豆", ["餖"] = "豆", ["毭"] = "豆", ["豎"] = "豆", ["裋"] = "豆", ["短"] = "豆", ["鬥"] = "鬥", ["鬭"] = "鬥", ["瑇"] = "毒", ["纛"] = "毒", ["碡"] = "毒", ["毒"] = "毒", ["蝳"] = "毒", ["揣"] = "耑", ["褍"] = "耑", ["惴"] = "耑", ["圌"] = "耑", ["篅"] = "耑", ["瑞"] = "耑", ["端"] = "耑", ["剬"] = "耑", ["偳"] = "耑", ["鍴"] = "耑", ["耑"] = "耑", ["踹"] = "耑", ["湍"] = "耑", ["煓"] = "耑", ["貒"] = "耑", ["諯"] = "耑", ["顓"] = "耑", ["喘"] = "耑", ["遄"] = "耑", ["輲"] = "耑", ["椯"] = "耑", ["歂"] = "耑", ["腨"] = "耑", ["鍛"] = "段", ["腶"] = "段", ["碫"] = "段", ["瑖"] = "段", ["緞"] = "段", ["段"] = "段", ["椴"] = "段", ["毈"] = "段", ["毤"] = "兌", ["蛻"] = "兌", ["娧"] = "兌", ["駾"] = "兌", ["裞"] = "兌", ["兌"] = "兌", ["綐"] = "兌", ["銳"] = "兌", ["帨"] = "兌", ["稅"] = "兌", ["說"] = "兌", ["涚"] = "兌", ["䫄"] = "兌", ["脫"] = "兌", ["侻"] = "兌", ["挩"] = "兌", ["莌"] = "兌", ["梲"] = "兌", ["鮵"] = "兌", ["敓"] = "兌", ["痥"] = "兌", ["悅"] = "兌", ["閱"] = "兌", ["對"] = "對", ["轛"] = "對", ["薱"] = "對", ["濧"] = "對", ["懟"] = "對", ["弴"] = "敦", ["敦"] = "敦", ["錞"] = "敦", ["憝"] = "敦", ["憞"] = "敦", ["譈"] = "敦", ["鐓"] = "敦", ["鷻"] = "敦", ["鶉"] = "敦", ["惇"] = "敦", ["墩"] = "敦", ["驐"] = "敦", ["燉"] = "敦", ["焞"] = "敦", ["啍"] = "敦", ["暾"] = "敦", ["噋"] = "敦", ["諄"] = "敦", ["埻"] = "敦", ["稕"] = "敦", ["醇"] = "敦", ["淳"] = "敦", ["犉"] = "敦", ["躉"] = "屯", ["窀"] = "屯", ["沌"] = "屯", ["盹"] = "屯", ["頓"] = "屯", ["扽"] = "屯", ["黗"] = "屯", ["吨"] = "屯", ["屯"] = "屯", ["飩"] = "屯", ["豘"] = "屯", ["軘"] = "屯", ["坉"] = "屯", ["邨"] = "屯", ["忳"] = "屯", ["芚"] = "屯", ["庉"] = "屯", ["囤"] = "屯", ["迍"] = "屯", ["杶"] = "屯", ["瑃"] = "屯", ["椿"] = "屯", ["偆"] = "屯", ["肫"] = "屯", ["訰"] = "屯", ["純"] = "屯", ["春"] = "屯", ["蠢"] = "屯", ["踳"] = "屯", ["惷"] = "屯", ["蒓"] = "屯", ["賰"] = "屯", ["鬊"] = "屯", ["盾"] = "盾", ["遁"] = "盾", ["循"] = "盾", ["揗"] = "盾", ["楯"] = "盾", ["輴"] = "盾", ["腯"] = "盾", ["鍎"] = "盾", ["多"] = "多", ["哆"] = "多", ["跢"] = "多", ["痑"] = "多", ["爹"] = "多", ["陊"] = "多", ["橠"] = "多", ["袲"] = "多", ["奓"] = "多", ["栘"] = "多", ["黟"] = "多", ["趍"] = "多", ["誃"] = "多", ["簃"] = "多", ["眵"] = "多", ["恀"] = "多", ["侈"] = "多", ["姼"] = "多", ["鉹"] = "多", ["垑"] = "多", ["袳"] = "多", ["卶"] = "多", ["宜"] = "多", ["誼"] = "多", ["竩"] = "多", ["移"] = "多", ["迻"] = "多", ["扅"] = "多", ["拸"] = "多", ["熪"] = "多", ["謻"] = "多", ["蛥"] = "多", ["桗"] = "朵", ["挆"] = "朵", ["朵"] = "朵", ["朶"] = "朵", ["躲"] = "朵", ["剁"] = "朵", ["垛"] = "朵", ["呃"] = "戹", ["阸"] = "戹", ["厄"] = "戹", ["蚅"] = "戹", ["扼"] = "戹", ["軛"] = "戹", ["戹"] = "戹", ["豟"] = "戹", ["呝"] = "戹", ["軶"] = "戹", ["耐"] = "而", ["耏"] = "而", ["而"] = "而", ["鮞"] = "而", ["鴯"] = "而", ["栭"] = "而", ["陑"] = "而", ["峏"] = "而", ["輀"] = "而", ["胹"] = "而", ["洏"] = "而", ["髵"] = "而", ["恧"] = "而", ["掜"] = "兒", ["誽"] = "兒", ["倪"] = "兒", ["蜺"] = "兒", ["霓"] = "兒", ["郳"] = "兒", ["齯"] = "兒", ["婗"] = "兒", ["輗"] = "兒", ["棿"] = "兒", ["猊"] = "兒", ["麑"] = "兒", ["貎"] = "兒", ["鯢"] = "兒", ["兒"] = "兒", ["觬"] = "兒", ["堄"] = "兒", ["晲"] = "兒", ["睨"] = "兒", ["唲"] = "兒", ["隉"] = "兒", ["鶂"] = "兒", ["鬩"] = "兒", ["妳"] = "尔", ["弥"] = "尔", ["尒"] = "尔", ["尔"] = "尔", ["迩"] = "尔", ["你"] = "尔", ["苶"] = "尔", ["佴"] = "耳", ["麛"] = "耳", ["弭"] = "耳", ["渳"] = "耳", ["葞"] = "耳", ["髶"] = "耳", ["聻"] = "耳", ["恥"] = "耳", ["咡"] = "耳", ["誀"] = "耳", ["耳"] = "耳", ["洱"] = "耳", ["駬"] = "耳", ["餌"] = "耳", ["珥"] = "耳", ["衈"] = "耳", ["毦"] = "耳", ["刵"] = "耳", ["眲"] = "耳", ["嬭"] = "爾", ["禰"] = "爾", ["镾"] = "爾", ["薾"] = "爾", ["檷"] = "爾", ["鑈"] = "爾", ["瀰"] = "爾", ["獼"] = "爾", ["瓕"] = "爾", ["彌"] = "爾", ["鸍"] = "爾", ["擟"] = "爾", ["濔"] = "爾", ["壐"] = "爾", ["璽"] = "爾", ["爾"] = "爾", ["邇"] = "爾", ["獮"] = "爾", ["籋"] = "爾", ["膩"] = "二", ["二"] = "二", ["弍"] = "二", ["貳"] = "二", ["樲"] = "二", ["廢"] = "發", ["癈"] = "發", ["橃"] = "發", ["撥"] = "發", ["鱍"] = "發", ["襏"] = "發", ["驋"] = "發", ["鏺"] = "發", ["潑"] = "發", ["醱"] = "發", ["砭"] = "乏", ["貶"] = "乏", ["窆"] = "乏", ["泛"] = "乏", ["姂"] = "乏", ["䒦"] = "乏", ["柉"] = "乏", ["覂"] = "乏", ["眨"] = "乏", ["鴔"] = "乏", ["乏"] = "乏", ["茷"] = "伐", ["筏"] = "伐", ["伐"] = "伐", ["閥"] = "伐", ["垡"] = "伐", ["栰"] = "伐", ["罰"] = "罰", ["藅"] = "罰", ["法"] = "法", ["灋"] = "法", ["皤"] = "番", ["嶓"] = "番", ["番"] = "番", ["播"] = "番", ["譒"] = "番", ["鄱"] = "番", ["潘"] = "番", ["蟠"] = "番", ["磻"] = "番", ["蕃"] = "番", ["轓"] = "番", ["鱕"] = "番", ["鐇"] = "番", ["藩"] = "番", ["籓"] = "番", ["橎"] = "番", ["翻"] = "番", ["幡"] = "番", ["飜"] = "番", ["旛"] = "番", ["繙"] = "番", ["燔"] = "番", ["蹯"] = "番", ["膰"] = "番", ["羳"] = "番", ["鷭"] = "番", ["璠"] = "番", ["襎"] = "番", ["墦"] = "番", ["嵐"] = "凡", ["葻"] = "凡", ["釩"] = "凡", ["汎"] = "凡", ["凡"] = "凡", ["帆"] = "凡", ["颿"] = "凡", ["軓"] = "凡", ["梵"] = "凡", ["芃"] = "凡", ["風"] = "凡", ["飌"] = "凡", ["楓"] = "凡", ["猦"] = "凡", ["偑"] = "凡", ["檒"] = "凡", ["瘋"] = "凡", ["諷"] = "凡", ["堸"] = "凡", ["渢"] = "凡", ["鳳"] = "凡", ["攀"] = "棥", ["襻"] = "棥", ["棥"] = "棥", ["礬"] = "棥", ["樊"] = "棥", ["蠜"] = "棥", ["煩"] = "煩", ["薠"] = "煩", ["繁"] = "緐", ["緐"] = "緐", ["蘩"] = "緐", ["瀿"] = "緐", ["瀪"] = "緐", ["扳"] = "反", ["板"] = "反", ["版"] = "反", ["瓪"] = "反", ["昄"] = "反", ["鈑"] = "反", ["蝂"] = "反", ["眅"] = "反", ["阪"] = "反", ["魬"] = "反", ["粄"] = "反", ["反"] = "反", ["返"] = "反", ["坂"] = "反", ["畈"] = "反", ["販"] = "反", ["汳"] = "反", ["飯"] = "反", ["氾"] = "氾", ["犯"] = "氾", ["範"] = "氾", ["范"] = "氾", ["笵"] = "氾", ["匚"] = "匚", ["匠"] = "匚", ["縍"] = "方", ["榜"] = "方", ["蒡"] = "方", ["牓"] = "方", ["螃"] = "方", ["搒"] = "方", ["舫"] = "方", ["謗"] = "方", ["雱"] = "方", ["磅"] = "方", ["霶"] = "方", ["滂"] = "方", ["鎊"] = "方", ["髈"] = "方", ["彷"] = "方", ["趽"] = "方", ["房"] = "方", ["篣"] = "方", ["騯"] = "方", ["傍"] = "方", ["膀"] = "方", ["旁"] = "方", ["徬"] = "方", ["閍"] = "方", ["祊"] = "方", ["嗙"] = "方", ["方"] = "方", ["汸"] = "方", ["坊"] = "方", ["邡"] = "方", ["枋"] = "方", ["鈁"] = "方", ["蚄"] = "方", ["肪"] = "方", ["鴋"] = "方", ["牥"] = "方", ["昉"] = "方", ["瓬"] = "方", ["放"] = "方", ["倣"] = "方", ["芳"] = "方", ["淓"] = "方", ["妨"] = "方", ["紡"] = "方", ["仿"] = "方", ["髣"] = "方", ["鶭"] = "方", ["訪"] = "方", ["防"] = "方", ["魴"] = "方", ["圮"] = "妃", ["妃"] = "妃", ["啡"] = "非", ["排"] = "非", ["俳"] = "非", ["輫"] = "非", ["悲"] = "非", ["棑"] = "非", ["輩"] = "非", ["裴"] = "非", ["徘"] = "非", ["琲"] = "非", ["痱"] = "非", ["非"] = "非", ["扉"] = "非", ["緋"] = "非", ["猆"] = "非", ["斐"] = "非", ["馡"] = "非", ["騑"] = "非", ["誹"] = "非", ["餥"] = "非", ["匪"] = "非", ["棐"] = "非", ["蜚"] = "非", ["篚"] = "非", ["榧"] = "非", ["鯡"] = "非", ["霏"] = "非", ["菲"] = "非", ["婔"] = "非", ["裶"] = "非", ["悱"] = "非", ["奜"] = "非", ["腓"] = "非", ["陫"] = "非", ["屝"] = "非", ["厞"] = "非", ["翡"] = "非", ["飛"] = "飛", ["騛"] = "飛", ["蜰"] = "肥", ["肥"] = "肥", ["淝"] = "肥", ["萉"] = "肥", ["朏"] = "朏", ["昢"] = "朏", ["扮"] = "分", ["盼"] = "分", ["頒"] = "分", ["朌"] = "分", ["鳻"] = "分", ["份"] = "分", ["汃"] = "分", ["玢"] = "分", ["邠"] = "分", ["攽"] = "分", ["砏"] = "分", ["貧"] = "分", ["湓"] = "分", ["盆"] = "分", ["葐"] = "分", ["坌"] = "分", ["坋"] = "分", ["分"] = "分", ["吩"] = "分", ["粉"] = "分", ["黺"] = "分", ["芬"] = "分", ["紛"] = "分", ["衯"] = "分", ["棻"] = "分", ["氛"] = "分", ["雰"] = "分", ["忿"] = "分", ["魵"] = "分", ["汾"] = "分", ["羒"] = "分", ["枌"] = "分", ["棼"] = "分", ["妢"] = "分", ["梤"] = "分", ["馚"] = "分", ["鼢"] = "分", ["蚡"] = "分", ["弅"] = "分", ["秎"] = "分", ["糞"] = "糞", ["瀵"] = "糞", ["邦"] = "丰", ["梆"] = "丰", ["垹"] = "丰", ["肨"] = "丰", ["蚌"] = "丰", ["玤"] = "丰", ["棒"] = "丰", ["蜯"] = "丰", ["琫"] = "丰", ["菶"] = "丰", ["俸"] = "丰", ["髼"] = "丰", ["蜂"] = "丰", ["韸"] = "丰", ["蓬"] = "丰", ["篷"] = "丰", ["唪"] = "丰", ["埲"] = "丰", ["丰"] = "丰", ["妦"] = "丰", ["仹"] = "丰", ["峯"] = "丰", ["峰"] = "丰", ["鋒"] = "丰", ["烽"] = "丰", ["蠭"] = "丰", ["桻"] = "丰", ["莑"] = "丰", ["夆"] = "丰", ["捧"] = "丰", ["逢"] = "丰", ["縫"] = "丰", ["漨"] = "丰", ["捀"] = "丰", ["奉"] = "丰", ["豐"] = "豐", ["蘴"] = "豐", ["灃"] = "豐", ["寷"] = "豐", ["麷"] = "豐", ["酆"] = "豐", ["幫"] = "封", ["鞤"] = "封", ["封"] = "封", ["葑"] = "封", ["犎"] = "封", ["崶"] = "封", ["湗"] = "封", ["胮"] = "夆", ["逄"] = "夆", ["舽"] = "夆", ["寶"] = "缶", ["珤"] = "缶", ["缶"] = "缶", ["缹"] = "缶", ["趺"] = "夫", ["肤"] = "夫", ["邞"] = "夫", ["鈇"] = "夫", ["衭"] = "夫", ["玞"] = "夫", ["夫"] = "夫", ["鳺"] = "夫", ["扶"] = "夫", ["妋"] = "夫", ["麩"] = "夫", ["蚨"] = "夫", ["芙"] = "夫", ["颫"] = "夫", ["枎"] = "夫", ["敷"] = "旉", ["璷"] = "旉", ["沛"] = "巿", ["芾"] = "巿", ["伂"] = "巿", ["霈"] = "巿", ["旆"] = "巿", ["肺"] = "巿", ["杮"] = "巿", ["巿"] = "巿", ["鄪"] = "弗", ["費"] = "弗", ["砩"] = "弗", ["沸"] = "弗", ["疿"] = "弗", ["茀"] = "弗", ["髴"] = "弗", ["昲"] = "弗", ["靅"] = "弗", ["狒"] = "弗", ["怫"] = "弗", ["胇"] = "弗", ["艴"] = "弗", ["弗"] = "弗", ["紼"] = "弗", ["柫"] = "弗", ["笰"] = "弗", ["拂"] = "弗", ["刜"] = "弗", ["彿"] = "弗", ["佛"] = "弗", ["坲"] = "弗", ["咈"] = "弗", ["炥"] = "弗", ["絥"] = "伏", ["伏"] = "伏", ["垘"] = "伏", ["茯"] = "伏", ["洑"] = "伏", ["栿"] = "伏", ["殍"] = "孚", ["脬"] = "孚", ["捊"] = "孚", ["莩"] = "孚", ["哹"] = "孚", ["浮"] = "孚", ["蜉"] = "孚", ["桴"] = "孚", ["罦"] = "孚", ["琈"] = "孚", ["粰"] = "孚", ["烰"] = "孚", ["艀"] = "孚", ["俘"] = "孚", ["孚"] = "孚", ["孵"] = "孚", ["稃"] = "孚", ["郛"] = "孚", ["筟"] = "孚", ["菔"] = "服", ["服"] = "服", ["鵩"] = "服", ["箙"] = "服", ["棴"] = "服", ["富"] = "畐", ["輻"] = "畐", ["副"] = "畐", ["褔"] = "畐", ["蔔"] = "畐", ["匐"] = "畐", ["逼"] = "畐", ["偪"] = "畐", ["幅"] = "畐", ["楅"] = "畐", ["湢"] = "畐", ["堛"] = "畐", ["愊"] = "畐", ["踾"] = "畐", ["揊"] = "畐", ["稫"] = "畐", ["畐"] = "畐", ["疈"] = "畐", ["腷"] = "畐", ["鶝"] = "畐", ["福"] = "畐", ["蝠"] = "畐", ["葍"] = "畐", ["愎"] = "复", ["鍑"] = "复", ["覆"] = "复", ["復"] = "复", ["椱"] = "复", ["複"] = "复", ["馥"] = "复", ["腹"] = "复", ["輹"] = "复", ["蝮"] = "复", ["蕧"] = "复", ["复"] = "复", ["鰒"] = "复", ["澓"] = "复", ["豧"] = "甫", ["縛"] = "甫", ["逋"] = "甫", ["餔"] = "甫", ["晡"] = "甫", ["庯"] = "甫", ["陠"] = "甫", ["鵏"] = "甫", ["峬"] = "甫", ["誧"] = "甫", ["秿"] = "甫", ["鯆"] = "甫", ["補"] = "甫", ["圃"] = "甫", ["鋪"] = "甫", ["痡"] = "甫", ["浦"] = "甫", ["烳"] = "甫", ["溥"] = "甫", ["悑"] = "甫", ["酺"] = "甫", ["匍"] = "甫", ["蜅"] = "甫", ["脯"] = "甫", ["葡"] = "甫", ["蒱"] = "甫", ["蒲"] = "甫", ["簿"] = "甫", ["捕"] = "甫", ["哺"] = "甫", ["簠"] = "甫", ["甫"] = "甫", ["黼"] = "甫", ["莆"] = "甫", ["俌"] = "甫", ["郙"] = "甫", ["傅"] = "甫", ["搏"] = "甫", ["麱"] = "甫", ["尃"] = "甫", ["榑"] = "甫", ["輔"] = "甫", ["鬴"] = "甫", ["賻"] = "甫", ["博"] = "甫", ["髆"] = "甫", ["鎛"] = "甫", ["猼"] = "甫", ["餺"] = "甫", ["簙"] = "甫", ["鑮"] = "甫", ["欂"] = "甫", ["蒪"] = "甫", ["膊"] = "甫", ["薄"] = "甫", ["礡"] = "甫", ["抪"] = "父", ["布"] = "父", ["佈"] = "父", ["怖"] = "父", ["斧"] = "父", ["父"] = "父", ["蚥"] = "父", ["滏"] = "父", ["釜"] = "父", ["鉜"] = "付", ["跗"] = "付", ["柎"] = "付", ["腑"] = "付", ["俯"] = "付", ["府"] = "付", ["付"] = "付", ["咐"] = "付", ["怤"] = "付", ["泭"] = "付", ["姇"] = "付", ["紨"] = "付", ["拊"] = "付", ["弣"] = "付", ["符"] = "付", ["苻"] = "付", ["坿"] = "付", ["腐"] = "付", ["附"] = "付", ["駙"] = "付", ["鮒"] = "付", ["袝"] = "付", ["蚹"] = "付", ["胕"] = "付", ["阜"] = "阜", ["埠"] = "阜", ["負"] = "負", ["萯"] = "負", ["蝜"] = "負", ["偩"] = "負", ["丐"] = "丐", ["匄"] = "丐", ["訐"] = "干", ["肝"] = "干", ["竿"] = "干", ["干"] = "干", ["奸"] = "干", ["玕"] = "干", ["汗"] = "干", ["迀"] = "干", ["忓"] = "干", ["鳱"] = "干", ["邗"] = "干", ["秆"] = "干", ["矸"] = "干", ["仠"] = "干", ["皯"] = "干", ["衦"] = "干", ["簳"] = "干", ["擀"] = "干", ["旰"] = "干", ["盰"] = "干", ["幹"] = "干", ["杆"] = "干", ["骭"] = "干", ["桿"] = "干", ["趕"] = "干", ["稈"] = "干", ["刊"] = "干", ["靬"] = "干", ["衎"] = "干", ["犴"] = "干", ["豻"] = "干", ["頇"] = "干", ["岸"] = "干", ["鼾"] = "干", ["罕"] = "干", ["焊"] = "干", ["蔊"] = "干", ["虷"] = "干", ["旱"] = "干", ["皔"] = "干", ["釬"] = "干", ["扞"] = "干", ["閈"] = "干", ["馯"] = "干", ["捍"] = "干", ["悍"] = "干", ["銲"] = "干", ["垾"] = "干", ["駻"] = "干", ["睅"] = "干", ["娨"] = "干", ["飦"] = "干", ["赶"] = "干", ["軒"] = "干", ["蓒"] = "干", ["酐"] = "干", ["澣"] = "干", ["紺"] = "甘", ["姏"] = "甘", ["嵌"] = "甘", ["甘"] = "甘", ["柑"] = "甘", ["苷"] = "甘", ["泔"] = "甘", ["坩"] = "甘", ["蚶"] = "甘", ["酣"] = "甘", ["甝"] = "甘", ["魽"] = "甘", ["邯"] = "甘", ["鉗"] = "甘", ["箝"] = "甘", ["黚"] = "甘", ["拑"] = "甘", ["撖"] = "敢", ["澉"] = "敢", ["噉"] = "敢", ["敢"] = "敢", ["橄"] = "敢", ["瞰"] = "敢", ["闞"] = "敢", ["憨"] = "敢", ["譀"] = "敢", ["巖"] = "敢", ["礹"] = "敢", ["豃"] = "敢", ["讝"] = "敢", ["玁"] = "敢", ["嚴"] = "敢", ["儼"] = "敢", ["曮"] = "敢", ["釅"] = "敢", ["乾"] = "倝", ["漧"] = "倝", ["倝"] = "倝", ["榦"] = "倝", ["韓"] = "倝", ["鶾"] = "倝", ["翰"] = "倝", ["瀚"] = "倝", ["螒"] = "倝", ["雗"] = "倝", ["斡"] = "倝", ["岡"] = "岡", ["崗"] = "岡", ["剛"] = "岡", ["掆"] = "岡", ["鋼"] = "岡", ["綱"] = "岡", ["犅"] = "岡", ["堈"] = "岡", ["羔"] = "羔", ["糕"] = "羔", ["餻"] = "羔", ["窯"] = "羔", ["溔"] = "羔", ["高"] = "高", ["膏"] = "高", ["篙"] = "高", ["稿"] = "高", ["稾"] = "高", ["槁"] = "高", ["縞"] = "高", ["暠"] = "高", ["槀"] = "高", ["藁"] = "高", ["燺"] = "高", ["薧"] = "高", ["犒"] = "高", ["蒿"] = "高", ["藃"] = "高", ["豪"] = "高", ["毫"] = "高", ["壕"] = "高", ["濠"] = "高", ["鎬"] = "高", ["滈"] = "高", ["鄗"] = "高", ["鰝"] = "高", ["薃"] = "高", ["搞"] = "高", ["敲"] = "高", ["髇"] = "高", ["嗃"] = "高", ["巐"] = "高", ["歊"] = "高", ["謞"] = "高", ["熇"] = "高", ["碻"] = "高", ["塙"] = "高", ["毃"] = "高", ["翯"] = "高", ["瀥"] = "高", ["睾"] = "皋", ["皋"] = "皋", ["臯"] = "皐", ["橰"] = "皐", ["鷱"] = "皐", ["翱"] = "皐", ["翺"] = "皐", ["噑"] = "皐", ["獋"] = "皐", ["暭"] = "皐", ["夰"] = "夰", ["昦"] = "夰", ["杲"] = "杲", ["菒"] = "杲", ["造"] = "告", ["慥"] = "告", ["艁"] = "告", ["糙"] = "告", ["告"] = "告", ["誥"] = "告", ["郜"] = "告", ["祰"] = "告", ["靠"] = "告", ["浩"] = "告", ["晧"] = "告", ["皓"] = "告", ["窖"] = "告", ["簉"] = "告", ["梏"] = "告", ["硞"] = "告", ["牿"] = "告", ["鵠"] = "告", ["酷"] = "告", ["焅"] = "告", ["嚳"] = "告", ["頶"] = "告", ["戕"] = "戈", ["戈"] = "戈", ["划"] = "戈", ["革"] = "革", ["諽"] = "革", ["緙"] = "革", ["鞂"] = "革", ["隔"] = "鬲", ["膈"] = "鬲", ["搹"] = "鬲", ["鬲"] = "鬲", ["槅"] = "鬲", ["嗝"] = "鬲", ["虉"] = "鬲", ["翮"] = "鬲", ["滆"] = "鬲", ["蒚"] = "鬲", ["鎘"] = "鬲", ["髂"] = "各", ["路"] = "各", ["輅"] = "各", ["賂"] = "各", ["虂"] = "各", ["露"] = "各", ["潞"] = "各", ["鷺"] = "各", ["璐"] = "各", ["簬"] = "各", ["簵"] = "各", ["洛"] = "各", ["駱"] = "各", ["絡"] = "各", ["酪"] = "各", ["烙"] = "各", ["雒"] = "各", ["珞"] = "各", ["硌"] = "各", ["袼"] = "各", ["笿"] = "各", ["鉻"] = "各", ["鮥"] = "各", ["鵅"] = "各", ["挌"] = "各", ["落"] = "各", ["各"] = "各", ["胳"] = "各", ["閣"] = "各", ["格"] = "各", ["擱"] = "各", ["恪"] = "各", ["愙"] = "各", ["貉"] = "各", ["狢"] = "各", ["佫"] = "各", ["略"] = "各", ["茖"] = "各", ["骼"] = "各", ["觡"] = "各", ["蛒"] = "各", ["敋"] = "各", ["客"] = "各", ["喀"] = "各", ["揢"] = "各", ["額"] = "各", ["峉"] = "各", ["頟"] = "各", ["詻"] = "各", ["垎"] = "各", ["楁"] = "各", ["艱"] = "艮", ["齦"] = "艮", ["眼"] = "艮", ["蛝"] = "艮", ["限"] = "艮", ["硍"] = "艮", ["豤"] = "艮", ["詪"] = "艮", ["根"] = "艮", ["跟"] = "艮", ["珢"] = "艮", ["艮"] = "艮", ["茛"] = "艮", ["墾"] = "艮", ["懇"] = "艮", ["垠"] = "艮", ["泿"] = "艮", ["痕"] = "艮", ["拫"] = "艮", ["鞎"] = "艮", ["很"] = "艮", ["恨"] = "艮", ["銀"] = "艮", ["檭"] = "艮", ["烜"] = "亘", ["貆"] = "亘", ["峘"] = "亘", ["狟"] = "亘", ["絙"] = "亘", ["荁"] = "亘", ["宣"] = "亘", ["咺"] = "亘", ["暅"] = "亘", ["桓"] = "亘", ["洹"] = "亘", ["揎"] = "亘", ["愃"] = "亘", ["瑄"] = "亘", ["渲"] = "亘", ["喧"] = "亘", ["萱"] = "亘", ["暄"] = "亘", ["諠"] = "亘", ["翧"] = "亘", ["蝖"] = "亘", ["垣"] = "亘", ["楦"] = "亘", ["唐"] = "庚", ["煻"] = "庚", ["糖"] = "庚", ["搪"] = "庚", ["蓎"] = "庚", ["瑭"] = "庚", ["餹"] = "庚", ["篖"] = "庚", ["螗"] = "庚", ["塘"] = "庚", ["鶶"] = "庚", ["赯"] = "庚", ["磄"] = "庚", ["溏"] = "庚", ["傏"] = "庚", ["鎕"] = "庚", ["榶"] = "庚", ["嵣"] = "庚", ["庚"] = "庚", ["賡"] = "庚", ["鹒"] = "庚", ["康"] = "庚", ["穅"] = "庚", ["糠"] = "庚", ["槺"] = "庚", ["漮"] = "庚", ["躿"] = "庚", ["慷"] = "庚", ["耿"] = "耿", ["褧"] = "耿", ["缸"] = "工", ["篢"] = "工", ["贑"] = "工", ["涳"] = "工", ["江"] = "工", ["肛"] = "工", ["扛"] = "工", ["杠"] = "工", ["豇"] = "工", ["茳"] = "工", ["釭"] = "工", ["矼"] = "工", ["玒"] = "工", ["虹"] = "工", ["腔"] = "工", ["崆"] = "工", ["羫"] = "工", ["控"] = "工", ["椌"] = "工", ["悾"] = "工", ["跫"] = "工", ["啌"] = "工", ["谾"] = "工", ["舡"] = "工", ["缻"] = "工", ["項"] = "工", ["屸"] = "工", ["功"] = "工", ["工"] = "工", ["疘"] = "工", ["魟"] = "工", ["攻"] = "工", ["愩"] = "工", ["碽"] = "工", ["貢"] = "工", ["羾"] = "工", ["空"] = "工", ["箜"] = "工", ["硿"] = "工", ["埪"] = "工", ["鵼"] = "工", ["倥"] = "工", ["鞚"] = "工", ["叿"] = "工", ["嗊"] = "工", ["訌"] = "工", ["紅"] = "工", ["仜"] = "工", ["葒"] = "工", ["渱"] = "工", ["鴻"] = "工", ["汞"] = "工", ["澒"] = "工", ["鞏"] = "工", ["巩"] = "工", ["銎"] = "工", ["恐"] = "工", ["蛩"] = "工", ["筇"] = "工", ["桏"] = "工", ["邛"] = "工", ["弓"] = "弓", ["穹"] = "弓", ["焪"] = "弓", ["芎"] = "弓", ["慃"] = "公", ["袞"] = "公", ["蔉"] = "公", ["滾"] = "公", ["忩"] = "公", ["鬆"] = "公", ["凇"] = "公", ["公"] = "公", ["蚣"] = "公", ["翁"] = "公", ["螉"] = "公", ["蓊"] = "公", ["嗡"] = "公", ["滃"] = "公", ["暡"] = "公", ["勜"] = "公", ["塕"] = "公", ["瓮"] = "公", ["崧"] = "公", ["菘"] = "公", ["硹"] = "公", ["淞"] = "公", ["蜙"] = "公", ["倯"] = "公", ["松"] = "公", ["訟"] = "公", ["頌"] = "公", ["忪"] = "公", ["彸"] = "公", ["衳"] = "公", ["伀"] = "公", ["妐"] = "公", ["炂"] = "公", ["鈆"] = "公", ["肱"] = "厷", ["宏"] = "厷", ["閎"] = "厷", ["吰"] = "厷", ["竑"] = "厷", ["谹"] = "厷", ["翃"] = "厷", ["紘"] = "厷", ["鈜"] = "厷", ["浤"] = "厷", ["耾"] = "厷", ["雄"] = "厷", ["躬"] = "躬", ["匑"] = "躬", ["躳"] = "躬", ["窮"] = "躬", ["藭"] = "躬", ["港"] = "共", ["巷"] = "共", ["衖"] = "共", ["鬨"] = "共", ["烘"] = "共", ["洪"] = "共", ["鉷"] = "共", ["谼"] = "共", ["葓"] = "共", ["哄"] = "共", ["蕻"] = "共", ["恭"] = "共", ["供"] = "共", ["龔"] = "共", ["珙"] = "共", ["共"] = "共", ["髸"] = "共", ["拱"] = "共", ["拲"] = "共", ["蛬"] = "共", ["栱"] = "共", ["輁"] = "共", ["舼"] = "共", ["輂"] = "共", ["溝"] = "冓", ["篝"] = "冓", ["鞲"] = "冓", ["韝"] = "冓", ["褠"] = "冓", ["冓"] = "冓", ["構"] = "冓", ["購"] = "冓", ["媾"] = "冓", ["覯"] = "冓", ["遘"] = "冓", ["煹"] = "冓", ["搆"] = "冓", ["講"] = "冓", ["耩"] = "冓", ["傋"] = "冓", ["斠"] = "冓", ["箇"] = "古", ["個"] = "古", ["居"] = "古", ["橭"] = "古", ["嫴"] = "古", ["姑"] = "古", ["辜"] = "古", ["酤"] = "古", ["蛄"] = "古", ["鴣"] = "古", ["沽"] = "古", ["盬"] = "古", ["古"] = "古", ["罟"] = "古", ["估"] = "古", ["鈷"] = "古", ["詁"] = "古", ["牯"] = "古", ["故"] = "古", ["固"] = "古", ["稒"] = "古", ["痼"] = "古", ["錮"] = "古", ["鯝"] = "古", ["棝"] = "古", ["凅"] = "古", ["枯"] = "古", ["軲"] = "古", ["跍"] = "古", ["骷"] = "古", ["苦"] = "古", ["葫"] = "古", ["餬"] = "古", ["瑚"] = "古", ["湖"] = "古", ["鶘"] = "古", ["猢"] = "古", ["醐"] = "古", ["糊"] = "古", ["箶"] = "古", ["蝴"] = "古", ["胡"] = "古", ["瓳"] = "古", ["怙"] = "古", ["祜"] = "古", ["岵"] = "古", ["婟"] = "古", ["楛"] = "古", ["据"] = "古", ["裾"] = "古", ["琚"] = "古", ["椐"] = "古", ["鶋"] = "古", ["蜛"] = "古", ["崌"] = "古", ["涺"] = "古", ["腒"] = "古", ["鋸"] = "古", ["倨"] = "古", ["踞"] = "古", ["涸"] = "古", ["螸"] = "谷", ["裕"] = "谷", ["容"] = "谷", ["溶"] = "谷", ["鎔"] = "谷", ["蓉"] = "谷", ["傛"] = "谷", ["褣"] = "谷", ["搈"] = "谷", ["瑢"] = "谷", ["嵱"] = "谷", ["熔"] = "谷", ["榕"] = "谷", ["塎"] = "谷", ["谷"] = "谷", ["唂"] = "谷", ["焀"] = "谷", ["俗"] = "谷", ["欲"] = "谷", ["浴"] = "谷", ["鵒"] = "谷", ["峪"] = "谷", ["鋊"] = "谷", ["輍"] = "谷", ["慾"] = "谷", ["股"] = "股", ["羖"] = "股", ["顝"] = "骨", ["滑"] = "骨", ["猾"] = "骨", ["磆"] = "骨", ["螖"] = "骨", ["鶻"] = "骨", ["嗗"] = "骨", ["骨"] = "骨", ["縎"] = "骨", ["愲"] = "骨", ["蓇"] = "骨", ["尳"] = "骨", ["榾"] = "骨", ["搰"] = "骨", ["核"] = "骨", ["皷"] = "鼓", ["鼓"] = "鼓", ["瞽"] = "鼓", ["瓜"] = "瓜", ["坬"] = "瓜", ["窊"] = "瓜", ["畖"] = "瓜", ["搲"] = "瓜", ["攨"] = "瓜", ["孤"] = "瓜", ["苽"] = "瓜", ["胍"] = "瓜", ["泒"] = "瓜", ["呱"] = "瓜", ["觚"] = "瓜", ["柧"] = "瓜", ["罛"] = "瓜", ["軱"] = "瓜", ["菰"] = "瓜", ["箛"] = "瓜", ["狐"] = "瓜", ["弧"] = "瓜", ["碢"] = "冎", ["腡"] = "冎", ["過"] = "冎", ["渦"] = "冎", ["鍋"] = "冎", ["楇"] = "冎", ["瘑"] = "冎", ["緺"] = "冎", ["堝"] = "冎", ["濄"] = "冎", ["鐹"] = "冎", ["薖"] = "冎", ["簻"] = "冎", ["禍"] = "冎", ["窩"] = "冎", ["萵"] = "冎", ["檛"] = "冎", ["膼"] = "冎", ["蝸"] = "冎", ["媧"] = "冎", ["騧"] = "冎", ["冎"] = "冎", ["剮"] = "冎", ["諣"] = "冎", ["歄"] = "冎", ["咼"] = "冎", ["喎"] = "冎", ["箉"] = "枴", ["拐"] = "枴", ["枴"] = "枴", ["袂"] = "夬", ["夬"] = "夬", ["快"] = "夬", ["駃"] = "夬", ["筷"] = "夬", ["炔"] = "夬", ["觖"] = "夬", ["缺"] = "夬", ["蒛"] = "夬", ["吷"] = "夬", ["妜"] = "夬", ["決"] = "夬", ["訣"] = "夬", ["抉"] = "夬", ["玦"] = "夬", ["芵"] = "夬", ["赽"] = "夬", ["鴂"] = "夬", ["鈌"] = "夬", ["决"] = "夬", ["疦"] = "夬", ["蚗"] = "夬", ["趹"] = "夬", ["官"] = "官", ["棺"] = "官", ["倌"] = "官", ["悹"] = "官", ["涫"] = "官", ["管"] = "官", ["琯"] = "官", ["痯"] = "官", ["輨"] = "官", ["錧"] = "官", ["館"] = "官", ["婠"] = "官", ["悺"] = "官", ["逭"] = "官", ["菅"] = "官", ["綰"] = "官", ["捾"] = "官", ["毌"] = "毌", ["貫"] = "毌", ["樌"] = "毌", ["鏆"] = "毌", ["遦"] = "毌", ["慣"] = "毌", ["摜"] = "毌", ["瑻"] = "毌", ["謴"] = "毌", ["觀"] = "雚", ["灌"] = "雚", ["鸛"] = "雚", ["瓘"] = "雚", ["矔"] = "雚", ["懽"] = "雚", ["爟"] = "雚", ["雚"] = "雚", ["罐"] = "雚", ["鑵"] = "雚", ["歡"] = "雚", ["驩"] = "雚", ["貛"] = "雚", ["酄"] = "雚", ["獾"] = "雚", ["讙"] = "雚", ["嚾"] = "雚", ["權"] = "雚", ["顴"] = "雚", ["孉"] = "雚", ["蠸"] = "雚", ["虇"] = "雚", ["勸"] = "雚", ["光"] = "光", ["灮"] = "光", ["洸"] = "光", ["桄"] = "光", ["胱"] = "光", ["垙"] = "光", ["輄"] = "光", ["恍"] = "光", ["茪"] = "光", ["侊"] = "光", ["晃"] = "光", ["幌"] = "光", ["榥"] = "光", ["滉"] = "光", ["觥"] = "光", ["駫"] = "光", ["街"] = "圭", ["鞋"] = "圭", ["娾"] = "圭", ["佳"] = "圭", ["鮭"] = "圭", ["涯"] = "圭", ["崖"] = "圭", ["啀"] = "圭", ["厓"] = "圭", ["捱"] = "圭", ["睚"] = "圭", ["娃"] = "圭", ["洼"] = "圭", ["哇"] = "圭", ["胿"] = "圭", ["溎"] = "圭", ["觟"] = "圭", ["黊"] = "圭", ["蘳"] = "圭", ["蛙"] = "圭", ["窪"] = "圭", ["卦"] = "圭", ["挂"] = "圭", ["掛"] = "圭", ["詿"] = "圭", ["罣"] = "圭", ["絓"] = "圭", ["鼃"] = "圭", ["圭"] = "圭", ["珪"] = "圭", ["邽"] = "圭", ["閨"] = "圭", ["袿"] = "圭", ["窐"] = "圭", ["茥"] = "圭", ["桂"] = "圭", ["筀"] = "圭", ["奎"] = "圭", ["刲"] = "圭", ["蝰"] = "圭", ["楏"] = "圭", ["睳"] = "圭", ["畦"] = "圭", ["眭"] = "圭", ["烓"] = "圭", ["跬"] = "圭", ["恚"] = "圭", ["硅"] = "圭", ["嫢"] = "規", ["規"] = "規", ["槻"] = "規", ["鬹"] = "規", ["摫"] = "規", ["瞡"] = "規", ["窺"] = "規", ["闚"] = "規", ["鬮"] = "龜", ["龜"] = "龜", ["孈"] = "巂", ["纗"] = "巂", ["攜"] = "巂", ["蠵"] = "巂", ["鑴"] = "巂", ["驨"] = "巂", ["酅"] = "巂", ["雟"] = "巂", ["讗"] = "巂", ["觽"] = "巂", ["儶"] = "巂", ["觿"] = "巂", ["欈"] = "巂", ["瓗"] = "巂", ["携"] = "巂", ["睽"] = "癸", ["湀"] = "癸", ["聧"] = "癸", ["藈"] = "癸", ["癸"] = "癸", ["葵"] = "癸", ["鄈"] = "癸", ["楑"] = "癸", ["戣"] = "癸", ["鍨"] = "癸", ["騤"] = "癸", ["揆"] = "癸", ["猤"] = "癸", ["闋"] = "癸", ["謉"] = "鬼", ["瑰"] = "鬼", ["傀"] = "鬼", ["藱"] = "鬼", ["魁"] = "鬼", ["磈"] = "鬼", ["塊"] = "鬼", ["嵬"] = "鬼", ["隗"] = "鬼", ["槐"] = "鬼", ["瘣"] = "鬼", ["廆"] = "鬼", ["溾"] = "鬼", ["螝"] = "鬼", ["褢"] = "鬼", ["騩"] = "鬼", ["愧"] = "鬼", ["媿"] = "鬼", ["聭"] = "鬼", ["餽"] = "鬼", ["鬼"] = "鬼", ["魏"] = "鬼", ["巍"] = "鬼", ["犩"] = "鬼", ["簋"] = "簋", ["孂"] = "簋", ["藬"] = "貴", ["僓"] = "貴", ["頹"] = "貴", ["穨"] = "貴", ["蘈"] = "貴", ["隤"] = "貴", ["墤"] = "貴", ["尵"] = "貴", ["蹪"] = "貴", ["瀢"] = "貴", ["鞼"] = "貴", ["膭"] = "貴", ["憒"] = "貴", ["靧"] = "貴", ["潰"] = "貴", ["繢"] = "貴", ["嬇"] = "貴", ["殨"] = "貴", ["闠"] = "貴", ["簣"] = "貴", ["嘳"] = "貴", ["蕢"] = "貴", ["聵"] = "貴", ["樻"] = "貴", ["䙡"] = "貴", ["匱"] = "貴", ["臾"] = "貴", ["饋"] = "貴", ["櫃"] = "貴", ["遺"] = "貴", ["壝"] = "貴", ["瞶"] = "貴", ["貴"] = "貴", ["郭"] = "郭", ["埻"] = "郭", ["崞"] = "郭", ["椁"] = "郭", ["槨"] = "郭", ["噋"] = "郭", ["廓"] = "郭", ["鞹"] = "郭", ["漷"] = "郭", ["霩"] = "郭", ["裸"] = "果", ["躶"] = "果", ["果"] = "果", ["菓"] = "果", ["猓"] = "果", ["輠"] = "果", ["裹"] = "果", ["蜾"] = "果", ["惈"] = "果", ["粿"] = "果", ["窠"] = "果", ["稞"] = "果", ["課"] = "果", ["髁"] = "果", ["棵"] = "果", ["顆"] = "果", ["堁"] = "果", ["敤"] = "果", ["夥"] = "果", ["婐"] = "果", ["踝"] = "果", ["祼"] = "果", ["該"] = "亥", ["垓"] = "亥", ["賅"] = "亥", ["陔"] = "亥", ["豥"] = "亥", ["荄"] = "亥", ["郂"] = "亥", ["姟"] = "亥", ["絯"] = "亥", ["晐"] = "亥", ["峐"] = "亥", ["侅"] = "亥", ["胲"] = "亥", ["頦"] = "亥", ["奒"] = "亥", ["輆"] = "亥", ["欬"] = "亥", ["硋"] = "亥", ["閡"] = "亥", ["咳"] = "亥", ["孩"] = "亥", ["亥"] = "亥", ["劾"] = "亥", ["痎"] = "亥", ["烗"] = "亥", ["骸"] = "亥", ["駭"] = "亥", ["刻"] = "亥", ["餩"] = "亥", ["核"] = "亥", ["轄"] = "害", ["害"] = "害", ["犗"] = "害", ["幰"] = "害", ["攇"] = "害", ["憲"] = "害", ["瀗"] = "害", ["割"] = "害", ["磍"] = "害", ["瞎"] = "害", ["鎋"] = "害", ["鶷"] = "害", ["縖"] = "害", ["豁"] = "害", ["蜬"] = "函", ["函"] = "函", ["涵"] = "函", ["顄"] = "函", ["圅"] = "函", ["菡"] = "函", ["寒"] = "寒", ["蹇"] = "寒", ["謇"] = "寒", ["搴"] = "寒", ["藆"] = "寒", ["騫"] = "寒", ["褰"] = "寒", ["攐"] = "寒", ["鑳"] = "寒", ["寋"] = "寒", ["鶱"] = "寒", ["厂"] = "厂", ["屵"] = "厂", ["儺"] = "暵", ["臡"] = "暵", ["嘆"] = "暵", ["灘"] = "暵", ["擹"] = "暵", ["攤"] = "暵", ["癱"] = "暵", ["歎"] = "暵", ["難"] = "暵", ["暵"] = "暵", ["熯"] = "暵", ["漢"] = "暵", ["戁"] = "暵", ["薅"] = "好", ["好"] = "好", ["饕"] = "号", ["號"] = "号", ["号"] = "号", ["枵"] = "号", ["呺"] = "号", ["鴞"] = "号", ["昊"] = "昊", ["顥"] = "昊", ["灝"] = "昊", ["科"] = "禾", ["萪"] = "禾", ["蝌"] = "禾", ["犐"] = "禾", ["禾"] = "禾", ["和"] = "禾", ["咊"] = "禾", ["盉"] = "禾", ["龢"] = "禾", ["鉌"] = "禾", ["俰"] = "禾", ["龕"] = "合", ["媕"] = "合", ["頜"] = "合", ["答"] = "合", ["畣"] = "合", ["荅"] = "合", ["嗒"] = "合", ["褡"] = "合", ["撘"] = "合", ["搭"] = "合", ["榙"] = "合", ["佮"] = "合", ["蛤"] = "合", ["鴿"] = "合", ["合"] = "合", ["郃"] = "合", ["匌"] = "合", ["鉿"] = "合", ["閤"] = "合", ["鞈"] = "合", ["韐"] = "合", ["鮯"] = "合", ["哈"] = "合", ["姶"] = "合", ["欱"] = "合", ["盒"] = "合", ["耠"] = "合", ["詥"] = "合", ["塔"] = "合", ["鞳"] = "合", ["劄"] = "合", ["跲"] = "合", ["袷"] = "合", ["餄"] = "合", ["恰"] = "合", ["帢"] = "合", ["洽"] = "合", ["祫"] = "合", ["珨"] = "合", ["烚"] = "合", ["歙"] = "合", ["湁"] = "合", ["拾"] = "合", ["給"] = "合", ["翕"] = "合", ["噏"] = "合", ["潝"] = "合", ["熻"] = "合", ["嬆"] = "合", ["翖"] = "合", ["闟"] = "合", ["愒"] = "曷", ["馤"] = "曷", ["靄"] = "曷", ["餲"] = "曷", ["喝"] = "曷", ["揭"] = "曷", ["偈"] = "曷", ["猲"] = "曷", ["葛"] = "曷", ["輵"] = "曷", ["獦"] = "曷", ["渴"] = "曷", ["嵑"] = "曷", ["暍"] = "曷", ["曷"] = "曷", ["褐"] = "曷", ["鶡"] = "曷", ["毼"] = "曷", ["蝎"] = "曷", ["鞨"] = "曷", ["遏"] = "曷", ["齃"] = "曷", ["堨"] = "曷", ["擖"] = "曷", ["楬"] = "曷", ["朅"] = "曷", ["藒"] = "曷", ["竭"] = "曷", ["碣"] = "曷", ["羯"] = "曷", ["鍻"] = "曷", ["歇"] = "曷", ["蠍"] = "曷", ["謁"] = "曷", ["蓋"] = "盍", ["盖"] = "盍", ["溘"] = "盍", ["搕"] = "盍", ["嗑"] = "盍", ["榼"] = "盍", ["磕"] = "盍", ["瞌"] = "盍", ["盍"] = "盍", ["闔"] = "盍", ["篕"] = "盍", ["熆"] = "盍", ["鰪"] = "盍", ["廅"] = "盍", ["圔"] = "盍", ["饁"] = "盍", ["鶴"] = "寉", ["髉"] = "寉", ["篧"] = "寉", ["榷"] = "寉", ["搉"] = "寉", ["傕"] = "寉", ["確"] = "寉", ["寉"] = "寉", ["蒮"] = "寉", ["嚜"] = "黑", ["嫼"] = "黑", ["墨"] = "黑", ["默"] = "黑", ["纆"] = "黑", ["黑"] = "黑", ["潶"] = "黑", ["亨"] = "亨", ["享"] = "亨", ["烹"] = "亨", ["脝"] = "亨", ["悙"] = "亨", ["哼"] = "亨", ["搄"] = "亙", ["縆"] = "亙", ["絙"] = "亙", ["亙"] = "亙", ["堩"] = "亙", ["恒"] = "亙", ["峘"] = "亙", ["弘"] = "弘", ["鞃"] = "弘", ["苰"] = "弘", ["泓"] = "弘", ["宖"] = "弘", ["紭"] = "弘", ["緱"] = "侯", ["侯"] = "侯", ["喉"] = "侯", ["猴"] = "侯", ["瘊"] = "侯", ["篌"] = "侯", ["糇"] = "侯", ["帿"] = "侯", ["睺"] = "侯", ["矦"] = "侯", ["餱"] = "侯", ["翭"] = "侯", ["葔"] = "侯", ["鄇"] = "侯", ["鍭"] = "侯", ["鯸"] = "侯", ["候"] = "侯", ["堠"] = "侯", ["垢"] = "后", ["詬"] = "后", ["茩"] = "后", ["姤"] = "后", ["銗"] = "后", ["骺"] = "后", ["后"] = "后", ["垕"] = "后", ["郈"] = "后", ["逅"] = "后", ["鲘"] = "后", ["缿"] = "后", ["罅"] = "乎", ["呼"] = "乎", ["軤"] = "乎", ["苸"] = "乎", ["嘑"] = "乎", ["歑"] = "乎", ["謼"] = "乎", ["滹"] = "乎", ["乎"] = "乎", ["虖"] = "乎", ["嫭"] = "乎", ["唬"] = "虍", ["戲"] = "虍", ["巇"] = "虍", ["隵"] = "虍", ["嚱"] = "虍", ["盧"] = "虍", ["鑪"] = "虍", ["壚"] = "虍", ["籚"] = "虍", ["蘆"] = "虍", ["顱"] = "虍", ["髗"] = "虍", ["鱸"] = "虍", ["攎"] = "虍", ["櫨"] = "虍", ["轤"] = "虍", ["黸"] = "虍", ["獹"] = "虍", ["鸕"] = "虍", ["艫"] = "虍", ["纑"] = "虍", ["瀘"] = "虍", ["瓐"] = "虍", ["爐"] = "虍", ["嚧"] = "虍", ["矑"] = "虍", ["罏"] = "虍", ["蠦"] = "虍", ["虜"] = "虍", ["擄"] = "虍", ["艣"] = "虍", ["鐪"] = "虍", ["虖"] = "虍", ["虍"] = "虍", ["雐"] = "虍", ["虎"] = "虍", ["琥"] = "虍", ["萀"] = "虍", ["臚"] = "虍", ["廬"] = "虍", ["驢"] = "虍", ["藘"] = "虍", ["爈"] = "虍", ["櫖"] = "虍", ["儢"] = "虍", ["慮"] = "虍", ["勴"] = "虍", ["鑢"] = "虍", ["濾"] = "虍", ["攄"] = "虍", ["處"] = "虍", ["豦"] = "虍", ["據"] = "虍", ["鐻"] = "虍", ["澽"] = "虍", ["虛"] = "虍", ["墟"] = "虍", ["懅"] = "虍", ["蘧"] = "虍", ["籧"] = "虍", ["醵"] = "虍", ["璩"] = "虍", ["虡"] = "虍", ["遽"] = "虍", ["勮"] = "虍", ["嘘"] = "虍", ["驉"] = "虍", ["歔"] = "虍", ["魖"] = "虍", ["膚"] = "虍", ["虧"] = "虍", ["噱"] = "虍", ["臄"] = "虍", ["劇"] = "虍", ["諕"] = "虍", ["魱"] = "互", ["互"] = "互", ["冱"] = "互", ["枑"] = "互", ["妒"] = "戸", ["雇"] = "戸", ["顧"] = "戸", ["戽"] = "戸", ["戶"] = "戸", ["扈"] = "戸", ["帍"] = "戸", ["昈"] = "戸", ["滬"] = "戸", ["簄"] = "戸", ["齭"] = "戸", ["所"] = "戸", ["鞾"] = "華", ["華"] = "華", ["譁"] = "華", ["樺"] = "華", ["嘩"] = "華", ["驊"] = "華", ["鏵"] = "華", ["崋"] = "華", ["訛"] = "化", ["吪"] = "化", ["鈋"] = "化", ["囮"] = "化", ["魤"] = "化", ["靴"] = "化", ["貨"] = "化", ["花"] = "化", ["化"] = "化", ["杹"] = "化", ["𠤎"] = "化", ["畫"] = "畫", ["澅"] = "畫", ["繣"] = "畫", ["劃"] = "畫", ["嫿"] = "畫", ["瓌"] = "褱", ["櫰"] = "褱", ["褱"] = "褱", ["懷"] = "褱", ["瀤"] = "褱", ["壞"] = "褱", ["蘾"] = "褱", ["寬"] = "萈", ["髖"] = "萈", ["萈"] = "萈", ["臗"] = "萈", ["渙"] = "奐", ["瘓"] = "奐", ["喚"] = "奐", ["煥"] = "奐", ["奐"] = "奐", ["寏"] = "奐", ["換"] = "奐", ["漶"] = "患", ["贃"] = "患", ["患"] = "患", ["槵"] = "患", ["僙"] = "黃", ["廣"] = "黃", ["鄺"] = "黃", ["懬"] = "黃", ["爌"] = "黃", ["曠"] = "黃", ["矌"] = "黃", ["壙"] = "黃", ["纊"] = "黃", ["黃"] = "黃", ["璜"] = "黃", ["潢"] = "黃", ["簧"] = "黃", ["癀"] = "黃", ["鱑"] = "黃", ["獚"] = "黃", ["蟥"] = "黃", ["趪"] = "黃", ["櫎"] = "黃", ["擴"] = "黃", ["瀇"] = "黃", ["獷"] = "黃", ["觵"] = "黃", ["礦"] = "黃", ["鑛"] = "黃", ["穬"] = "黃", ["橫"] = "黃", ["黌"] = "黃", ["鐄"] = "黃", ["嚝"] = "黃", ["彉"] = "黃", ["彍"] = "黃", ["脄"] = "灰", ["盔"] = "灰", ["詼"] = "灰", ["恢"] = "灰", ["灰"] = "灰", ["鬌"] = "隓", ["隋"] = "隓", ["墮"] = "隓", ["媠"] = "隓", ["橢"] = "隓", ["嫷"] = "隓", ["毻"] = "隓", ["堶"] = "隓", ["憜"] = "隓", ["惰"] = "隓", ["嶞"] = "隓", ["髓"] = "隓", ["瀡"] = "隓", ["隨"] = "隓", ["隓"] = "隓", ["隳"] = "隓", ["撱"] = "隓", ["回"] = "回", ["徊"] = "回", ["茴"] = "回", ["洄"] = "回", ["迴"] = "回", ["佪"] = "回", ["蛔"] = "回", ["毀"] = "毀", ["燬"] = "毀", ["檓"] = "毀", ["毇"] = "毀", ["譭"] = "毀", ["卉"] = "卉", ["芔"] = "卉", ["泋"] = "卉", ["櫘"] = "彗", ["彗"] = "彗", ["篲"] = "彗", ["鏏"] = "彗", ["槥"] = "彗", ["轊"] = "彗", ["熭"] = "彗", ["嘒"] = "彗", ["暳"] = "彗", ["嚖"] = "彗", ["慧"] = "彗", ["蔧"] = "彗", ["雪"] = "彗", ["韢"] = "惠", ["繐"] = "惠", ["憓"] = "惠", ["潓"] = "惠", ["惠"] = "惠", ["蟪"] = "惠", ["蕙"] = "惠", ["橞"] = "惠", ["譓"] = "惠", ["鏸"] = "惠", ["穗"] = "惠", ["譮"] = "會", ["會"] = "會", ["儈"] = "會", ["膾"] = "會", ["鱠"] = "會", ["襘"] = "會", ["禬"] = "會", ["檜"] = "會", ["旝"] = "會", ["澮"] = "會", ["鄶"] = "會", ["廥"] = "會", ["鬠"] = "會", ["劊"] = "會", ["獪"] = "會", ["繪"] = "會", ["懀"] = "會", ["薈"] = "會", ["嬒"] = "會", ["瞺"] = "會", ["噲"] = "會", ["璯"] = "會", ["鍲"] = "昏", ["抿"] = "昏", ["緡"] = "昏", ["捪"] = "昏", ["湣"] = "昏", ["昏"] = "昏", ["婚"] = "昏", ["閽"] = "昏", ["惛"] = "昏", ["棔"] = "昏", ["殙"] = "昏", ["溷"] = "圂", ["慁"] = "圂", ["圂"] = "圂", ["火"] = "火", ["邩"] = "火", ["伙"] = "火", ["幗"] = "或", ["慖"] = "或", ["簂"] = "或", ["蔮"] = "或", ["國"] = "或", ["或"] = "或", ["惑"] = "或", ["蜮"] = "或", ["閾"] = "或", ["緎"] = "或", ["淢"] = "或", ["域"] = "或", ["罭"] = "或", ["棫"] = "或", ["琙"] = "或", ["魊"] = "或", ["馘"] = "或", ["聝"] = "或", ["膕"] = "或", ["摑"] = "或", ["漍"] = "或", ["嘓"] = "或", ["蟈"] = "或", ["掝"] = "或", ["彧"] = "或", ["稶"] = "或", ["檴"] = "蒦", ["鱯"] = "蒦", ["護"] = "蒦", ["頀"] = "蒦", ["濩"] = "蒦", ["韄"] = "蒦", ["鳠"] = "蒦", ["擭"] = "蒦", ["瓁"] = "蒦", ["劐"] = "蒦", ["穫"] = "蒦", ["鑊"] = "蒦", ["矆"] = "蒦", ["鸌"] = "蒦", ["雘"] = "蒦", ["蠖"] = "蒦", ["臒"] = "蒦", ["嬳"] = "蒦", ["彠"] = "蒦", ["嚄"] = "蒦", ["獲"] = "蒦", ["靃"] = "霍", ["臛"] = "霍", ["籗"] = "霍", ["霍"] = "霍", ["藿"] = "霍", ["攉"] = "霍", ["矐"] = "霍", ["瀖"] = "霍", ["癨"] = "霍", ["繫"] = "毄", ["檕"] = "毄", ["轚"] = "毄", ["蘻"] = "毄", ["罊"] = "毄", ["蟿"] = "毄", ["礊"] = "毄", ["擊"] = "毄", ["墼"] = "毄", ["趿"] = "及", ["鈒"] = "及", ["靸"] = "及", ["馺"] = "及", ["砐"] = "及", ["魥"] = "及", ["扱"] = "及", ["笈"] = "及", ["衱"] = "及", ["极"] = "及", ["昅"] = "及", ["雭"] = "及", ["急"] = "及", ["級"] = "及", ["汲"] = "及", ["芨"] = "及", ["伋"] = "及", ["彶"] = "及", ["及"] = "及", ["岌"] = "及", ["吸"] = "及", ["秸"] = "吉", ["髻"] = "吉", ["夡"] = "吉", ["鴶"] = "吉", ["袺"] = "吉", ["頡"] = "吉", ["劼"] = "吉", ["硈"] = "吉", ["咭"] = "吉", ["黠"] = "吉", ["聐"] = "吉", ["趌"] = "吉", ["結"] = "吉", ["拮"] = "吉", ["桔"] = "吉", ["狤"] = "吉", ["擷"] = "吉", ["襭"] = "吉", ["翓"] = "吉", ["纈"] = "吉", ["吉"] = "吉", ["郆"] = "吉", ["詰"] = "吉", ["蛣"] = "吉", ["佶"] = "吉", ["鮚"] = "吉", ["姞"] = "吉", ["欯"] = "吉", ["恄"] = "吉", ["卪"] = "即", ["癤"] = "即", ["幯"] = "即", ["節"] = "即", ["蝍"] = "即", ["蠞"] = "即", ["堲"] = "即", ["唧"] = "即", ["楖"] = "即", ["揤"] = "即", ["櫛"] = "即", ["瀄"] = "即", ["擳"] = "即", ["即"] = "即", ["鯽"] = "即", ["亟"] = "茍", ["茍"] = "茍", ["殛"] = "茍", ["極"] = "茍", ["嫉"] = "疾", ["疾"] = "疾", ["蒺"] = "疾", ["愱"] = "疾", ["槉"] = "疾", ["棘"] = "棘", ["襋"] = "棘", ["蕀"] = "棘", ["雜"] = "集", ["磼"] = "集", ["囃"] = "集", ["鏶"] = "集", ["穕"] = "集", ["潗"] = "集", ["集"] = "集", ["肌"] = "几", ["飢"] = "几", ["机"] = "几", ["虮"] = "几", ["几"] = "几", ["麂"] = "几", ["改"] = "己", ["跽"] = "己", ["己"] = "己", ["紀"] = "己", ["妀"] = "己", ["記"] = "己", ["杞"] = "己", ["屺"] = "己", ["芑"] = "己", ["邔"] = "己", ["玘"] = "己", ["忌"] = "己", ["鵋"] = "己", ["誋"] = "己", ["梞"] = "己", ["丮"] = "丮", ["谻"] = "丮", ["脊"] = "脊", ["蹐"] = "脊", ["鶺"] = "脊", ["塉"] = "脊", ["瘠"] = "脊", ["膌"] = "脊", ["機"] = "幾", ["譏"] = "幾", ["嘰"] = "幾", ["磯"] = "幾", ["鞿"] = "幾", ["饑"] = "幾", ["禨"] = "幾", ["幾"] = "幾", ["鐖"] = "幾", ["僟"] = "幾", ["璣"] = "幾", ["蟣"] = "幾", ["穖"] = "幾", ["畿"] = "幾", ["戟"] = "戟", ["撠"] = "戟", ["溉"] = "旡", ["槩"] = "旡", ["概"] = "旡", ["摡"] = "旡", ["慨"] = "旡", ["嘅"] = "旡", ["穊"] = "旡", ["暨"] = "旡", ["鱀"] = "旡", ["塈"] = "旡", ["既"] = "旡", ["旡"] = "旡", ["蔇"] = "旡", ["炁"] = "旡", ["櫭"] = "旡", ["曁"] = "旡", ["季"] = "季", ["悸"] = "季", ["痵"] = "季", ["蔡"] = "祭", ["瘵"] = "祭", ["祭"] = "祭", ["際"] = "祭", ["穄"] = "祭", ["鰶"] = "祭", ["傺"] = "祭", ["摖"] = "祭", ["擦"] = "祭", ["攃"] = "祭", ["礤"] = "祭", ["察"] = "祭", ["詧"] = "祭", ["冀"] = "冀", ["驥"] = "冀", ["懻"] = "冀", ["罽"] = "罽", ["瀱"] = "罽", ["蘮"] = "罽", ["繼"] = "繼", ["檵"] = "繼", ["妿"] = "加", ["賀"] = "加", ["迦"] = "加", ["茄"] = "加", ["伽"] = "加", ["枷"] = "加", ["嘉"] = "加", ["加"] = "加", ["笳"] = "加", ["痂"] = "加", ["袈"] = "加", ["跏"] = "加", ["珈"] = "加", ["鴐"] = "加", ["架"] = "加", ["駕"] = "加", ["瘸"] = "加", ["瘞"] = "夾", ["瘱"] = "夾", ["脥"] = "夾", ["浹"] = "夾", ["挾"] = "夾", ["夾"] = "夾", ["郟"] = "夾", ["筴"] = "夾", ["裌"] = "夾", ["鵊"] = "夾", ["狹"] = "夾", ["峽"] = "夾", ["硤"] = "夾", ["陜"] = "夾", ["陿"] = "夾", ["翜"] = "夾", ["梜"] = "夾", ["頰"] = "夾", ["莢"] = "夾", ["鋏"] = "夾", ["蛺"] = "夾", ["唊"] = "夾", ["悏"] = "夾", ["匧"] = "夾", ["愜"] = "夾", ["篋"] = "夾", ["俠"] = "夾", ["綊"] = "夾", ["家"] = "家", ["傢"] = "家", ["幏"] = "家", ["稼"] = "家", ["嫁"] = "家", ["戛"] = "戛", ["嘎"] = "戛", ["笚"] = "甲", ["閘"] = "甲", ["鉀"] = "甲", ["甲"] = "甲", ["胛"] = "甲", ["岬"] = "甲", ["押"] = "甲", ["玾"] = "甲", ["呷"] = "甲", ["匣"] = "甲", ["狎"] = "甲", ["柙"] = "甲", ["翈"] = "甲", ["炠"] = "甲", ["鴨"] = "甲", ["庘"] = "甲", ["葭"] = "叚", ["麚"] = "叚", ["瘕"] = "叚", ["豭"] = "叚", ["貑"] = "叚", ["猳"] = "叚", ["犌"] = "叚", ["假"] = "叚", ["嘏"] = "叚", ["婽"] = "叚", ["椵"] = "叚", ["叚"] = "叚", ["蝦"] = "叚", ["煆"] = "叚", ["霞"] = "叚", ["遐"] = "叚", ["瑕"] = "叚", ["鰕"] = "叚", ["碬"] = "叚", ["蕸"] = "叚", ["赮"] = "叚", ["鍜"] = "叚", ["騢"] = "叚", ["暇"] = "叚", ["殘"] = "戔", ["戔"] = "戔", ["帴"] = "戔", ["虥"] = "戔", ["盞"] = "戔", ["醆"] = "戔", ["琖"] = "戔", ["剗"] = "戔", ["棧"] = "戔", ["輚"] = "戔", ["嶘"] = "戔", ["錢"] = "戔", ["俴"] = "戔", ["籛"] = "戔", ["淺"] = "戔", ["濺"] = "戔", ["踐"] = "戔", ["諓"] = "戔", ["餞"] = "戔", ["賤"] = "戔", ["綫"] = "戔", ["箋"] = "戔", ["牋"] = "戔", ["顅"] = "肩", ["掮"] = "肩", ["肩"] = "肩", ["猏"] = "肩", ["菺"] = "肩", ["鵳"] = "肩", ["姦"] = "姦", ["葌"] = "姦", ["譧"] = "兼", ["賺"] = "兼", ["尲"] = "兼", ["鹻"] = "兼", ["歉"] = "兼", ["槏"] = "兼", ["鰜"] = "兼", ["稴"] = "兼", ["豏"] = "兼", ["甉"] = "兼", ["廉"] = "兼", ["鎌"] = "兼", ["鬑"] = "兼", ["鐮"] = "兼", ["簾"] = "兼", ["薕"] = "兼", ["蠊"] = "兼", ["嬚"] = "兼", ["溓"] = "兼", ["嵰"] = "兼", ["隒"] = "兼", ["熑"] = "兼", ["濂"] = "兼", ["燫"] = "兼", ["兼"] = "兼", ["縑"] = "兼", ["鶼"] = "兼", ["蒹"] = "兼", ["搛"] = "兼", ["謙"] = "兼", ["膁"] = "兼", ["嗛"] = "兼", ["慊"] = "兼", ["傔"] = "兼", ["馦"] = "兼", ["嫌"] = "兼", ["鼸"] = "兼", ["尷"] = "兼", ["藍"] = "監", ["襤"] = "監", ["籃"] = "監", ["懢"] = "監", ["儖"] = "監", ["蘫"] = "監", ["攬"] = "監", ["欖"] = "監", ["覽"] = "監", ["爁"] = "監", ["擥"] = "監", ["灠"] = "監", ["濫"] = "監", ["嚂"] = "監", ["纜"] = "監", ["監"] = "監", ["礛"] = "監", ["鑑"] = "監", ["艦"] = "監", ["檻"] = "監", ["壏"] = "監", ["轞"] = "監", ["鹽"] = "監", ["蘭"] = "柬", ["攔"] = "柬", ["欄"] = "柬", ["瀾"] = "柬", ["讕"] = "柬", ["闌"] = "柬", ["韊"] = "柬", ["幱"] = "柬", ["籣"] = "柬", ["躝"] = "柬", ["爛"] = "柬", ["爤"] = "柬", ["鑭"] = "柬", ["糷"] = "柬", ["斕"] = "柬", ["揀"] = "柬", ["柬"] = "柬", ["暕"] = "柬", ["諫"] = "柬", ["練"] = "柬", ["鍊"] = "柬", ["煉"] = "柬", ["楝"] = "柬", ["萰"] = "柬", ["堜"] = "柬", ["湅"] = "柬", ["襺"] = "繭", ["繭"] = "繭", ["蠒"] = "繭", ["笄"] = "幵", ["枅"] = "幵", ["蚈"] = "幵", ["羿"] = "幵", ["栞"] = "幵", ["雃"] = "幵", ["詽"] = "幵", ["揅"] = "幵", ["幵"] = "幵", ["鳽"] = "幵", ["豣"] = "幵", ["麉"] = "幵", ["趼"] = "幵", ["汧"] = "幵", ["岍"] = "幵", ["研"] = "幵", ["妍"] = "幵", ["訮"] = "幵", ["鈃"] = "幵", ["涀"] = "見", ["莧"] = "見", ["粯"] = "見", ["晛"] = "見", ["筧"] = "見", ["絸"] = "見", ["垷"] = "見", ["挸"] = "見", ["見"] = "見", ["俔"] = "見", ["蜆"] = "見", ["硯"] = "見", ["峴"] = "見", ["哯"] = "見", ["睍"] = "見", ["現"] = "見", ["犍"] = "建", ["騝"] = "建", ["鍵"] = "建", ["揵"] = "建", ["鞬"] = "建", ["腱"] = "建", ["湕"] = "建", ["建"] = "建", ["旔"] = "建", ["楗"] = "建", ["健"] = "建", ["間"] = "閒", ["簡"] = "閒", ["澗"] = "閒", ["鐧"] = "閒", ["蕑"] = "閒", ["覵"] = "閒", ["襉"] = "閒", ["僩"] = "閒", ["鬜"] = "閒", ["癇"] = "閒", ["瞯"] = "閒", ["憪"] = "閒", ["橌"] = "閒", ["撊"] = "閒", ["瀳"] = "薦", ["韉"] = "薦", ["薦"] = "薦", ["畺"] = "畺", ["畕"] = "畺", ["礓"] = "畺", ["繮"] = "畺", ["韁"] = "畺", ["橿"] = "畺", ["薑"] = "畺", ["疆"] = "畺", ["壃"] = "畺", ["僵"] = "畺", ["彊"] = "畺", ["麠"] = "畺", ["贛"] = "夅", ["灨"] = "夅", ["竷"] = "夅", ["戇"] = "夅", ["洚"] = "夅", ["降"] = "夅", ["絳"] = "夅", ["栙"] = "夅", ["夅"] = "夅", ["跭"] = "夅", ["隆"] = "夅", ["癃"] = "夅", ["窿"] = "夅", ["霳"] = "夅", ["烄"] = "交", ["礮"] = "交", ["交"] = "交", ["郊"] = "交", ["茭"] = "交", ["蛟"] = "交", ["鮫"] = "交", ["鵁"] = "交", ["咬"] = "交", ["鉸"] = "交", ["佼"] = "交", ["詨"] = "交", ["絞"] = "交", ["狡"] = "交", ["姣"] = "交", ["筊"] = "交", ["校"] = "交", ["珓"] = "交", ["跤"] = "交", ["頝"] = "交", ["骹"] = "交", ["齩"] = "交", ["洨"] = "交", ["胶"] = "交", ["效"] = "交", ["効"] = "交", ["傚"] = "交", ["皎"] = "交", ["恔"] = "交", ["晈"] = "交", ["窔"] = "交", ["駮"] = "交", ["癄"] = "焦", ["焦"] = "焦", ["蕉"] = "焦", ["鷦"] = "焦", ["僬"] = "焦", ["噍"] = "焦", ["膲"] = "焦", ["鐎"] = "焦", ["蟭"] = "焦", ["燋"] = "焦", ["醮"] = "焦", ["潐"] = "焦", ["趭"] = "焦", ["樵"] = "焦", ["譙"] = "焦", ["憔"] = "焦", ["劁"] = "焦", ["顦"] = "焦", ["嶕"] = "焦", ["撨"] = "焦", ["穛"] = "焦", ["捔"] = "角", ["桷"] = "角", ["角"] = "角", ["埆"] = "角", ["确"] = "角", ["斛"] = "角", ["槲"] = "角", ["蔛"] = "角", ["礉"] = "敫", ["邀"] = "敫", ["憿"] = "敫", ["徼"] = "敫", ["儌"] = "敫", ["璬"] = "敫", ["皦"] = "敫", ["繳"] = "敫", ["敫"] = "敫", ["譥"] = "敫", ["激"] = "敫", ["噭"] = "敫", ["獥"] = "敫", ["鸄"] = "敫", ["墽"] = "敫", ["竅"] = "敫", ["覈"] = "敫", ["燩"] = "敫", ["檄"] = "敫", ["薂"] = "敫", ["皆"] = "皆", ["偕"] = "皆", ["階"] = "皆", ["喈"] = "皆", ["稭"] = "皆", ["堦"] = "皆", ["楷"] = "皆", ["鶛"] = "皆", ["湝"] = "皆", ["蝔"] = "皆", ["鍇"] = "皆", ["揩"] = "皆", ["諧"] = "皆", ["瑎"] = "皆", ["龤"] = "皆", ["孑"] = "孑", ["𨥂"] = "孑", ["劫"] = "劫", ["蜐"] = "劫", ["疀"] = "疌", ["萐"] = "疌", ["箑"] = "疌", ["啑"] = "疌", ["睫"] = "疌", ["婕"] = "疌", ["緁"] = "疌", ["捷"] = "疌", ["疌"] = "疌", ["寁"] = "疌", ["倢"] = "疌", ["崨"] = "疌", ["踕"] = "疌", ["誱"] = "疌", ["徢"] = "疌", ["蜨"] = "疌", ["桀"] = "桀", ["傑"] = "桀", ["榤"] = "桀", ["嵥"] = "桀", ["滐"] = "桀", ["搩"] = "桀", ["謋"] = "桀", ["巀"] = "截", ["截"] = "截", ["蠽"] = "截", ["薢"] = "解", ["解"] = "解", ["檞"] = "解", ["懈"] = "解", ["繲"] = "解", ["廨"] = "解", ["蟹"] = "解", ["獬"] = "解", ["澥"] = "解", ["嶰"] = "解", ["邂"] = "解", ["夆"] = "丯", ["丯"] = "丯", ["瘛"] = "丯", ["觢"] = "丯", ["契"] = "丯", ["栔"] = "丯", ["禊"] = "丯", ["稧"] = "丯", ["楔"] = "丯", ["葜"] = "丯", ["猰"] = "丯", ["窫"] = "丯", ["揳"] = "丯", ["偰"] = "丯", ["潔"] = "丯", ["絜"] = "丯", ["鍥"] = "丯", ["挈"] = "丯", ["蛪"] = "丯", ["齧"] = "丯", ["褉"] = "丯", ["喫"] = "丯", ["妎"] = "介", ["芥"] = "介", ["尬"] = "介", ["界"] = "介", ["介"] = "介", ["疥"] = "介", ["玠"] = "介", ["砎"] = "介", ["魪"] = "介", ["价"] = "介", ["衸"] = "介", ["齘"] = "介", ["骱"] = "介", ["扴"] = "介", ["圿"] = "介", ["忦"] = "介", ["祴"] = "戒", ["駴"] = "戒", ["戒"] = "戒", ["誡"] = "戒", ["悈"] = "戒", ["械"] = "戒", ["裓"] = "戒", ["巾"] = "巾", ["帘"] = "巾", ["貪"] = "今", ["嗿"] = "今", ["僋"] = "今", ["酓"] = "今", ["馠"] = "今", ["谽"] = "今", ["唅"] = "今", ["含"] = "今", ["肣"] = "今", ["頷"] = "今", ["筨"] = "今", ["梒"] = "今", ["鋡"] = "今", ["莟"] = "今", ["琀"] = "今", ["浛"] = "今", ["盦"] = "今", ["韽"] = "今", ["玪"] = "今", ["妗"] = "今", ["欦"] = "今", ["黔"] = "今", ["鈐"] = "今", ["鳹"] = "今", ["雂"] = "今", ["念"] = "今", ["梣"] = "今", ["枔"] = "今", ["岑"] = "今", ["笒"] = "今", ["涔"] = "今", ["侺"] = "今", ["今"] = "今", ["黅"] = "今", ["衿"] = "今", ["衾"] = "今", ["坅"] = "今", ["搇"] = "今", ["琴"] = "今", ["禽"] = "今", ["芩"] = "今", ["庈"] = "今", ["耹"] = "今", ["靲"] = "今", ["擒"] = "今", ["檎"] = "今", ["紟"] = "今", ["吟"] = "今", ["訡"] = "今", ["廞"] = "今", ["陰"] = "今", ["霠"] = "今", ["飲"] = "今", ["蔭"] = "今", ["廕"] = "今", ["矜"] = "今", ["蘄"] = "斤", ["祈"] = "斤", ["頎"] = "斤", ["旂"] = "斤", ["圻"] = "斤", ["蚚"] = "斤", ["岓"] = "斤", ["玂"] = "斤", ["沂"] = "斤", ["掀"] = "斤", ["釿"] = "斤", ["齗"] = "斤", ["听"] = "斤", ["垽"] = "斤", ["斤"] = "斤", ["菦"] = "斤", ["靳"] = "斤", ["劤"] = "斤", ["勁"] = "斤", ["赾"] = "斤", ["芹"] = "斤", ["近"] = "斤", ["斦"] = "斤", ["欣"] = "斤", ["忻"] = "斤", ["昕"] = "斤", ["訢"] = "斤", ["炘"] = "斤", ["邤"] = "斤", ["庍"] = "斤", ["焮"] = "斤", ["淦"] = "金", ["顉"] = "金", ["金"] = "金", ["錦"] = "金", ["欽"] = "金", ["菳"] = "金", ["嶔"] = "金", ["撳"] = "金", ["捦"] = "金", ["鵭"] = "金", ["唫"] = "金", ["鈙"] = "金", ["崟"] = "金", ["趛"] = "金", ["簪"] = "兓", ["撍"] = "兓", ["鐕"] = "兓", ["憯"] = "兓", ["噆"] = "兓", ["朁"] = "兓", ["蠶"] = "兓", ["蚕"] = "兓", ["糣"] = "兓", ["熸"] = "兓", ["鬵"] = "兓", ["灊"] = "兓", ["潛"] = "兓", ["僭"] = "兓", ["兓"] = "兓", ["嶜"] = "兓", ["兂"] = "兓", ["譖"] = "兓", ["葏"] = "津", ["津"] = "津", ["囏"] = "堇", ["螼"] = "堇", ["堇"] = "堇", ["墐"] = "堇", ["𥎊"] = "堇", ["僅"] = "堇", ["瑾"] = "堇", ["覲"] = "堇", ["殣"] = "堇", ["饉"] = "堇", ["廑"] = "堇", ["瘽"] = "堇", ["歏"] = "堇", ["鄞"] = "堇", ["謹"] = "堇", ["槿"] = "堇", ["漌"] = "堇", ["慬"] = "堇", ["勤"] = "堇", ["懃"] = "堇", ["懄"] = "堇", ["濜"] = "盡", ["盡"] = "盡", ["賮"] = "盡", ["燼"] = "盡", ["藎"] = "盡", ["壗"] = "盡", ["璶"] = "盡", ["鄑"] = "晉", ["戩"] = "晉", ["榗"] = "晉", ["晉"] = "晉", ["縉"] = "晉", ["搢"] = "晉", ["瑨"] = "晉", ["璡"] = "進", ["進"] = "進", ["羥"] = "坙", ["俓"] = "坙", ["牼"] = "坙", ["硁"] = "坙", ["誙"] = "坙", ["娙"] = "坙", ["莖"] = "坙", ["痙"] = "坙", ["葝"] = "巠", ["頸"] = "巠", ["勁"] = "巠", ["鑋"] = "巠", ["輕"] = "巠", ["涇"] = "巠", ["經"] = "巠", ["鵛"] = "巠", ["巠"] = "巠", ["剄"] = "巠", ["烴"] = "巠", ["徑"] = "巠", ["逕"] = "巠", ["桱"] = "巠", ["蛵"] = "巠", ["陘"] = "巠", ["鋞"] = "巠", ["脛"] = "巠", ["踁"] = "巠", ["涼"] = "京", ["凉"] = "京", ["椋"] = "京", ["綡"] = "京", ["輬"] = "京", ["諒"] = "京", ["掠"] = "京", ["弶"] = "京", ["京"] = "京", ["麖"] = "京", ["鶁"] = "京", ["景"] = "京", ["鯨"] = "京", ["黥"] = "京", ["勍"] = "京", ["剠"] = "京", ["倞"] = "京", ["影"] = "京", ["璟"] = "京", ["憬"] = "京", ["暻"] = "京", ["澋"] = "京", ["兢"] = "兢", ["殑"] = "兢", ["硎"] = "井", ["耕"] = "井", ["荊"] = "井", ["井"] = "井", ["丼"] = "井", ["妌"] = "井", ["穽"] = "井", ["阱"] = "井", ["汫"] = "井", ["刑"] = "井", ["形"] = "井", ["邢"] = "井", ["鉶"] = "井", ["型"] = "井", ["侀"] = "井", ["滰"] = "竟", ["境"] = "竟", ["竟"] = "竟", ["鏡"] = "竟", ["獍"] = "竟", ["樈"] = "竟", ["璄"] = "竟", ["摬"] = "竟", ["蟼"] = "敬", ["憼"] = "敬", ["驚"] = "敬", ["警"] = "敬", ["儆"] = "敬", ["璥"] = "敬", ["檠"] = "敬", ["敬"] = "敬", ["擎"] = "敬", ["曔"] = "敬", ["誩"] = "誩", ["競"] = "誩", ["苘"] = "冋", ["詗"] = "冋", ["駉"] = "冋", ["坰"] = "冋", ["冋"] = "冋", ["絅"] = "冋", ["扃"] = "冋", ["炯"] = "冋", ["迥"] = "冋", ["泂"] = "冋", ["臩"] = "臦", ["臦"] = "臦", ["艽"] = "丩", ["芁"] = "丩", ["荍"] = "丩", ["叫"] = "丩", ["訆"] = "丩", ["嘂"] = "丩", ["收"] = "丩", ["糾"] = "丩", ["朻"] = "丩", ["丩"] = "丩", ["赳"] = "丩", ["虬"] = "丩", ["虯"] = "丩", ["觓"] = "丩", ["尻"] = "九", ["訄"] = "九", ["艽"] = "九", ["虓"] = "九", ["鳩"] = "九", ["勼"] = "九", ["九"] = "九", ["究"] = "九", ["仇"] = "九", ["鼽"] = "九", ["犰"] = "九", ["叴"] = "九", ["厹"] = "九", ["頄"] = "九", ["朹"] = "九", ["馗"] = "九", ["扏"] = "九", ["訅"] = "九", ["釚"] = "九", ["肍"] = "九", ["軌"] = "九", ["宄"] = "九", ["氿"] = "九", ["匭"] = "九", ["泦"] = "九", ["旭"] = "九", ["畂"] = "久", ["久"] = "久", ["灸"] = "久", ["玖"] = "久", ["疚"] = "久", ["柩"] = "久", ["羑"] = "久", ["臼"] = "臼", ["齨"] = "臼", ["桕"] = "臼", ["舅"] = "臼", ["舊"] = "臼", ["匶"] = "臼", ["閰"] = "臼", ["咎"] = "咎", ["鼛"] = "咎", ["櫜"] = "咎", ["倃"] = "咎", ["綹"] = "咎", ["麔"] = "咎", ["晷"] = "咎", ["厬"] = "咎", ["僦"] = "就", ["就"] = "就", ["鷲"] = "就", ["殧"] = "就", ["噈"] = "就", ["蹴"] = "就", ["廄"] = "廄", ["匓"] = "廄", ["菊"] = "匊", ["鞠"] = "匊", ["掬"] = "匊", ["匊"] = "匊", ["鵴"] = "匊", ["椈"] = "匊", ["諊"] = "匊", ["踘"] = "匊", ["趜"] = "匊", ["蘜"] = "匊", ["鞫"] = "匊", ["巈"] = "匊", ["麴"] = "匊", ["毱"] = "匊", ["驧"] = "匊", ["鋦"] = "局", ["挶"] = "局", ["梮"] = "局", ["局"] = "局", ["跼"] = "局", ["侷"] = "局", ["瞁"] = "狊", ["湨"] = "狊", ["郹"] = "狊", ["狊"] = "狊", ["鶪"] = "狊", ["鼳"] = "狊", ["犑"] = "狊", ["闃"] = "狊", ["柜"] = "巨", ["渠"] = "巨", ["磲"] = "巨", ["蕖"] = "巨", ["蟝"] = "巨", ["璖"] = "巨", ["巨"] = "巨", ["距"] = "巨", ["拒"] = "巨", ["苣"] = "巨", ["炬"] = "巨", ["詎"] = "巨", ["鉅"] = "巨", ["秬"] = "巨", ["粔"] = "巨", ["駏"] = "巨", ["歫"] = "巨", ["矩"] = "巨", ["榘"] = "巨", ["勾"] = "句", ["鉤"] = "句", ["鴝"] = "句", ["句"] = "句", ["夠"] = "句", ["枸"] = "句", ["軥"] = "句", ["狗"] = "句", ["苟"] = "句", ["岣"] = "句", ["笱"] = "句", ["玽"] = "句", ["耇"] = "句", ["豿"] = "句", ["敂"] = "句", ["怐"] = "句", ["雊"] = "句", ["竘"] = "句", ["齁"] = "句", ["呴"] = "句", ["蚼"] = "句", ["豞"] = "句", ["訽"] = "句", ["佝"] = "句", ["拘"] = "句", ["駒"] = "句", ["眗"] = "句", ["跔"] = "句", ["鮈"] = "句", ["痀"] = "句", ["蒟"] = "句", ["絇"] = "句", ["邭"] = "句", ["劬"] = "句", ["朐"] = "句", ["鼩"] = "句", ["斪"] = "句", ["翑"] = "句", ["葋"] = "句", ["姁"] = "句", ["欨"] = "句", ["喣"] = "句", ["煦"] = "句", ["昫"] = "句", ["俱"] = "具", ["椇"] = "具", ["具"] = "具", ["埧"] = "具", ["颶"] = "具", ["瞿"] = "瞿", ["衢"] = "瞿", ["氍"] = "瞿", ["癯"] = "瞿", ["蠷"] = "瞿", ["臞"] = "瞿", ["欋"] = "瞿", ["鸜"] = "瞿", ["灈"] = "瞿", ["躣"] = "瞿", ["忂"] = "瞿", ["戵"] = "瞿", ["鑺"] = "瞿", ["懼"] = "瞿", ["潫"] = "龹", ["豢"] = "龹", ["勬"] = "龹", ["韏"] = "龹", ["眷"] = "龹", ["桊"] = "龹", ["絭"] = "龹", ["觠"] = "龹", ["飬"] = "龹", ["弮"] = "龹", ["拳"] = "龹", ["卷"] = "龹", ["齤"] = "龹", ["券"] = "龹", ["腃"] = "卷", ["卷"] = "卷", ["菤"] = "卷", ["捲"] = "卷", ["埢"] = "卷", ["睠"] = "卷", ["弮"] = "卷", ["犈"] = "卷", ["棬"] = "卷", ["鬈"] = "卷", ["圈"] = "卷", ["蜷"] = "卷", ["踡"] = "卷", ["婘"] = "卷", ["蔨"] = "卷", ["倦"] = "卷", ["淃"] = "卷", ["綣"] = "卷", ["裷"] = "卷", ["隽"] = "雋", ["檇"] = "雋", ["臇"] = "雋", ["嶲"] = "雋", ["鐫"] = "雋", ["雋"] = "雋", ["儁"] = "雋", ["寯"] = "雋", ["鱖"] = "欮", ["蹶"] = "欮", ["厥"] = "欮", ["欮"] = "欮", ["蕨"] = "欮", ["劂"] = "欮", ["瘚"] = "欮", ["蟨"] = "欮", ["蟩"] = "欮", ["橜"] = "欮", ["撅"] = "欮", ["闕"] = "欮", ["橛"] = "欮", ["鷢"] = "欮", ["蹷"] = "欮", ["憠"] = "欮", ["蕝"] = "絕", ["脃"] = "絕", ["脆"] = "絕", ["絕"] = "絕", ["釂"] = "爵", ["皭"] = "爵", ["爝"] = "爵", ["爵"] = "爵", ["嚼"] = "爵", ["穱"] = "爵", ["灂"] = "爵", ["钁"] = "矍", ["攫"] = "矍", ["矍"] = "矍", ["躩"] = "矍", ["玃"] = "矍", ["貜"] = "矍", ["彏"] = "矍", ["戄"] = "矍", ["籰"] = "矍", ["涒"] = "君", ["麏"] = "君", ["莙"] = "君", ["輑"] = "君", ["蜠"] = "君", ["峮"] = "君", ["窘"] = "君", ["僒"] = "君", ["君"] = "君", ["桾"] = "君", ["宭"] = "君", ["鮶"] = "君", ["捃"] = "君", ["群"] = "君", ["羣"] = "君", ["裙"] = "君", ["裠"] = "君", ["帬"] = "君", ["焄"] = "君", ["郡"] = "君", ["揮"] = "軍", ["輝"] = "軍", ["翬"] = "軍", ["暉"] = "軍", ["煇"] = "軍", ["楎"] = "軍", ["瀈"] = "軍", ["韗"] = "軍", ["褌"] = "軍", ["鶤"] = "軍", ["緷"] = "軍", ["睴"] = "軍", ["璭"] = "軍", ["瘒"] = "軍", ["顐"] = "軍", ["諢"] = "軍", ["餫"] = "軍", ["渾"] = "軍", ["琿"] = "軍", ["鼲"] = "軍", ["堚"] = "軍", ["鯶"] = "軍", ["軍"] = "軍", ["皸"] = "軍", ["齳"] = "軍", ["喗"] = "軍", ["葷"] = "軍", ["惲"] = "軍", ["賱"] = "軍", ["運"] = "軍", ["暈"] = "軍", ["鄆"] = "軍", ["諐"] = "侃", ["侃"] = "侃", ["偘"] = "侃", ["笐"] = "亢", ["亢"] = "亢", ["牨"] = "亢", ["苀"] = "亢", ["魧"] = "亢", ["迒"] = "亢", ["邟"] = "亢", ["忼"] = "亢", ["骯"] = "亢", ["抗"] = "亢", ["炕"] = "亢", ["伉"] = "亢", ["閌"] = "亢", ["犺"] = "亢", ["蚢"] = "亢", ["砊"] = "亢", ["阬"] = "亢", ["頏"] = "亢", ["航"] = "亢", ["杭"] = "亢", ["沆"] = "亢", ["肮"] = "亢", ["吭"] = "亢", ["秔"] = "亢", ["坑"] = "亢", ["劥"] = "亢", ["丂"] = "丂", ["攷"] = "丂", ["考"] = "丂", ["烤"] = "丂", ["拷"] = "丂", ["栲"] = "丂", ["洘"] = "丂", ["銬"] = "丂", ["巧"] = "丂", ["朽"] = "丂", ["彀"] = "殻", ["鷇"] = "殻", ["瞉"] = "殻", ["豰"] = "殻", ["瑴"] = "殻", ["愨"] = "殻", ["殼"] = "殻", ["觳"] = "殻", ["嗀"] = "殻", ["穀"] = "殻", ["糓"] = "殻", ["轂"] = "殻", ["榖"] = "殻", ["瀔"] = "殻", ["縠"] = "殻", ["砢"] = "可", ["柯"] = "可", ["菏"] = "可", ["牁"] = "可", ["滒"] = "可", ["哥"] = "可", ["歌"] = "可", ["謌"] = "可", ["鴚"] = "可", ["哿"] = "可", ["舸"] = "可", ["笴"] = "可", ["軻"] = "可", ["珂"] = "可", ["可"] = "可", ["岢"] = "可", ["坷"] = "可", ["蚵"] = "可", ["呵"] = "可", ["訶"] = "可", ["抲"] = "可", ["荷"] = "可", ["何"] = "可", ["河"] = "可", ["苛"] = "可", ["魺"] = "可", ["袔"] = "可", ["阿"] = "可", ["妸"] = "可", ["疴"] = "可", ["鈳"] = "可", ["娿"] = "可", ["痾"] = "可", ["跒"] = "可", ["閜"] = "可", ["克"] = "克", ["剋"] = "克", ["勊"] = "克", ["肯"] = "肯", ["肎"] = "肯", ["吼"] = "孔", ["孔"] = "孔", ["口"] = "口", ["叩"] = "口", ["扣"] = "口", ["釦"] = "口", ["筘"] = "口", ["滱"] = "寇", ["寇"] = "寇", ["簆"] = "寇", ["蔻"] = "寇", ["怪"] = "圣", ["恠"] = "圣", ["圣"] = "圣", ["凷"] = "凷", ["屆"] = "凷", ["款"] = "款", ["欵"] = "款", ["歀"] = "款", ["窾"] = "款", ["夔"] = "夔", ["犪"] = "夔", ["躨"] = "夔", ["昆"] = "昆", ["琨"] = "昆", ["鯤"] = "昆", ["菎"] = "昆", ["崐"] = "昆", ["蜫"] = "昆", ["惃"] = "昆", ["錕"] = "昆", ["猑"] = "昆", ["騉"] = "昆", ["緄"] = "昆", ["輥"] = "昆", ["棍"] = "昆", ["餛"] = "昆", ["混"] = "昆", ["焜"] = "昆", ["倱"] = "昆", ["掍"] = "昆", ["箟"] = "昆", ["硱"] = "困", ["梱"] = "困", ["捆"] = "困", ["綑"] = "困", ["閫"] = "困", ["悃"] = "困", ["稛"] = "困", ["裍"] = "困", ["齫"] = "困", ["困"] = "困", ["涃"] = "困", ["咶"] = "桰", ["話"] = "桰", ["刮"] = "桰", ["鴰"] = "桰", ["趏"] = "桰", ["舌"] = "桰", ["姡"] = "桰", ["頢"] = "桰", ["括"] = "桰", ["活"] = "桰", ["适"] = "桰", ["栝"] = "桰", ["佸"] = "桰", ["髺"] = "桰", ["聒"] = "桰", ["銛"] = "桰", ["葀"] = "桰", ["懖"] = "桰", ["筈"] = "桰", ["萿"] = "桰", ["蛞"] = "桰", ["闊"] = "桰", ["秳"] = "桰", ["莿"] = "剌", ["鵣"] = "剌", ["辣"] = "剌", ["辢"] = "剌", ["剌"] = "剌", ["揧"] = "剌", ["瘌"] = "剌", ["楋"] = "剌", ["蝲"] = "剌", ["來"] = "來", ["萊"] = "來", ["淶"] = "來", ["徠"] = "來", ["崍"] = "來", ["郲"] = "來", ["騋"] = "來", ["猍"] = "來", ["鯠"] = "來", ["鶆"] = "來", ["庲"] = "來", ["棶"] = "來", ["斄"] = "來", ["逨"] = "來", ["麳"] = "來", ["唻"] = "來", ["賚"] = "來", ["睞"] = "來", ["勑"] = "來", ["誺"] = "來", ["倈"] = "來", ["憖"] = "來", ["猌"] = "來", ["麥"] = "來", ["賴"] = "賴", ["籟"] = "賴", ["癩"] = "賴", ["瀨"] = "賴", ["藾"] = "賴", ["攋"] = "賴", ["懶"] = "賴", ["嬾"] = "賴", ["獺"] = "賴", ["牢"] = "牢", ["窂"] = "牢", ["哰"] = "牢", ["勞"] = "勞", ["撈"] = "勞", ["嘮"] = "勞", ["癆"] = "勞", ["簩"] = "勞", ["蟧"] = "勞", ["憥"] = "勞", ["澇"] = "勞", ["僗"] = "勞", ["髝"] = "勞", ["膋"] = "勞", ["犖"] = "勞", ["老"] = "老", ["姥"] = "老", ["栳"] = "老", ["恅"] = "老", ["樂"] = "樂", ["轢"] = "樂", ["濼"] = "樂", ["躒"] = "樂", ["擽"] = "樂", ["爍"] = "樂", ["鑠"] = "樂", ["藥"] = "樂", ["櫟"] = "樂", ["纅"] = "樂", ["礫"] = "樂", ["瓅"] = "樂", ["皪"] = "樂", ["觻"] = "樂", ["嚛"] = "樂", ["摞"] = "畾", ["騾"] = "畾", ["螺"] = "畾", ["蔂"] = "畾", ["虆"] = "畾", ["瘰"] = "畾", ["礌"] = "畾", ["雷"] = "畾", ["擂"] = "畾", ["攂"] = "畾", ["礧"] = "畾", ["儡"] = "畾", ["瓃"] = "畾", ["櫑"] = "畾", ["鑘"] = "畾", ["鐳"] = "畾", ["畾"] = "畾", ["轠"] = "畾", ["罍"] = "畾", ["蕾"] = "畾", ["癗"] = "畾", ["磥"] = "畾", ["累"] = "畾", ["儽"] = "畾", ["樏"] = "畾", ["鸓"] = "畾", ["嫘"] = "畾", ["纍"] = "畾", ["欙"] = "畾", ["纝"] = "畾", ["壘"] = "畾", ["櫐"] = "畾", ["蘽"] = "畾", ["藟"] = "畾", ["讄"] = "畾", ["絫"] = "厽", ["厽"] = "厽", ["垒"] = "厽", ["頛"] = "耒", ["郲"] = "耒", ["耒"] = "耒", ["銇"] = "耒", ["洡"] = "耒", ["誄"] = "耒", ["藞"] = "磊", ["磊"] = "磊", ["蘱"] = "頪", ["纇"] = "頪", ["類"] = "頪", ["頪"] = "頪", ["禷"] = "頪", ["謧"] = "离", ["璃"] = "离", ["離"] = "离", ["縭"] = "离", ["离"] = "离", ["醨"] = "离", ["樆"] = "离", ["褵"] = "离", ["漓"] = "离", ["黐"] = "离", ["籬"] = "离", ["灕"] = "离", ["蘺"] = "离", ["攡"] = "离", ["魑"] = "离", ["螭"] = "离", ["摛"] = "离", ["犛"] = "釐", ["釐"] = "釐", ["嫠"] = "釐", ["剺"] = "釐", ["孷"] = "釐", ["漦"] = "釐", ["氂"] = "釐", ["盠"] = "蠡", ["欚"] = "蠡", ["劙"] = "蠡", ["埋"] = "里", ["霾"] = "里", ["薶"] = "里", ["榸"] = "里", ["厘"] = "里", ["狸"] = "里", ["貍"] = "里", ["梩"] = "里", ["艃"] = "里", ["里"] = "里", ["理"] = "里", ["鯉"] = "里", ["俚"] = "里", ["悝"] = "里", ["娌"] = "里", ["裏"] = "里", ["荲"] = "里", ["體"] = "豊", ["軆"] = "豊", ["禮"] = "豊", ["澧"] = "豊", ["醴"] = "豊", ["豊"] = "豊", ["鱧"] = "豊", ["勒"] = "力", ["肋"] = "力", ["扐"] = "力", ["仂"] = "力", ["艻"] = "力", ["朸"] = "力", ["玏"] = "力", ["泐"] = "力", ["阞"] = "力", ["竻"] = "力", ["力"] = "力", ["屴"] = "力", ["鳨"] = "力", ["涖"] = "立", ["莅"] = "立", ["蒞"] = "立", ["位"] = "立", ["拉"] = "立", ["菈"] = "立", ["颯"] = "立", ["立"] = "立", ["粒"] = "立", ["笠"] = "立", ["砬"] = "立", ["岦"] = "立", ["苙"] = "立", ["鴗"] = "立", ["雴"] = "立", ["泣"] = "立", ["犁"] = "利", ["黎"] = "利", ["莉"] = "利", ["黧"] = "利", ["鯬"] = "利", ["筣"] = "利", ["蔾"] = "利", ["藜"] = "利", ["邌"] = "利", ["瓈"] = "利", ["鵹"] = "利", ["棃"] = "利", ["梨"] = "利", ["蟍"] = "利", ["蜊"] = "利", ["鑗"] = "利", ["利"] = "利", ["痢"] = "利", ["浰"] = "利", ["灑"] = "丽", ["籭"] = "丽", ["躧"] = "丽", ["曬"] = "丽", ["廲"] = "丽", ["驪"] = "丽", ["鱺"] = "丽", ["欐"] = "丽", ["丽"] = "丽", ["麗"] = "丽", ["儷"] = "丽", ["鸝"] = "丽", ["酈"] = "丽", ["孋"] = "丽", ["矖"] = "丽", ["穲"] = "丽", ["邐"] = "丽", ["彲"] = "丽", ["釃"] = "丽", ["襹"] = "丽", ["纚"] = "丽", ["錑"] = "戾", ["戻"] = "戾", ["戾"] = "戾", ["綟"] = "戾", ["唳"] = "戾", ["蜧"] = "戾", ["捩"] = "戾", ["悷"] = "戾", ["淚"] = "戾", ["曃"] = "隶", ["埭"] = "隶", ["逮"] = "隶", ["靆"] = "隶", ["齂"] = "隶", ["棣"] = "隶", ["隸"] = "隶", ["肆"] = "隶", ["蕼"] = "隶", ["肂"] = "隶", ["殔"] = "隶", ["隶"] = "隶", ["栗"] = "栗", ["溧"] = "栗", ["慄"] = "栗", ["鷅"] = "栗", ["凓"] = "栗", ["篥"] = "栗", ["麜"] = "栗", ["瑮"] = "栗", ["塛"] = "栗", ["搮"] = "栗", ["秝"] = "秝", ["歷"] = "秝", ["曆"] = "秝", ["磿"] = "秝", ["靂"] = "秝", ["癧"] = "秝", ["櫪"] = "秝", ["藶"] = "秝", ["瀝"] = "秝", ["攊"] = "秝", ["厤"] = "秝", ["連"] = "連", ["漣"] = "連", ["鰱"] = "連", ["翴"] = "連", ["鏈"] = "連", ["璉"] = "連", ["僆"] = "連", ["摙"] = "連", ["蓮"] = "連", ["嗹"] = "連", ["縺"] = "連", ["剆"] = "良", ["郎"] = "良", ["稂"] = "良", ["桹"] = "良", ["鋃"] = "良", ["硠"] = "良", ["浪"] = "良", ["蜋"] = "良", ["琅"] = "良", ["狼"] = "良", ["欴"] = "良", ["踉"] = "良", ["莨"] = "良", ["艆"] = "良", ["駺"] = "良", ["躴"] = "良", ["筤"] = "良", ["閬"] = "良", ["哴"] = "良", ["蓈"] = "良", ["廊"] = "良", ["榔"] = "良", ["螂"] = "良", ["瑯"] = "良", ["朗"] = "良", ["朖"] = "良", ["誏"] = "良", ["俍"] = "良", ["崀"] = "良", ["埌"] = "良", ["蒗"] = "良", ["娘"] = "良", ["良"] = "良", ["粮"] = "良", ["悢"] = "良", ["倆"] = "兩", ["兩"] = "兩", ["脼"] = "兩", ["緉"] = "兩", ["蜽"] = "兩", ["魎"] = "兩", ["輛"] = "兩", ["糧"] = "量", ["量"] = "量", ["釕"] = "了", ["了"] = "了", ["料"] = "料", ["炓"] = "料", ["簝"] = "尞", ["潦"] = "尞", ["獠"] = "尞", ["轑"] = "尞", ["橑"] = "尞", ["燎"] = "尞", ["繚"] = "尞", ["璙"] = "尞", ["憭"] = "尞", ["爒"] = "尞", ["僚"] = "尞", ["嫽"] = "尞", ["療"] = "尞", ["膫"] = "尞", ["鷯"] = "尞", ["遼"] = "尞", ["撩"] = "尞", ["嘹"] = "尞", ["寮"] = "尞", ["飉"] = "尞", ["竂"] = "尞", ["鐐"] = "尞", ["蟟"] = "尞", ["瞭"] = "尞", ["嶚"] = "尞", ["镽"] = "尞", ["例"] = "列", ["鮤"] = "列", ["栵"] = "列", ["洌"] = "列", ["銐"] = "列", ["峛"] = "列", ["列"] = "列", ["裂"] = "列", ["烈"] = "列", ["冽"] = "列", ["迾"] = "列", ["蛚"] = "列", ["茢"] = "列", ["颲"] = "列", ["鴷"] = "列", ["挒"] = "列", ["姴"] = "列", ["鑞"] = "巤", ["蠟"] = "巤", ["邋"] = "巤", ["臘"] = "巤", ["臈"] = "巤", ["擸"] = "巤", ["擖"] = "巤", ["獵"] = "巤", ["躐"] = "巤", ["鬣"] = "巤", ["儠"] = "巤", ["犣"] = "巤", ["鱲"] = "巤", ["巤"] = "巤", ["獦"] = "巤", ["婪"] = "林", ["惏"] = "林", ["啉"] = "林", ["漤"] = "林", ["醂"] = "林", ["林"] = "林", ["琳"] = "林", ["淋"] = "林", ["痳"] = "林", ["箖"] = "林", ["霖"] = "林", ["菻"] = "林", ["罧"] = "林", ["棽"] = "林", ["綝"] = "林", ["郴"] = "林", ["禁"] = "林", ["襟"] = "林", ["僸"] = "林", ["澿"] = "林", ["噤"] = "林", ["凚"] = "林", ["齽"] = "林", ["潾"] = "粦", ["膦"] = "粦", ["憐"] = "粦", ["燐"] = "粦", ["鄰"] = "粦", ["轔"] = "粦", ["嶙"] = "粦", ["粼"] = "粦", ["磷"] = "粦", ["疄"] = "粦", ["麟"] = "粦", ["鱗"] = "粦", ["璘"] = "粦", ["翷"] = "粦", ["瞵"] = "粦", ["獜"] = "粦", ["驎"] = "粦", ["鏻"] = "粦", ["繗"] = "粦", ["僯"] = "粦", ["橉"] = "粦", ["撛"] = "粦", ["遴"] = "粦", ["粦"] = "粦", ["甐"] = "粦", ["麐"] = "吝", ["吝"] = "吝", ["悋"] = "吝", ["藺"] = "閵", ["閵"] = "閵", ["躪"] = "閵", ["轥"] = "閵", ["棱"] = "夌", ["稜"] = "夌", ["輘"] = "夌", ["倰"] = "夌", ["祾"] = "夌", ["踜"] = "夌", ["凌"] = "夌", ["菱"] = "夌", ["陵"] = "夌", ["綾"] = "夌", ["鯪"] = "夌", ["淩"] = "夌", ["夌"] = "夌", ["蔆"] = "夌", ["崚"] = "夌", ["掕"] = "夌", ["𩜁"] = "夌", ["庱"] = "夌", ["睖"] = "夌", ["靈"] = "霝", ["霛"] = "霝", ["麢"] = "霝", ["霝"] = "霝", ["醽"] = "霝", ["櫺"] = "霝", ["蘦"] = "霝", ["孁"] = "霝", ["龗"] = "霝", ["酃"] = "霝", ["爧"] = "霝", ["欞"] = "霝", ["令"] = "令", ["怜"] = "令", ["零"] = "令", ["魿"] = "令", ["命"] = "令", ["冷"] = "令", ["跉"] = "令", ["嶺"] = "令", ["領"] = "令", ["阾"] = "令", ["柃"] = "令", ["袊"] = "令", ["詅"] = "令", ["旍"] = "令", ["舲"] = "令", ["齡"] = "令", ["囹"] = "令", ["鴒"] = "令", ["蛉"] = "令", ["鈴"] = "令", ["苓"] = "令", ["伶"] = "令", ["泠"] = "令", ["瓴"] = "令", ["拎"] = "令", ["刢"] = "令", ["玲"] = "令", ["聆"] = "令", ["竛"] = "令", ["軨"] = "令", ["笭"] = "令", ["翎"] = "令", ["閝"] = "令", ["鹷"] = "令", ["昤"] = "令", ["駖"] = "令", ["彾"] = "令", ["呤"] = "令", ["狑"] = "令", ["秢"] = "令", ["岭"] = "令", ["紷"] = "令", ["砱"] = "令", ["羚"] = "令", ["姈"] = "令", ["蕶"] = "令", ["澪"] = "令", ["流"] = "流", ["硫"] = "流", ["琉"] = "流", ["旒"] = "流", ["瑬"] = "流", ["裗"] = "流", ["六"] = "六", ["圥"] = "六", ["醪"] = "翏", ["嫪"] = "翏", ["嘐"] = "翏", ["賿"] = "翏", ["顟"] = "翏", ["膠"] = "翏", ["轇"] = "翏", ["摎"] = "翏", ["髎"] = "翏", ["熮"] = "翏", ["廖"] = "翏", ["憀"] = "翏", ["豂"] = "翏", ["漻"] = "翏", ["翏"] = "翏", ["寥"] = "翏", ["蓼"] = "翏", ["鄝"] = "翏", ["鷚"] = "翏", ["繆"] = "翏", ["勠"] = "翏", ["疁"] = "翏", ["飂"] = "翏", ["鏐"] = "翏", ["僇"] = "翏", ["瘳"] = "翏", ["璆"] = "翏", ["謬"] = "翏", ["蟉"] = "翏", ["樛"] = "翏", ["磟"] = "翏", ["戮"] = "翏", ["剹"] = "翏", ["穋"] = "翏", ["驡"] = "龍", ["龐"] = "龍", ["瀧"] = "龍", ["籠"] = "龍", ["豅"] = "龍", ["朧"] = "龍", ["龓"] = "龍", ["聾"] = "龍", ["礱"] = "龍", ["嚨"] = "龍", ["蘢"] = "龍", ["櫳"] = "龍", ["襱"] = "龍", ["瓏"] = "龍", ["曨"] = "龍", ["鸗"] = "龍", ["蠪"] = "龍", ["巃"] = "龍", ["竉"] = "龍", ["攏"] = "龍", ["儱"] = "龍", ["龍"] = "龍", ["躘"] = "龍", ["隴"] = "龍", ["壠"] = "龍", ["壟"] = "龍", ["寵"] = "龍", ["龏"] = "龍", ["樓"] = "婁", ["摟"] = "婁", ["耬"] = "婁", ["僂"] = "婁", ["婁"] = "婁", ["螻"] = "婁", ["髏"] = "婁", ["蔞"] = "婁", ["鞻"] = "婁", ["艛"] = "婁", ["膢"] = "婁", ["廔"] = "婁", ["嘍"] = "婁", ["瞜"] = "婁", ["簍"] = "婁", ["慺"] = "婁", ["鷜"] = "婁", ["褸"] = "婁", ["遱"] = "婁", ["謱"] = "婁", ["嶁"] = "婁", ["甊"] = "婁", ["塿"] = "婁", ["漊"] = "婁", ["鏤"] = "婁", ["瘻"] = "婁", ["擻"] = "婁", ["藪"] = "婁", ["籔"] = "婁", ["氀"] = "婁", ["縷"] = "婁", ["屢"] = "婁", ["數"] = "婁", ["屨"] = "婁", ["窶"] = "婁", ["貗"] = "婁", ["漏"] = "屚", ["瘺"] = "屚", ["屚"] = "屚", ["滷"] = "鹵", ["鹵"] = "鹵", ["樐"] = "鹵", ["蓾"] = "鹵", ["鏀"] = "鹵", ["魯"] = "魯", ["櫓"] = "魯", ["穭"] = "魯", ["灶"] = "圥", ["竈"] = "圥", ["鼀"] = "圥", ["睦"] = "坴", ["坴"] = "坴", ["陸"] = "坴", ["稑"] = "坴", ["鵱"] = "坴", ["鯥"] = "坴", ["淕"] = "坴", ["踛"] = "坴", ["剝"] = "彔", ["龣"] = "彔", ["祿"] = "彔", ["淥"] = "彔", ["睩"] = "彔", ["琭"] = "彔", ["箓"] = "彔", ["碌"] = "彔", ["盝"] = "彔", ["娽"] = "彔", ["彔"] = "彔", ["趢"] = "彔", ["簶"] = "彔", ["綠"] = "彔", ["逯"] = "彔", ["錄"] = "彔", ["醁"] = "彔", ["騄"] = "彔", ["菉"] = "彔", ["籙"] = "彔", ["鄜"] = "鹿", ["鹿"] = "鹿", ["漉"] = "鹿", ["轆"] = "鹿", ["簏"] = "鹿", ["螰"] = "鹿", ["麓"] = "鹿", ["騼"] = "鹿", ["摝"] = "鹿", ["廘"] = "鹿", ["蔍"] = "鹿", ["鏕"] = "鹿", ["櫚"] = "呂", ["閭"] = "呂", ["吕"] = "呂", ["侣"] = "呂", ["梠"] = "呂", ["郘"] = "呂", ["絽"] = "呂", ["莒"] = "呂", ["筥"] = "呂", ["酹"] = "寽", ["脟"] = "寽", ["捋"] = "寽", ["蛶"] = "寽", ["埒"] = "寽", ["鋝"] = "寽", ["浖"] = "寽", ["哷"] = "寽", ["寽"] = "寽", ["玈"] = "旅", ["旅"] = "旅", ["膂"] = "旅", ["祣"] = "旅", ["率"] = "率", ["繂"] = "率", ["膟"] = "率", ["蟀"] = "率", ["蠻"] = "䜌", ["矕"] = "䜌", ["變"] = "䜌", ["鸞"] = "䜌", ["巒"] = "䜌", ["灤"] = "䜌", ["欒"] = "䜌", ["鑾"] = "䜌", ["臠"] = "䜌", ["羉"] = "䜌", ["䜌"] = "䜌", ["灓"] = "䜌", ["圝"] = "䜌", ["曫"] = "䜌", ["孿"] = "䜌", ["彎"] = "䜌", ["灣"] = "䜌", ["攣"] = "䜌", ["孌"] = "䜌", ["戀"] = "䜌", ["㪻"] = "䜌", ["卵"] = "卵", ["關"] = "卵", ["関"] = "卵", ["聯"] = "卵", ["覼"] = "亂", ["亂"] = "亂", ["薍"] = "亂", ["蜦"] = "侖", ["綸"] = "侖", ["論"] = "侖", ["崘"] = "侖", ["掄"] = "侖", ["菕"] = "侖", ["惀"] = "侖", ["睔"] = "侖", ["碖"] = "侖", ["溣"] = "侖", ["倫"] = "侖", ["淪"] = "侖", ["輪"] = "侖", ["侖"] = "侖", ["陯"] = "侖", ["鯩"] = "侖", ["棆"] = "侖", ["踚"] = "侖", ["耣"] = "侖", ["錀"] = "侖", ["羅"] = "羅", ["蘿"] = "羅", ["籮"] = "羅", ["儸"] = "羅", ["饠"] = "羅", ["欏"] = "羅", ["囉"] = "羅", ["鑼"] = "羅", ["邏"] = "羅", ["驘"] = "蠃", ["鸁"] = "蠃", ["蠃"] = "蠃", ["臝"] = "蠃", ["羸"] = "蠃", ["麻"] = "麻", ["痲"] = "麻", ["犘"] = "麻", ["縻"] = "麻", ["醿"] = "麻", ["爢"] = "麻", ["蘼"] = "麻", ["靡"] = "麻", ["摩"] = "麻", ["魔"] = "麻", ["磨"] = "麻", ["劘"] = "麻", ["麽"] = "麻", ["麼"] = "麻", ["塺"] = "麻", ["麾"] = "麻", ["馬"] = "馬", ["碼"] = "馬", ["罵"] = "馬", ["鷌"] = "馬", ["鰢"] = "馬", ["瑪"] = "馬", ["榪"] = "馬", ["傌"] = "馬", ["禡"] = "馬", ["媽"] = "馬", ["買"] = "買", ["蕒"] = "買", ["嘪"] = "買", ["鷶"] = "買", ["賣"] = "買", ["獌"] = "曼", ["鬘"] = "曼", ["謾"] = "曼", ["慢"] = "曼", ["嫚"] = "曼", ["縵"] = "曼", ["曼"] = "曼", ["饅"] = "曼", ["蔓"] = "曼", ["鰻"] = "曼", ["墁"] = "曼", ["鏝"] = "曼", ["槾"] = "曼", ["漫"] = "曼", ["幔"] = "曼", ["蟃"] = "曼", ["厖"] = "尨", ["駹"] = "尨", ["狵"] = "尨", ["尨"] = "尨", ["浝"] = "尨", ["哤"] = "尨", ["牻"] = "尨", ["娏"] = "尨", ["蛖"] = "尨", ["𥆙"] = "尨", ["痝"] = "尨", ["𪁪"] = "尨", ["莽"] = "茻", ["茻"] = "茻", ["蟒"] = "莽", ["漭"] = "莽", ["毛"] = "毛", ["髦"] = "毛", ["旄"] = "毛", ["芼"] = "毛", ["氂"] = "毛", ["枆"] = "毛", ["酕"] = "毛", ["牦"] = "毛", ["耄"] = "毛", ["覒"] = "毛", ["眊"] = "毛", ["耗"] = "毛", ["秏"] = "毛", ["毣"] = "毛", ["堥"] = "矛", ["蓩"] = "矛", ["猱"] = "矛", ["茅"] = "矛", ["罞"] = "矛", ["蝥"] = "矛", ["鶜"] = "矛", ["瞀"] = "矛", ["愗"] = "矛", ["袤"] = "矛", ["雺"] = "矛", ["懋"] = "矛", ["楙"] = "矛", ["矛"] = "矛", ["蟊"] = "矛", ["髳"] = "矛", ["鍪"] = "矛", ["鞪"] = "矛", ["糅"] = "矛", ["腬"] = "矛", ["柔"] = "矛", ["揉"] = "矛", ["蹂"] = "矛", ["鍒"] = "矛", ["騥"] = "矛", ["蝚"] = "矛", ["葇"] = "矛", ["鞣"] = "矛", ["鰇"] = "矛", ["瑈"] = "矛", ["鶔"] = "矛", ["楺"] = "矛", ["煣"] = "矛", ["輮"] = "矛", ["韖"] = "矛", ["敄"] = "矛", ["務"] = "矛", ["鶩"] = "矛", ["騖"] = "矛", ["婺"] = "矛", ["霚"] = "矛", ["嵍"] = "矛", ["霧"] = "矛", ["霿"] = "矛", ["楘"] = "矛", ["卯"] = "卯", ["昴"] = "卯", ["泖"] = "卯", ["茆"] = "卯", ["奅"] = "卯", ["窌"] = "卯", ["聊"] = "卯", ["貿"] = "卯", ["鄮"] = "卯", ["劉"] = "卯", ["留"] = "卯", ["蒥"] = "卯", ["鶹"] = "卯", ["騮"] = "卯", ["榴"] = "卯", ["瑠"] = "卯", ["瘤"] = "卯", ["遛"] = "卯", ["鎦"] = "卯", ["飀"] = "卯", ["鰡"] = "卯", ["嵧"] = "卯", ["餾"] = "卯", ["瀏"] = "卯", ["懰"] = "卯", ["柳"] = "卯", ["珋"] = "卯", ["罶"] = "卯", ["嬼"] = "卯", ["溜"] = "卯", ["霤"] = "卯", ["廇"] = "卯", ["塯"] = "卯", ["媢"] = "冃", ["冃"] = "冃", ["冒"] = "冃", ["帽"] = "冃", ["瑁"] = "冃", ["賵"] = "冃", ["艒"] = "冃", ["萺"] = "冃", ["勗"] = "冃", ["勖"] = "冃", ["貌"] = "皃", ["皃"] = "皃", ["藐"] = "皃", ["邈"] = "皃", ["眉"] = "眉", ["楣"] = "眉", ["嵋"] = "眉", ["湄"] = "眉", ["鶥"] = "眉", ["瑂"] = "眉", ["郿"] = "眉", ["葿"] = "眉", ["媚"] = "眉", ["篃"] = "眉", ["蝞"] = "眉", ["煝"] = "眉", ["美"] = "美", ["渼"] = "美", ["媄"] = "美", ["蔄"] = "門", ["闅"] = "門", ["閩"] = "門", ["蕄"] = "門", ["門"] = "門", ["捫"] = "門", ["悶"] = "門", ["聞"] = "門", ["閿"] = "門", ["問"] = "門", ["蒙"] = "冡", ["冡"] = "冡", ["濛"] = "冡", ["艨"] = "冡", ["朦"] = "冡", ["矇"] = "冡", ["饛"] = "冡", ["檬"] = "冡", ["鸏"] = "冡", ["幪"] = "冡", ["蠓"] = "冡", ["靀"] = "冡", ["曚"] = "冡", ["蘉"] = "夢", ["瞢"] = "夢", ["懜"] = "夢", ["懵"] = "夢", ["甍"] = "夢", ["薨"] = "夢", ["夢"] = "夢", ["鄸"] = "夢", ["謎"] = "米", ["迷"] = "米", ["米"] = "米", ["眯"] = "米", ["洣"] = "米", ["蔝"] = "米", ["麊"] = "米", ["冞"] = "米", ["糜"] = "米", ["敉"] = "米", ["侎"] = "米", ["麋"] = "米", ["蘪"] = "米", ["攗"] = "米", ["羋"] = "羋", ["蝆"] = "羋", ["冟"] = "冖", ["冖"] = "冖", ["冪"] = "冖", ["羃"] = "冖", ["濗"] = "冖", ["鼏"] = "冖", ["覓"] = "覓", ["漞"] = "覓", ["芇"] = "芇", ["蹣"] = "芇", ["瞞"] = "芇", ["顢"] = "芇", ["樠"] = "芇", ["慲"] = "芇", ["鬗"] = "芇", ["滿"] = "芇", ["鏋"] = "芇", ["懣"] = "芇", ["璊"] = "芇", ["綿"] = "綿", ["棉"] = "綿", ["緜"] = "綿", ["矊"] = "綿", ["臱"] = "臱", ["矏"] = "臱", ["櫋"] = "臱", ["籩"] = "臱", ["邊"] = "臱", ["汅"] = "丏", ["沔"] = "丏", ["丏"] = "丏", ["眄"] = "丏", ["麪"] = "丏", ["免"] = "免", ["娩"] = "免", ["勉"] = "免", ["俛"] = "免", ["鮸"] = "免", ["冕"] = "免", ["絻"] = "免", ["婏"] = "免", ["浼"] = "免", ["鞔"] = "免", ["悗"] = "免", ["嬎"] = "免", ["晚"] = "免", ["挽"] = "免", ["輓"] = "免", ["脕"] = "免", ["莬"] = "免", ["蝒"] = "面", ["緬"] = "面", ["湎"] = "面", ["愐"] = "面", ["偭"] = "面", ["勔"] = "面", ["面"] = "面", ["麵"] = "面", ["貓"] = "苗", ["描"] = "苗", ["媌"] = "苗", ["緢"] = "苗", ["苗"] = "苗", ["猫"] = "苗", ["庿"] = "苗", ["礣"] = "蔑", ["蔑"] = "蔑", ["篾"] = "蔑", ["蠛"] = "蔑", ["懱"] = "蔑", ["幭"] = "蔑", ["鱴"] = "蔑", ["衊"] = "蔑", ["瀎"] = "蔑", ["襪"] = "蔑", ["韤"] = "蔑", ["韈"] = "蔑", ["眠"] = "民", ["民"] = "民", ["泯"] = "民", ["怋"] = "民", ["岷"] = "民", ["珉"] = "民", ["罠"] = "民", ["笢"] = "民", ["鈱"] = "民", ["抿"] = "民", ["刡"] = "民", ["敃"] = "民", ["愍"] = "民", ["暋"] = "民", ["蟁"] = "民", ["猛"] = "皿", ["艋"] = "皿", ["蜢"] = "皿", ["皿"] = "皿", ["孟"] = "皿", ["憫"] = "閔", ["閔"] = "閔", ["潣"] = "閔", ["簢"] = "閔", ["燘"] = "閔", ["澠"] = "黽", ["黽"] = "黽", ["僶"] = "黽", ["繩"] = "黽", ["譝"] = "黽", ["憴"] = "黽", ["鱦"] = "黽", ["蠅"] = "黽", ["鄳"] = "黽", ["鼆"] = "黽", ["名"] = "名", ["洺"] = "名", ["眳"] = "名", ["詺"] = "名", ["銘"] = "名", ["茗"] = "名", ["酩"] = "名", ["姳"] = "名", ["莔"] = "明", ["明"] = "明", ["盟"] = "明", ["萌"] = "明", ["奣"] = "明", ["瞑"] = "冥", ["嫇"] = "冥", ["慏"] = "冥", ["冥"] = "冥", ["榠"] = "冥", ["鄍"] = "冥", ["溟"] = "冥", ["螟"] = "冥", ["猽"] = "冥", ["蓂"] = "冥", ["覭"] = "冥", ["暝"] = "冥", ["幎"] = "冥", ["幂"] = "冥", ["塓"] = "冥", ["眛"] = "末", ["沬"] = "末", ["佅"] = "末", ["韎"] = "末", ["帓"] = "末", ["粖"] = "末", ["末"] = "末", ["昩"] = "末", ["秣"] = "末", ["靺"] = "末", ["眜"] = "末", ["抹"] = "末", ["妺"] = "末", ["怽"] = "末", ["沫"] = "末", ["袜"] = "末", ["沒"] = "沒", ["歿"] = "沒", ["莈"] = "沒", ["蟆"] = "莫", ["鬕"] = "莫", ["饃"] = "莫", ["模"] = "莫", ["摸"] = "莫", ["嫫"] = "莫", ["謨"] = "莫", ["膜"] = "莫", ["摹"] = "莫", ["暮"] = "莫", ["慕"] = "莫", ["募"] = "莫", ["墓"] = "莫", ["慔"] = "莫", ["莫"] = "莫", ["寞"] = "莫", ["漠"] = "莫", ["幕"] = "莫", ["鏌"] = "莫", ["瘼"] = "莫", ["鄚"] = "莫", ["瞙"] = "莫", ["嗼"] = "莫", ["塻"] = "莫", ["貘"] = "莫", ["驀"] = "莫", ["牟"] = "牟", ["眸"] = "牟", ["侔"] = "牟", ["蛑"] = "牟", ["麰"] = "牟", ["劺"] = "牟", ["恈"] = "牟", ["鴾"] = "牟", ["某"] = "某", ["謀"] = "某", ["媒"] = "某", ["煤"] = "某", ["腜"] = "某", ["禖"] = "某", ["脢"] = "母", ["挴"] = "母", ["海"] = "母", ["毐"] = "母", ["呣"] = "母", ["拇"] = "母", ["母"] = "母", ["胟"] = "母", ["姆"] = "母", ["畮"] = "母", ["踇"] = "母", ["苺"] = "母", ["莓"] = "母", ["敏"] = "母", ["鰵"] = "母", ["慜"] = "母", ["毋"] = "母", ["梅"] = "母", ["酶"] = "母", ["鋂"] = "母", ["每"] = "母", ["毎"] = "母", ["痗"] = "母", ["晦"] = "母", ["誨"] = "母", ["悔"] = "母", ["霉"] = "母", ["畝"] = "畝", ["畞"] = "畝", ["姥"] = "姥", ["峔"] = "姥", ["瞐"] = "目", ["苜"] = "目", ["目"] = "目", ["木"] = "木", ["沐"] = "木", ["朷"] = "木", ["蚞"] = "木", ["霂"] = "木", ["乃"] = "乃", ["鼐"] = "乃", ["疓"] = "乃", ["奶"] = "乃", ["仍"] = "乃", ["艿"] = "乃", ["辸"] = "乃", ["礽"] = "乃", ["扔"] = "乃", ["芿"] = "乃", ["奈"] = "奈", ["柰"] = "奈", ["渿"] = "奈", ["捺"] = "奈", ["南"] = "南", ["楠"] = "南", ["腩"] = "南", ["湳"] = "南", ["揇"] = "南", ["萳"] = "南", ["罱"] = "南", ["喃"] = "南", ["諵"] = "南", ["獿"] = "夒", ["犪"] = "夒", ["擾"] = "夒", ["腦"] = "匘", ["惱"] = "匘", ["瑙"] = "匘", ["匘"] = "匘", ["碯"] = "匘", ["硇"] = "匘", ["𣳦"] = "匘", ["妠"] = "內", ["內"] = "內", ["笍"] = "內", ["芮"] = "內", ["枘"] = "內", ["汭"] = "內", ["鈉"] = "內", ["蜹"] = "內", ["抐"] = "內", ["納"] = "內", ["衲"] = "內", ["魶"] = "內", ["軜"] = "內", ["蒳"] = "內", ["豽"] = "內", ["肭"] = "內", ["吶"] = "內", ["焫"] = "內", ["訥"] = "內", ["態"] = "能", ["能"] = "能", ["螚"] = "能", ["褦"] = "能", ["泥"] = "尼", ["屔"] = "尼", ["苨"] = "尼", ["坭"] = "尼", ["迡"] = "尼", ["埿"] = "尼", ["旎"] = "尼", ["狔"] = "尼", ["抳"] = "尼", ["尼"] = "尼", ["呢"] = "尼", ["怩"] = "尼", ["柅"] = "尼", ["蚭"] = "尼", ["跜"] = "尼", ["秜"] = "尼", ["痆"] = "尼", ["昵"] = "尼", ["孨"] = "孴", ["孴"] = "孴", ["斥"] = "屰", ["訴"] = "屰", ["泝"] = "屰", ["愬"] = "屰", ["遡"] = "屰", ["塑"] = "屰", ["溯"] = "屰", ["遻"] = "屰", ["柝"] = "屰", ["鶚"] = "屰", ["諤"] = "屰", ["齶"] = "屰", ["鍔"] = "屰", ["遌"] = "屰", ["崿"] = "屰", ["偔"] = "屰", ["堮"] = "屰", ["湂"] = "屰", ["鱷"] = "屰", ["噩"] = "屰", ["咢"] = "屰", ["鑩"] = "屰", ["鄂"] = "屰", ["鰐"] = "屰", ["萼"] = "屰", ["愕"] = "屰", ["顎"] = "屰", ["朔"] = "屰", ["槊"] = "屰", ["蒴"] = "屰", ["坼"] = "屰", ["拆"] = "屰", ["逆"] = "屰", ["屰"] = "屰", ["縌"] = "屰", ["蝷"] = "屰", ["暱"] = "匿", ["慝"] = "匿", ["匿"] = "匿", ["輦"] = "輦", ["鄻"] = "輦", ["攆"] = "輦", ["淰"] = "念", ["唸"] = "念", ["埝"] = "念", ["趝"] = "念", ["諗"] = "念", ["稔"] = "念", ["棯"] = "念", ["腍"] = "念", ["捻"] = "念", ["錜"] = "念", ["敜"] = "念", ["惗"] = "念", ["菍"] = "念", ["島"] = "鳥", ["搗"] = "鳥", ["鵃"] = "鳥", ["瞗"] = "鳥", ["鳥"] = "鳥", ["蔦"] = "鳥", ["窵"] = "鳥", ["甈"] = "臬", ["臬"] = "臬", ["嵲"] = "臬", ["臲"] = "臬", ["闑"] = "臬", ["攝"] = "聶", ["聶"] = "聶", ["鑷"] = "聶", ["躡"] = "聶", ["襵"] = "聶", ["懾"] = "聶", ["囁"] = "聶", ["欇"] = "聶", ["灄"] = "聶", ["顳"] = "聶", ["讘"] = "聶", ["濘"] = "寧", ["獰"] = "寧", ["檸"] = "寧", ["儜"] = "寧", ["薴"] = "寧", ["鬡"] = "寧", ["鑏"] = "寧", ["嬣"] = "寧", ["寍"] = "寧", ["寗"] = "寧", ["甯"] = "寧", ["寧"] = "寧", ["鸋"] = "寧", ["嚀"] = "寧", ["聹"] = "寧", ["嶩"] = "農", ["噥"] = "農", ["鬞"] = "農", ["擃"] = "農", ["齈"] = "農", ["癑"] = "農", ["農"] = "農", ["辳"] = "農", ["憹"] = "農", ["膿"] = "農", ["儂"] = "農", ["濃"] = "農", ["醲"] = "農", ["襛"] = "農", ["穠"] = "農", ["檂"] = "農", ["筭"] = "弄", ["弄"] = "弄", ["梇"] = "弄", ["哢"] = "弄", ["硦"] = "弄", ["拿"] = "女", ["拏"] = "女", ["詉"] = "女", ["蒘"] = "女", ["笯"] = "女", ["挐"] = "女", ["絮"] = "女", ["呶"] = "女", ["怓"] = "女", ["帑"] = "女", ["奴"] = "女", ["砮"] = "女", ["駑"] = "女", ["孥"] = "女", ["努"] = "女", ["弩"] = "女", ["怒"] = "女", ["袽"] = "女", ["帤"] = "女", ["女"] = "女", ["籹"] = "女", ["恕"] = "女", ["如"] = "女", ["茹"] = "女", ["洳"] = "女", ["鴽"] = "女", ["蕠"] = "女", ["汝"] = "女", ["肗"] = "女", ["虐"] = "虐", ["瘧"] = "虐", ["謔"] = "虐", ["庍"] = "派", ["派"] = "派", ["脈"] = "派", ["脉"] = "派", ["衇"] = "派", ["眽"] = "派", ["覛"] = "派", ["霢"] = "派", ["佩"] = "佩", ["珮"] = "佩", ["配"] = "配", ["嶏"] = "配", ["崩"] = "朋", ["堋"] = "朋", ["漰"] = "朋", ["倗"] = "朋", ["朋"] = "朋", ["鵬"] = "朋", ["棚"] = "朋", ["鬅"] = "朋", ["掤"] = "朋", ["淜"] = "朋", ["輣"] = "朋", ["繃"] = "朋", ["弸"] = "朋", ["澎"] = "彭", ["彭"] = "彭", ["膨"] = "彭", ["蟚"] = "彭", ["蟛"] = "彭", ["憉"] = "彭", ["陂"] = "皮", ["詖"] = "皮", ["彼"] = "皮", ["柀"] = "皮", ["佊"] = "皮", ["貱"] = "皮", ["跛"] = "皮", ["披"] = "皮", ["鈹"] = "皮", ["帔"] = "皮", ["鮍"] = "皮", ["耚"] = "皮", ["狓"] = "皮", ["翍"] = "皮", ["旇"] = "皮", ["秛"] = "皮", ["紴"] = "皮", ["皮"] = "皮", ["疲"] = "皮", ["被"] = "皮", ["髲"] = "皮", ["鞁"] = "皮", ["骳"] = "皮", ["波"] = "皮", ["碆"] = "皮", ["菠"] = "皮", ["簸"] = "皮", ["駊"] = "皮", ["頗"] = "皮", ["坡"] = "皮", ["玻"] = "皮", ["破"] = "皮", ["婆"] = "皮", ["蔢"] = "皮", ["匹"] = "匹", ["鴄"] = "匹", ["爿"] = "片", ["片"] = "片", ["沜"] = "片", ["標"] = "票", ["鏢"] = "票", ["瘭"] = "票", ["幖"] = "票", ["熛"] = "票", ["蔈"] = "票", ["膘"] = "票", ["褾"] = "票", ["票"] = "票", ["飄"] = "票", ["漂"] = "票", ["螵"] = "票", ["瞟"] = "票", ["嫖"] = "票", ["旚"] = "票", ["僄"] = "票", ["慓"] = "票", ["彯"] = "票", ["摽"] = "票", ["翲"] = "票", ["嘌"] = "票", ["縹"] = "票", ["醥"] = "票", ["顠"] = "票", ["篻"] = "票", ["剽"] = "票", ["勡"] = "票", ["薸"] = "票", ["瓢"] = "票", ["鰾"] = "票", ["驃"] = "票", ["瀕"] = "頻", ["頻"] = "頻", ["顰"] = "頻", ["蘋"] = "頻", ["嚬"] = "頻", ["臨"] = "品", ["瀶"] = "品", ["品"] = "品", ["俜"] = "甹", ["甹"] = "甹", ["聘"] = "甹", ["娉"] = "甹", ["騁"] = "甹", ["梬"] = "甹", ["平"] = "平", ["怦"] = "平", ["砰"] = "平", ["抨"] = "平", ["閛"] = "平", ["伻"] = "平", ["評"] = "平", ["坪"] = "平", ["苹"] = "平", ["枰"] = "平", ["泙"] = "平", ["蚲"] = "平", ["胓"] = "平", ["匉"] = "平", ["萍"] = "平", ["蓓"] = "咅", ["倍"] = "咅", ["菩"] = "咅", ["掊"] = "咅", ["剖"] = "咅", ["婄"] = "咅", ["踣"] = "咅", ["箁"] = "咅", ["咅"] = "咅", ["部"] = "咅", ["培"] = "咅", ["犃"] = "咅", ["瓿"] = "咅", ["殕"] = "咅", ["醅"] = "咅", ["棓"] = "咅", ["涪"] = "咅", ["賠"] = "咅", ["陪"] = "咅", ["毰"] = "咅", ["焙"] = "咅", ["樸"] = "菐", ["璞"] = "菐", ["墣"] = "菐", ["撲"] = "菐", ["轐"] = "菐", ["獛"] = "菐", ["蹼"] = "菐", ["襆"] = "菐", ["濮"] = "菐", ["纀"] = "菐", ["醭"] = "菐", ["僕"] = "菐", ["菐"] = "菐", ["穙"] = "菐", ["鏷"] = "菐", ["幞"] = "菐", ["譜"] = "普", ["普"] = "普", ["切"] = "七", ["砌"] = "七", ["沏"] = "七", ["七"] = "七", ["柒"] = "七", ["叱"] = "七", ["妻"] = "妻", ["萋"] = "妻", ["淒"] = "妻", ["凄"] = "妻", ["悽"] = "妻", ["鶈"] = "妻", ["郪"] = "妻", ["緀"] = "妻", ["霋"] = "妻", ["棲"] = "妻", ["漆"] = "桼", ["桼"] = "桼", ["膝"] = "桼", ["厀"] = "桼", ["基"] = "其", ["箕"] = "其", ["朞"] = "其", ["稘"] = "其", ["萁"] = "其", ["期"] = "其", ["諅"] = "其", ["其"] = "其", ["錤"] = "其", ["諆"] = "其", ["欺"] = "其", ["娸"] = "其", ["魌"] = "其", ["僛"] = "其", ["唭"] = "其", ["棋"] = "其", ["旗"] = "其", ["淇"] = "其", ["祺"] = "其", ["琪"] = "其", ["騏"] = "其", ["綦"] = "其", ["麒"] = "其", ["蜞"] = "其", ["綨"] = "其", ["蜝"] = "其", ["棊"] = "其", ["碁"] = "其", ["鯕"] = "其", ["踑"] = "其", ["藄"] = "其", ["櫀"] = "其", ["璂"] = "其", ["禥"] = "其", ["惎"] = "其", ["帺"] = "其", ["奇"] = "奇", ["畸"] = "奇", ["剞"] = "奇", ["羇"] = "奇", ["掎"] = "奇", ["攲"] = "奇", ["躸"] = "奇", ["踦"] = "奇", ["寄"] = "奇", ["徛"] = "奇", ["欹"] = "奇", ["崎"] = "奇", ["觭"] = "奇", ["碕"] = "奇", ["綺"] = "奇", ["婍"] = "奇", ["騎"] = "奇", ["琦"] = "奇", ["鵸"] = "奇", ["錡"] = "奇", ["輢"] = "奇", ["齮"] = "奇", ["犄"] = "奇", ["猗"] = "奇", ["椅"] = "奇", ["旖"] = "奇", ["陭"] = "奇", ["檹"] = "奇", ["漪"] = "奇", ["倚"] = "奇", ["畁"] = "畁", ["萆"] = "畁", ["儕"] = "齊", ["麡"] = "齊", ["齋"] = "齊", ["穧"] = "齊", ["擠"] = "齊", ["躋"] = "齊", ["齏"] = "齊", ["齎"] = "齊", ["櫅"] = "齊", ["齌"] = "齊", ["隮"] = "齊", ["賷"] = "齊", ["虀"] = "齊", ["濟"] = "齊", ["癠"] = "齊", ["霽"] = "齊", ["齊"] = "齊", ["臍"] = "齊", ["蠐"] = "齊", ["懠"] = "齊", ["薺"] = "齊", ["鱭"] = "齊", ["嚌"] = "齊", ["劑"] = "齊", ["齍"] = "齊", ["乞"] = "乞", ["盵"] = "乞", ["齕"] = "乞", ["紇"] = "乞", ["籺"] = "乞", ["圪"] = "乞", ["訖"] = "乞", ["吃"] = "乞", ["扢"] = "乞", ["疙"] = "乞", ["屹"] = "乞", ["仡"] = "乞", ["迄"] = "乞", ["釳"] = "乞", ["忔"] = "乞", ["汔"] = "乞", ["矻"] = "乞", ["麧"] = "乞", ["獃"] = "豈", ["剴"] = "豈", ["凱"] = "豈", ["愷"] = "豈", ["塏"] = "豈", ["鎧"] = "豈", ["颽"] = "豈", ["暟"] = "豈", ["闓"] = "豈", ["豈"] = "豈", ["隑"] = "豈", ["皚"] = "豈", ["嵦"] = "豈", ["敳"] = "豈", ["磑"] = "豈", ["螘"] = "豈", ["覬"] = "豈", ["溰"] = "豈", ["顗"] = "豈", ["啓"] = "啓", ["啟"] = "啓", ["棨"] = "啓", ["綮"] = "啓", ["晵"] = "啓", ["闙"] = "啓", ["启"] = "啓", ["愾"] = "气", ["忾"] = "气", ["刏"] = "气", ["汽"] = "气", ["氣"] = "气", ["气"] = "气", ["忥"] = "气", ["餼"] = "气", ["鎎"] = "气", ["熂"] = "气", ["霼"] = "气", ["犔"] = "气", ["楫"] = "咠", ["檝"] = "咠", ["湒"] = "咠", ["咠"] = "咠", ["葺"] = "咠", ["緝"] = "咠", ["諿"] = "咠", ["輯"] = "咠", ["箿"] = "咠", ["蕺"] = "咠", ["戢"] = "咠", ["濈"] = "咠", ["霵"] = "咠", ["揖"] = "咠", ["牽"] = "牽", ["縴"] = "牽", ["厱"] = "僉", ["歛"] = "僉", ["臉"] = "僉", ["醶"] = "僉", ["鹼"] = "僉", ["薟"] = "僉", ["匳"] = "僉", ["獫"] = "僉", ["蘞"] = "僉", ["籢"] = "僉", ["斂"] = "僉", ["瀲"] = "僉", ["撿"] = "僉", ["羷"] = "僉", ["殮"] = "僉", ["簽"] = "僉", ["僉"] = "僉", ["憸"] = "僉", ["譣"] = "僉", ["檢"] = "僉", ["瞼"] = "僉", ["儉"] = "僉", ["顩"] = "僉", ["嬐"] = "僉", ["嶮"] = "僉", ["噞"] = "僉", ["驗"] = "僉", ["險"] = "僉", ["劒"] = "僉", ["劍"] = "僉", ["𩏩"] = "僉", ["遷"] = "遷", ["櫏"] = "遷", ["韆"] = "遷", ["僊"] = "遷", ["躚"] = "遷", ["蹮"] = "遷", ["媊"] = "前", ["煎"] = "前", ["湔"] = "前", ["鬋"] = "前", ["剪"] = "前", ["翦"] = "前", ["譾"] = "前", ["揃"] = "前", ["箭"] = "前", ["葥"] = "前", ["前"] = "前", ["騚"] = "前", ["歬"] = "前", ["虔"] = "虔", ["鰬"] = "虔", ["榩"] = "虔", ["遣"] = "遣", ["繾"] = "遣", ["譴"] = "遣", ["坎"] = "欠", ["扻"] = "欠", ["砍"] = "欠", ["芡"] = "欠", ["欠"] = "欠", ["杴"] = "欠", ["鍁"] = "欠", ["臧"] = "爿", ["牂"] = "爿", ["戕"] = "爿", ["贓"] = "爿", ["藏"] = "爿", ["奘"] = "爿", ["臟"] = "爿", ["將"] = "爿", ["漿"] = "爿", ["鱂"] = "爿", ["蔣"] = "爿", ["螿"] = "爿", ["槳"] = "爿", ["獎"] = "爿", ["醬"] = "爿", ["鏘"] = "爿", ["蹡"] = "爿", ["嶈"] = "爿", ["斨"] = "爿", ["爿"] = "爿", ["牆"] = "爿", ["妝"] = "爿", ["莊"] = "爿", ["裝"] = "爿", ["壯"] = "爿", ["疒"] = "爿", ["床"] = "爿", ["牀"] = "爿", ["狀"] = "爿", ["繈"] = "強", ["襁"] = "強", ["膙"] = "強", ["鏹"] = "強", ["勥"] = "強", ["強"] = "強", ["薔"] = "牆", ["廧"] = "牆", ["蘠"] = "牆", ["嬙"] = "牆", ["檣"] = "牆", ["驕"] = "喬", ["嬌"] = "喬", ["憍"] = "喬", ["穚"] = "喬", ["鷮"] = "喬", ["蕎"] = "喬", ["喬"] = "喬", ["簥"] = "喬", ["撟"] = "喬", ["矯"] = "喬", ["鱎"] = "喬", ["敽"] = "喬", ["蟜"] = "喬", ["譑"] = "喬", ["蹻"] = "喬", ["繑"] = "喬", ["鞽"] = "喬", ["趫"] = "喬", ["嘺"] = "喬", ["橋"] = "喬", ["僑"] = "喬", ["鐈"] = "喬", ["毊"] = "喬", ["轎"] = "喬", ["嶠"] = "喬", ["獢"] = "喬", ["屩"] = "喬", ["虘"] = "且", ["蔖"] = "且", ["摣"] = "且", ["袓"] = "且", ["怚"] = "且", ["罝"] = "且", ["謯"] = "且", ["姐"] = "且", ["抯"] = "且", ["飷"] = "且", ["且"] = "且", ["趄"] = "且", ["笡"] = "且", ["查"] = "且", ["柤"] = "且", ["樝"] = "且", ["皻"] = "且", ["渣"] = "且", ["楂"] = "且", ["苴"] = "且", ["駔"] = "且", ["租"] = "且", ["蒩"] = "且", ["祖"] = "且", ["組"] = "且", ["珇"] = "且", ["靻"] = "且", ["粗"] = "且", ["徂"] = "且", ["殂"] = "且", ["麆"] = "且", ["伹"] = "且", ["蛆"] = "且", ["沮"] = "且", ["咀"] = "且", ["疽"] = "且", ["雎"] = "且", ["狙"] = "且", ["岨"] = "且", ["砠"] = "且", ["坥"] = "且", ["刞"] = "且", ["覰"] = "且", ["覷"] = "且", ["跙"] = "且", ["筯"] = "且", ["菹"] = "且", ["葅"] = "且", ["阻"] = "且", ["俎"] = "且", ["詛"] = "且", ["鉏"] = "且", ["豠"] = "且", ["鋤"] = "且", ["耡"] = "且", ["齟"] = "且", ["助"] = "且", ["霎"] = "妾", ["翣"] = "妾", ["帹"] = "妾", ["接"] = "妾", ["椄"] = "妾", ["菨"] = "妾", ["鯜"] = "妾", ["妾"] = "妾", ["淁"] = "妾", ["踥"] = "妾", ["鋟"] = "侵", ["綅"] = "侵", ["祲"] = "侵", ["埐"] = "侵", ["梫"] = "侵", ["濅"] = "侵", ["浸"] = "侵", ["侵"] = "侵", ["駸"] = "侵", ["寢"] = "侵", ["寑"] = "侵", ["薓"] = "侵", ["轃"] = "秦", ["秦"] = "秦", ["螓"] = "秦", ["臻"] = "秦", ["蓁"] = "秦", ["搸"] = "秦", ["溱"] = "秦", ["榛"] = "秦", ["顈"] = "頃", ["傾"] = "頃", ["頃"] = "頃", ["穎"] = "頃", ["潁"] = "頃", ["熲"] = "頃", ["殸"] = "殸", ["聲"] = "殸", ["謦"] = "殸", ["磬"] = "殸", ["罄"] = "殸", ["馨"] = "殸", ["慶"] = "慶", ["羻"] = "慶", ["丘"] = "丘", ["邱"] = "丘", ["蚯"] = "丘", ["丠"] = "丘", ["鍫"] = "秋", ["篍"] = "秋", ["愀"] = "秋", ["湫"] = "秋", ["揪"] = "秋", ["揫"] = "秋", ["啾"] = "秋", ["鬏"] = "秋", ["秋"] = "秋", ["鰍"] = "秋", ["楸"] = "秋", ["秌"] = "秋", ["鞦"] = "秋", ["鶖"] = "秋", ["萩"] = "秋", ["甃"] = "秋", ["醔"] = "秋", ["愁"] = "秋", ["僽"] = "秋", ["鮂"] = "囚", ["囚"] = "囚", ["泅"] = "囚", ["苬"] = "囚", ["救"] = "求", ["求"] = "求", ["球"] = "求", ["逑"] = "求", ["賕"] = "求", ["蛷"] = "求", ["莍"] = "求", ["殏"] = "求", ["梂"] = "求", ["俅"] = "求", ["脙"] = "求", ["絿"] = "求", ["銶"] = "求", ["毬"] = "求", ["捄"] = "求", ["觩"] = "求", ["摳"] = "區", ["彄"] = "區", ["剾"] = "區", ["謳"] = "區", ["歐"] = "區", ["區"] = "區", ["鷗"] = "區", ["甌"] = "區", ["漚"] = "區", ["瞘"] = "區", ["嘔"] = "區", ["櫙"] = "區", ["膒"] = "區", ["蓲"] = "區", ["醧"] = "區", ["鏂"] = "區", ["毆"] = "區", ["塸"] = "區", ["貙"] = "區", ["樞"] = "區", ["驅"] = "區", ["軀"] = "區", ["嶇"] = "區", ["鰸"] = "區", ["敺"] = "區", ["傴"] = "區", ["嫗"] = "區", ["饇"] = "區", ["陬"] = "取", ["棷"] = "取", ["掫"] = "取", ["緅"] = "取", ["趣"] = "取", ["取"] = "取", ["鯫"] = "取", ["棸"] = "取", ["鄹"] = "取", ["郰"] = "取", ["齱"] = "取", ["菆"] = "取", ["箃"] = "取", ["黀"] = "取", ["驟"] = "取", ["最"] = "取", ["襊"] = "取", ["蕞"] = "取", ["嘬"] = "取", ["諏"] = "取", ["娵"] = "取", ["娶"] = "取", ["聚"] = "取", ["埾"] = "取", ["藂"] = "取", ["叢"] = "取", ["繓"] = "取", ["撮"] = "取", ["佉"] = "去", ["呿"] = "去", ["抾"] = "去", ["弆"] = "去", ["祛"] = "去", ["袪"] = "去", ["阹"] = "去", ["胠"] = "去", ["魼"] = "去", ["去"] = "去", ["麮"] = "去", ["鼁"] = "去", ["砝"] = "去", ["劫"] = "去", ["鉣"] = "去", ["蜐"] = "去", ["怯"] = "去", ["拴"] = "全", ["栓"] = "全", ["跧"] = "全", ["痊"] = "全", ["詮"] = "全", ["荃"] = "全", ["銓"] = "全", ["筌"] = "全", ["輇"] = "全", ["硂"] = "全", ["佺"] = "全", ["駩"] = "全", ["絟"] = "全", ["恮"] = "全", ["峑"] = "全", ["全"] = "全", ["仝"] = "全", ["牷"] = "全", ["線"] = "泉", ["泉"] = "泉", ["葲"] = "泉", ["灥"] = "泉", ["猚"] = "犬", ["畎"] = "犬", ["汱"] = "犬", ["甽"] = "犬", ["犬"] = "犬", ["腳"] = "郤", ["脚"] = "郤", ["卻"] = "郤", ["却"] = "郤", ["谻"] = "郤", ["郤"] = "郤", ["綌"] = "郤", ["菌"] = "囷", ["麇"] = "囷", ["麕"] = "囷", ["囷"] = "囷", ["箘"] = "囷", ["攈"] = "囷", ["嘫"] = "肰", ["然"] = "肰", ["肰"] = "肰", ["繎"] = "肰", ["燃"] = "肰", ["蹨"] = "肰", ["橪"] = "肰", ["撚"] = "肰", ["那"] = "冉", ["挪"] = "冉", ["娜"] = "冉", ["柟"] = "冉", ["抩"] = "冉", ["聃"] = "冉", ["舑"] = "冉", ["坍"] = "冉", ["髯"] = "冉", ["蚺"] = "冉", ["呥"] = "冉", ["冉"] = "冉", ["袡"] = "冉", ["苒"] = "冉", ["姌"] = "冉", ["千"] = "人", ["仟"] = "人", ["芊"] = "人", ["阡"] = "人", ["汘"] = "人", ["迁"] = "人", ["杄"] = "人", ["人"] = "人", ["仁"] = "人", ["朲"] = "人", ["佞"] = "人", ["紝"] = "壬", ["鵀"] = "壬", ["拰"] = "壬", ["賃"] = "壬", ["任"] = "壬", ["壬"] = "壬", ["恁"] = "壬", ["銋"] = "壬", ["荏"] = "壬", ["餁"] = "壬", ["栠"] = "壬", ["袵"] = "壬", ["飪"] = "壬", ["妊"] = "壬", ["衽"] = "壬", ["涊"] = "刃", ["紉"] = "刃", ["忍"] = "刃", ["荵"] = "刃", ["刃"] = "刃", ["認"] = "刃", ["仞"] = "刃", ["軔"] = "刃", ["韌"] = "刃", ["肕"] = "刃", ["牣"] = "刃", ["杒"] = "刃", ["訒"] = "刃", ["涅"] = "日", ["捏"] = "日", ["篞"] = "日", ["衵"] = "日", ["日"] = "日", ["馹"] = "日", ["娀"] = "戎", ["戎"] = "戎", ["茙"] = "戎", ["駥"] = "戎", ["狨"] = "戎", ["絨"] = "戎", ["茸"] = "茸", ["髶"] = "茸", ["搑"] = "茸", ["榵"] = "茸", ["穁"] = "茸", ["宂"] = "冗", ["冗"] = "冗", ["朒"] = "肉", ["肉"] = "肉", ["啂"] = "乳", ["乳"] = "乳", ["耨"] = "辱", ["槈"] = "辱", ["鎒"] = "辱", ["搙"] = "辱", ["褥"] = "辱", ["傉"] = "辱", ["辱"] = "辱", ["縟"] = "辱", ["蓐"] = "辱", ["鄏"] = "辱", ["溽"] = "辱", ["媷"] = "辱", ["嗕"] = "辱", ["陾"] = "耎", ["腝"] = "耎", ["堧"] = "耎", ["稬"] = "耎", ["愞"] = "耎", ["煗"] = "耎", ["餪"] = "耎", ["渜"] = "耎", ["偄"] = "耎", ["瑌"] = "耎", ["軟"] = "耎", ["輭"] = "耎", ["蝡"] = "耎", ["碝"] = "耎", ["耎"] = "耎", ["緛"] = "耎", ["媆"] = "耎", ["甤"] = "甤", ["蕤"] = "甤", ["睿"] = "睿", ["叡"] = "睿", ["璿"] = "睿", ["壡"] = "睿", ["濬"] = "睿", ["撋"] = "閏", ["瞤"] = "閏", ["潤"] = "閏", ["閏"] = "閏", ["若"] = "若", ["婼"] = "若", ["惹"] = "若", ["諾"] = "若", ["蠚"] = "若", ["逽"] = "若", ["蹃"] = "若", ["箬"] = "若", ["楉"] = "若", ["鄀"] = "若", ["嫋"] = "弱", ["弱"] = "弱", ["溺"] = "弱", ["蒻"] = "弱", ["搦"] = "弱", ["愵"] = "弱", ["賽"] = "塞", ["塞"] = "塞", ["簺"] = "塞", ["僿"] = "塞", ["寨"] = "塞", ["三"] = "三", ["弎"] = "三", ["散"] = "散", ["糤"] = "散", ["繖"] = "散", ["饊"] = "散", ["鏾"] = "散", ["潸"] = "散", ["霰"] = "散", ["撒"] = "散", ["桒"] = "桑", ["桑"] = "桑", ["磉"] = "桑", ["顙"] = "桑", ["嗓"] = "桑", ["搡"] = "桑", ["掃"] = "掃", ["埽"] = "掃", ["色"] = "色", ["赩"] = "色", ["濇"] = "嗇", ["嗇"] = "嗇", ["穡"] = "嗇", ["薔"] = "嗇", ["轖"] = "嗇", ["繬"] = "嗇", ["嬙"] = "嗇", ["懎"] = "嗇", ["澀"] = "歰", ["歰"] = "歰", ["澁"] = "歰", ["閷"] = "杀", ["鎩"] = "杀", ["殺"] = "杀", ["蔱"] = "杀", ["摋"] = "杀", ["煞"] = "杀", ["榝"] = "杀", ["刹"] = "杀", ["硰"] = "沙", ["娑"] = "沙", ["挱"] = "沙", ["挲"] = "沙", ["桫"] = "沙", ["渻"] = "沙", ["沙"] = "沙", ["紗"] = "沙", ["砂"] = "沙", ["鯊"] = "沙", ["裟"] = "沙", ["桬"] = "沙", ["髿"] = "沙", ["魦"] = "沙", ["莎"] = "沙", ["莏"] = "沙", ["杉"] = "彡", ["彡"] = "彡", ["衫"] = "彡", ["髟"] = "彡", ["釤"] = "彡", ["䑣"] = "彡", ["彤"] = "彡", ["浵"] = "彡", ["肜"] = "彡", ["山"] = "山", ["疝"] = "山", ["邖"] = "山", ["汕"] = "山", ["訕"] = "山", ["仙"] = "山", ["秈"] = "山", ["苮"] = "山", ["屾"] = "山", ["珊"] = "删", ["跚"] = "删", ["姗"] = "删", ["删"] = "删", ["栅"] = "删", ["羴"] = "羴", ["羼"] = "羴", ["扇"] = "扇", ["煽"] = "扇", ["傓"] = "扇", ["橏"] = "善", ["嫸"] = "善", ["善"] = "善", ["譱"] = "善", ["蟮"] = "善", ["鱔"] = "善", ["僐"] = "善", ["鄯"] = "善", ["墡"] = "善", ["磰"] = "善", ["繕"] = "善", ["膳"] = "善", ["饍"] = "善", ["商"] = "商", ["蔏"] = "商", ["螪"] = "商", ["丄"] = "上", ["上"] = "上", ["當"] = "尚", ["襠"] = "尚", ["鐺"] = "尚", ["簹"] = "尚", ["璫"] = "尚", ["檔"] = "尚", ["儅"] = "尚", ["蟷"] = "尚", ["擋"] = "尚", ["黨"] = "尚", ["讜"] = "尚", ["欓"] = "尚", ["譡"] = "尚", ["闣"] = "尚", ["瓽"] = "尚", ["鏜"] = "尚", ["闛"] = "尚", ["鼞"] = "尚", ["曭"] = "尚", ["儻"] = "尚", ["戃"] = "尚", ["矘"] = "尚", ["爣"] = "尚", ["攩"] = "尚", ["淌"] = "尚", ["倘"] = "尚", ["躺"] = "尚", ["趟"] = "尚", ["堂"] = "尚", ["坣"] = "尚", ["棠"] = "尚", ["糛"] = "尚", ["螳"] = "尚", ["隚"] = "尚", ["橖"] = "尚", ["掌"] = "尚", ["廠"] = "尚", ["敞"] = "尚", ["僘"] = "尚", ["氅"] = "尚", ["常"] = "尚", ["嘗"] = "尚", ["裳"] = "尚", ["徜"] = "尚", ["尚"] = "尚", ["甞"] = "尚", ["鋿"] = "尚", ["嫦"] = "尚", ["償"] = "尚", ["賞"] = "尚", ["瞠"] = "尚", ["撐"] = "尚", ["樘"] = "尚", ["橕"] = "尚", ["牚"] = "尚", ["埫"] = "尚", ["豹"] = "勺", ["趵"] = "勺", ["尥"] = "勺", ["箹"] = "勺", ["杓"] = "勺", ["約"] = "勺", ["扚"] = "勺", ["釣"] = "勺", ["瘹"] = "勺", ["芍"] = "勺", ["酌"] = "勺", ["灼"] = "勺", ["勺"] = "勺", ["彴"] = "勺", ["犳"] = "勺", ["妁"] = "勺", ["汋"] = "勺", ["仢"] = "勺", ["葯"] = "勺", ["礿"] = "勺", ["肑"] = "勺", ["瓝"] = "勺", ["的"] = "勺", ["靮"] = "勺", ["馰"] = "勺", ["玓"] = "勺", ["魡"] = "勺", ["絬"] = "舌", ["舌"] = "舌", ["謝"] = "射", ["榭"] = "射", ["射"] = "射", ["麝"] = "射", ["設"] = "設", ["蔎"] = "設", ["電"] = "申", ["胂"] = "申", ["申"] = "申", ["伸"] = "申", ["呻"] = "申", ["紳"] = "申", ["眒"] = "申", ["柛"] = "申", ["訷"] = "申", ["抻"] = "申", ["神"] = "申", ["朄"] = "申", ["身"] = "身", ["銵"] = "身", ["探"] = "罙", ["棎"] = "罙", ["賝"] = "罙", ["琛"] = "罙", ["穼"] = "罙", ["深"] = "罙", ["宷"] = "宷", ["審"] = "宷", ["瀋"] = "宷", ["嬸"] = "宷", ["昚"] = "昚", ["傄"] = "昚", ["湛"] = "甚", ["媅"] = "甚", ["黮"] = "甚", ["糂"] = "甚", ["堪"] = "甚", ["戡"] = "甚", ["嵁"] = "甚", ["歁"] = "甚", ["勘"] = "甚", ["磡"] = "甚", ["墈"] = "甚", ["偡"] = "甚", ["碪"] = "甚", ["椹"] = "甚", ["揕"] = "甚", ["踸"] = "甚", ["鍖"] = "甚", ["斟"] = "甚", ["諶"] = "甚", ["愖"] = "甚", ["瘎"] = "甚", ["煁"] = "甚", ["甚"] = "甚", ["葚"] = "甚", ["升"] = "升", ["昇"] = "升", ["陞"] = "升", ["抍"] = "升", ["猜"] = "生", ["輤"] = "生", ["綪"] = "生", ["倩"] = "生", ["棈"] = "生", ["蒨"] = "生", ["篟"] = "生", ["生"] = "生", ["牲"] = "生", ["笙"] = "生", ["甥"] = "生", ["鉎"] = "生", ["珄"] = "生", ["鼪"] = "生", ["猩"] = "生", ["狌"] = "生", ["眚"] = "生", ["貹"] = "生", ["崝"] = "生", ["精"] = "生", ["菁"] = "生", ["鶄"] = "生", ["蜻"] = "生", ["鼱"] = "生", ["婧"] = "生", ["睛"] = "生", ["箐"] = "生", ["聙"] = "生", ["旌"] = "生", ["清"] = "生", ["圊"] = "生", ["請"] = "生", ["凊"] = "生", ["䝼"] = "生", ["靚"] = "生", ["情"] = "生", ["晴"] = "生", ["夝"] = "生", ["靜"] = "生", ["靖"] = "生", ["睲"] = "生", ["惺"] = "生", ["性"] = "生", ["姓"] = "生", ["靗"] = "生", ["鯖"] = "生", ["青"] = "生", ["靘"] = "生", ["掅"] = "生", ["胜"] = "生", ["曐"] = "生", ["星"] = "生", ["鮏"] = "生", ["腥"] = "生", ["鯹"] = "生", ["醒"] = "生", ["篂"] = "生", ["省"] = "省", ["渻"] = "省", ["箵"] = "省", ["檉"] = "聖", ["蟶"] = "聖", ["聖"] = "聖", ["聽"] = "聖", ["廳"] = "聖", ["杘"] = "尸", ["尸"] = "尸", ["鳲"] = "尸", ["屍"] = "尸", ["屎"] = "尸", ["眣"] = "失", ["蛈"] = "失", ["迭"] = "失", ["跌"] = "失", ["瓞"] = "失", ["昳"] = "失", ["胅"] = "失", ["軼"] = "失", ["苵"] = "失", ["镻"] = "失", ["詄"] = "失", ["泆"] = "失", ["趃"] = "失", ["柣"] = "失", ["抶"] = "失", ["秩"] = "失", ["帙"] = "失", ["紩"] = "失", ["袠"] = "失", ["翐"] = "失", ["妷"] = "失", ["失"] = "失", ["佚"] = "失", ["劮"] = "失", ["篩"] = "師", ["師"] = "師", ["鰤"] = "師", ["蒒"] = "師", ["獅"] = "師", ["螄"] = "師", ["儑"] = "濕", ["濕"] = "濕", ["漯"] = "濕", ["礘"] = "濕", ["隰"] = "濕", ["溼"] = "濕", ["針"] = "十", ["汁"] = "十", ["卙"] = "十", ["十"] = "十", ["什"] = "十", ["柘"] = "石", ["妬"] = "石", ["蠹"] = "石", ["沰"] = "石", ["拓"] = "石", ["橐"] = "石", ["袥"] = "石", ["驝"] = "石", ["斫"] = "石", ["磭"] = "石", ["磔"] = "石", ["跖"] = "石", ["石"] = "石", ["碩"] = "石", ["祏"] = "石", ["鉐"] = "石", ["鼫"] = "石", ["飤"] = "食", ["食"] = "食", ["蝕"] = "食", ["飾"] = "食", ["飭"] = "食", ["吏"] = "史", ["倳"] = "史", ["剚"] = "史", ["事"] = "史", ["史"] = "史", ["使"] = "史", ["駛"] = "史", ["彘"] = "矢", ["璏"] = "矢", ["薙"] = "矢", ["知"] = "矢", ["蜘"] = "矢", ["智"] = "矢", ["鼅"] = "矢", ["潪"] = "矢", ["踟"] = "矢", ["雉"] = "矢", ["矢"] = "矢", ["痴"] = "矢", ["茌"] = "士", ["士"] = "士", ["仕"] = "士", ["氏"] = "氏", ["衹"] = "氏", ["紙"] = "氏", ["帋"] = "氏", ["扺"] = "氏", ["坁"] = "氏", ["汦"] = "氏", ["忯"] = "氏", ["眂"] = "氏", ["舐"] = "氏", ["芪"] = "氏", ["祇"] = "氏", ["疧"] = "氏", ["軝"] = "氏", ["蚔"] = "氏", ["貰"] = "世", ["跇"] = "世", ["迣"] = "世", ["世"] = "世", ["泄"] = "世", ["枻"] = "世", ["詍"] = "世", ["靾"] = "世", ["袣"] = "世", ["抴"] = "世", ["呭"] = "世", ["勩"] = "世", ["屜"] = "世", ["鰈"] = "世", ["渫"] = "世", ["煠"] = "世", ["喋"] = "世", ["鞢"] = "世", ["殜"] = "世", ["葉"] = "世", ["弽"] = "世", ["韘"] = "世", ["枼"] = "世", ["楪"] = "世", ["揲"] = "世", ["鍱"] = "世", ["偞"] = "世", ["蝶"] = "世", ["牒"] = "世", ["蹀"] = "世", ["諜"] = "世", ["堞"] = "世", ["牃"] = "世", ["褋"] = "世", ["惵"] = "世", ["碟"] = "世", ["屧"] = "世", ["屟"] = "世", ["紲"] = "世", ["齛"] = "世", ["疶"] = "世", ["緤"] = "世", ["媟"] = "世", ["示"] = "示", ["祁"] = "示", ["狋"] = "示", ["視"] = "示", ["眎"] = "示", ["沶"] = "示", ["鞮"] = "是", ["隄"] = "是", ["堤"] = "是", ["鍉"] = "是", ["蝭"] = "是", ["醍"] = "是", ["緹"] = "是", ["提"] = "是", ["瑅"] = "是", ["題"] = "是", ["媞"] = "是", ["褆"] = "是", ["禔"] = "是", ["騠"] = "是", ["趧"] = "是", ["鯷"] = "是", ["踶"] = "是", ["徥"] = "是", ["匙"] = "是", ["是"] = "是", ["諟"] = "是", ["翨"] = "是", ["睼"] = "是", ["寔"] = "是", ["湜"] = "是", ["遈"] = "是", ["噬"] = "筮", ["筮"] = "筮", ["簭"] = "筮", ["澨"] = "筮", ["遾"] = "筮", ["奭"] = "奭", ["襫"] = "奭", ["杽"] = "手", ["手"] = "手", ["守"] = "守", ["狩"] = "守", ["道"] = "首", ["導"] = "首", ["首"] = "首", ["受"] = "受", ["綬"] = "受", ["授"] = "受", ["禱"] = "壽", ["擣"] = "壽", ["檮"] = "壽", ["壔"] = "壽", ["懤"] = "壽", ["濤"] = "壽", ["燾"] = "壽", ["翿"] = "壽", ["幬"] = "壽", ["儔"] = "壽", ["譸"] = "壽", ["籌"] = "壽", ["疇"] = "壽", ["躊"] = "壽", ["燽"] = "壽", ["薵"] = "壽", ["魗"] = "壽", ["醻"] = "壽", ["壽"] = "壽", ["璹"] = "壽", ["鑄"] = "壽", ["獸"] = "嘼", ["嘼"] = "嘼", ["吺"] = "殳", ["祋"] = "殳", ["投"] = "殳", ["骰"] = "殳", ["酘"] = "殳", ["坄"] = "殳", ["殳"] = "殳", ["杸"] = "殳", ["椒"] = "尗", ["茮"] = "尗", ["踧"] = "尗", ["蔋"] = "尗", ["惄"] = "尗", ["戚"] = "尗", ["慼"] = "尗", ["鏚"] = "尗", ["慽"] = "尗", ["磩"] = "尗", ["寂"] = "尗", ["嘁"] = "尗", ["墄"] = "尗", ["摵"] = "尗", ["督"] = "尗", ["錖"] = "尗", ["裻"] = "尗", ["傶"] = "尗", ["蹙"] = "尗", ["槭"] = "尗", ["縬"] = "尗", ["顣"] = "尗", ["敊"] = "尗", ["琡"] = "尗", ["俶"] = "尗", ["埱"] = "尗", ["淑"] = "尗", ["婌"] = "尗", ["尗"] = "尗", ["叔"] = "尗", ["掓"] = "尗", ["菽"] = "尗", ["鮛"] = "尗", ["疋"] = "疋", ["蝑"] = "疋", ["壻"] = "疋", ["婿"] = "疋", ["胥"] = "疋", ["稰"] = "疋", ["楈"] = "疋", ["諝"] = "疋", ["湑"] = "疋", ["揟"] = "疋", ["醑"] = "疋", ["糈"] = "疋", ["楚"] = "疋", ["礎"] = "疋", ["憷"] = "疋", ["齼"] = "疋", ["濋"] = "疋", ["儊"] = "疋", ["綀"] = "疋", ["疎"] = "疋", ["疏"] = "疋", ["蔬"] = "疋", ["梳"] = "疋", ["熟"] = "孰", ["孰"] = "孰", ["塾"] = "孰", ["鼠"] = "鼠", ["癙"] = "鼠", ["襡"] = "蜀", ["噣"] = "蜀", ["斣"] = "蜀", ["歜"] = "蜀", ["斀"] = "蜀", ["孎"] = "蜀", ["濁"] = "蜀", ["鐲"] = "蜀", ["鸀"] = "蜀", ["擉"] = "蜀", ["獨"] = "蜀", ["髑"] = "蜀", ["韣"] = "蜀", ["斸"] = "蜀", ["钃"] = "蜀", ["欘"] = "蜀", ["躅"] = "蜀", ["蠋"] = "蜀", ["燭"] = "蜀", ["囑"] = "蜀", ["矚"] = "蜀", ["屬"] = "蜀", ["属"] = "蜀", ["蠾"] = "蜀", ["觸"] = "蜀", ["臅"] = "蜀", ["觕"] = "蜀", ["蜀"] = "蜀", ["訹"] = "朮", ["怵"] = "朮", ["朮"] = "朮", ["炢"] = "朮", ["術"] = "朮", ["述"] = "朮", ["秫"] = "朮", ["沭"] = "朮", ["蒁"] = "朮", ["涑"] = "束", ["鏉"] = "束", ["摗"] = "束", ["駷"] = "束", ["嗽"] = "束", ["瘶"] = "束", ["欶"] = "束", ["漱"] = "束", ["捒"] = "束", ["悚"] = "束", ["竦"] = "束", ["娕"] = "束", ["梀"] = "束", ["速"] = "束", ["餗"] = "束", ["殐"] = "束", ["遬"] = "束", ["蔌"] = "束", ["樕"] = "束", ["藗"] = "束", ["誎"] = "束", ["束"] = "束", ["褯"] = "庶", ["遮"] = "庶", ["蔗"] = "庶", ["鷓"] = "庶", ["樜"] = "庶", ["蟅"] = "庶", ["嗻"] = "庶", ["鍍"] = "庶", ["度"] = "庶", ["渡"] = "庶", ["庶"] = "庶", ["剫"] = "庶", ["踱"] = "庶", ["喥"] = "庶", ["謶"] = "庶", ["席"] = "庶", ["蓆"] = "庶", ["墌"] = "庶", ["摭"] = "庶", ["蹠"] = "庶", ["涮"] = "刷", ["刷"] = "刷", ["蓑"] = "衰", ["缞"] = "衰", ["衰"] = "衰", ["榱"] = "衰", ["雙"] = "雙", ["艭"] = "雙", ["愯"] = "雙", ["㩳"] = "雙", ["摤"] = "爽", ["磢"] = "爽", ["漺"] = "爽", ["傸"] = "爽", ["鷞"] = "爽", ["騻"] = "爽", ["爽"] = "爽", ["塽"] = "爽", ["樉"] = "爽", ["沝"] = "水", ["水"] = "水", ["私"] = "厶", ["厶"] = "厶", ["司"] = "司", ["伺"] = "司", ["覗"] = "司", ["笥"] = "司", ["詞"] = "司", ["祠"] = "司", ["柌"] = "司", ["嗣"] = "司", ["孠"] = "司", ["飼"] = "司", ["呞"] = "司", ["擨"] = "虒", ["搋"] = "虒", ["鷈"] = "虒", ["謕"] = "虒", ["嗁"] = "虒", ["蹏"] = "虒", ["鼶"] = "虒", ["遞"] = "虒", ["虒"] = "虒", ["榹"] = "虒", ["磃"] = "虒", ["傂"] = "虒", ["螔"] = "虒", ["禠"] = "虒", ["褫"] = "虒", ["篪"] = "虒", ["歋"] = "虒", ["嘶"] = "斯", ["撕"] = "斯", ["斯"] = "斯", ["廝"] = "斯", ["蟴"] = "斯", ["燍"] = "斯", ["鐁"] = "斯", ["凘"] = "斯", ["澌"] = "斯", ["絲"] = "絲", ["蕬"] = "絲", ["鷥"] = "絲", ["巳"] = "巳", ["祀"] = "巳", ["汜"] = "巳", ["戺"] = "巳", ["起"] = "巳", ["熙"] = "巳", ["媐"] = "巳", ["圯"] = "巳", ["异"] = "巳", ["巸"] = "巳", ["訵"] = "四", ["四"] = "四", ["泗"] = "四", ["駟"] = "四", ["柶"] = "四", ["牭"] = "四", ["呬"] = "四", ["等"] = "寺", ["待"] = "寺", ["寺"] = "寺", ["持"] = "寺", ["峙"] = "寺", ["痔"] = "寺", ["跱"] = "寺", ["歭"] = "寺", ["洔"] = "寺", ["畤"] = "寺", ["秲"] = "寺", ["庤"] = "寺", ["時"] = "寺", ["鰣"] = "寺", ["塒"] = "寺", ["蒔"] = "寺", ["榯"] = "寺", ["恃"] = "寺", ["侍"] = "寺", ["詩"] = "寺", ["邿"] = "寺", ["特"] = "寺", ["浨"] = "宋", ["俕"] = "宋", ["宋"] = "宋", ["㮴"] = "叟", ["艘"] = "叟", ["嫂"] = "叟", ["瞍"] = "叟", ["謏"] = "叟", ["叜"] = "叟", ["叟"] = "叟", ["傁"] = "叟", ["廋"] = "叟", ["醙"] = "叟", ["遚"] = "叟", ["餿"] = "叟", ["搜"] = "叟", ["颼"] = "叟", ["溲"] = "叟", ["鎪"] = "叟", ["獀"] = "叟", ["鄋"] = "叟", ["螋"] = "叟", ["騪"] = "叟", ["瘦"] = "叟", ["洬"] = "夙", ["夙"] = "夙", ["素"] = "素", ["傃"] = "素", ["嗉"] = "素", ["膆"] = "素", ["塐"] = "素", ["宿"] = "宿", ["蓿"] = "宿", ["縮"] = "宿", ["樎"] = "宿", ["蹜"] = "宿", ["摍"] = "宿", ["粟"] = "粟", ["憟"] = "粟", ["簫"] = "肅", ["蕭"] = "肅", ["瀟"] = "肅", ["潚"] = "肅", ["彇"] = "肅", ["蟰"] = "肅", ["橚"] = "肅", ["嘯"] = "肅", ["歗"] = "肅", ["熽"] = "肅", ["繡"] = "肅", ["鏽"] = "肅", ["肅"] = "肅", ["鷫"] = "肅", ["驌"] = "肅", ["鱐"] = "肅", ["璛"] = "肅", ["蒜"] = "祘", ["祘"] = "祘", ["纂"] = "算", ["繤"] = "算", ["算"] = "算", ["匴"] = "算", ["篹"] = "算", ["篡"] = "算", ["攥"] = "算", ["隊"] = "遂", ["邃"] = "遂", ["譢"] = "遂", ["遂"] = "遂", ["隧"] = "遂", ["燧"] = "遂", ["襚"] = "遂", ["旞"] = "遂", ["璲"] = "遂", ["檖"] = "遂", ["澻"] = "遂", ["鐆"] = "遂", ["鐩"] = "遂", ["穟"] = "遂", ["墜"] = "遂", ["噦"] = "歲", ["翽"] = "歲", ["鐬"] = "歲", ["濊"] = "歲", ["歲"] = "歲", ["劌"] = "歲", ["顪"] = "歲", ["穢"] = "歲", ["薉"] = "歲", ["獩"] = "歲", ["饖"] = "歲", ["奯"] = "歲", ["孫"] = "孫", ["猻"] = "孫", ["蓀"] = "孫", ["搎"] = "孫", ["遜"] = "孫", ["愻"] = "孫", ["飧"] = "飧", ["蕵"] = "飧", ["隼"] = "隼", ["榫"] = "隼", ["准"] = "隼", ["準"] = "隼", ["索"] = "索", ["溹"] = "索", ["惢"] = "惢", ["蕊"] = "惢", ["蘂"] = "惢", ["繠"] = "惢", ["鎖"] = "瑣", ["瑣"] = "瑣", ["溑"] = "瑣", ["佗"] = "它", ["拕"] = "它", ["它"] = "它", ["蛇"] = "它", ["袉"] = "它", ["鴕"] = "它", ["駝"] = "它", ["紽"] = "它", ["鮀"] = "它", ["陀"] = "它", ["沱"] = "它", ["跎"] = "它", ["詑"] = "它", ["酡"] = "它", ["迱"] = "它", ["舵"] = "它", ["柁"] = "它", ["鉈"] = "它", ["傝"] = "蹋", ["搨"] = "蹋", ["蹹"] = "蹋", ["榻"] = "蹋", ["遢"] = "蹋", ["鰨"] = "蹋", ["毾"] = "蹋", ["塌"] = "蹋", ["溻"] = "蹋", ["蹋"] = "蹋", ["躢"] = "蹋", ["闒"] = "蹋", ["誩"] = "譶", ["譶"] = "譶", ["霅"] = "譶", ["胎"] = "台", ["台"] = "台", ["邰"] = "台", ["鮐"] = "台", ["孡"] = "台", ["苔"] = "台", ["抬"] = "台", ["駘"] = "台", ["炱"] = "台", ["菭"] = "台", ["跆"] = "台", ["殆"] = "台", ["怠"] = "台", ["迨"] = "台", ["紿"] = "台", ["詒"] = "台", ["軩"] = "台", ["咍"] = "台", ["佁"] = "台", ["枲"] = "台", ["辝"] = "台", ["鈶"] = "台", ["笞"] = "台", ["齝"] = "台", ["眙"] = "台", ["治"] = "台", ["始"] = "台", ["怡"] = "台", ["貽"] = "台", ["飴"] = "台", ["瓵"] = "台", ["珆"] = "台", ["懛"] = "臺", ["儓"] = "臺", ["臺"] = "臺", ["擡"] = "臺", ["薹"] = "臺", ["嬯"] = "臺", ["檯"] = "臺", ["籉"] = "臺", ["鷣"] = "覃", ["撢"] = "覃", ["憛"] = "覃", ["潭"] = "覃", ["譚"] = "覃", ["覃"] = "覃", ["鐔"] = "覃", ["藫"] = "覃", ["橝"] = "覃", ["蟫"] = "覃", ["燂"] = "覃", ["醰"] = "覃", ["禫"] = "覃", ["嘾"] = "覃", ["贉"] = "覃", ["瞫"] = "覃", ["蕈"] = "覃", ["鱏"] = "覃", ["簟"] = "覃", ["驔"] = "覃", ["磹"] = "覃", ["曇"] = "曇", ["壜"] = "曇", ["炭"] = "炭", ["湠"] = "炭", ["弢"] = "弢", ["詜"] = "弢", ["掏"] = "匋", ["蜪"] = "匋", ["陶"] = "匋", ["萄"] = "匋", ["啕"] = "匋", ["淘"] = "匋", ["騊"] = "匋", ["匋"] = "匋", ["祹"] = "匋", ["綯"] = "匋", ["替"] = "替", ["暜"] = "替", ["僣"] = "替", ["添"] = "天", ["忝"] = "天", ["悿"] = "天", ["舔"] = "天", ["菾"] = "天", ["天"] = "天", ["吞"] = "天", ["祆"] = "天", ["蚕"] = "天", ["田"] = "田", ["佃"] = "田", ["畋"] = "田", ["畇"] = "田", ["鈿"] = "田", ["沺"] = "田", ["甸"] = "田", ["銛"] = "甜", ["栝"] = "甜", ["餂"] = "甜", ["恬"] = "甜", ["湉"] = "甜", ["甜"] = "甜", ["狧"] = "甜", ["蜓"] = "廷", ["涏"] = "廷", ["綎"] = "廷", ["珽"] = "廷", ["脡"] = "廷", ["侹"] = "廷", ["頲"] = "廷", ["廷"] = "廷", ["庭"] = "廷", ["鼮"] = "廷", ["莛"] = "廷", ["筳"] = "廷", ["霆"] = "廷", ["娗"] = "廷", ["挺"] = "廷", ["艇"] = "廷", ["鋌"] = "廷", ["梃"] = "廷", ["誔"] = "廷", ["鮦"] = "同", ["侗"] = "同", ["恫"] = "同", ["痌"] = "同", ["同"] = "同", ["仝"] = "同", ["銅"] = "同", ["桐"] = "同", ["峒"] = "同", ["硐"] = "同", ["筒"] = "同", ["洞"] = "同", ["烔"] = "同", ["挏"] = "同", ["酮"] = "同", ["鲖"] = "同", ["眮"] = "同", ["衕"] = "同", ["哃"] = "同", ["絧"] = "同", ["姛"] = "同", ["詷"] = "同", ["胴"] = "同", ["駧"] = "同", ["迵"] = "同", ["戙"] = "同", ["禿"] = "禿", ["鵚"] = "禿", ["突"] = "突", ["宊"] = "突", ["揬"] = "突", ["鼵"] = "突", ["葖"] = "突", ["鶟"] = "突", ["堗"] = "突", ["啚"] = "圖", ["圖"] = "圖", ["社"] = "土", ["肚"] = "土", ["土"] = "土", ["吐"] = "土", ["芏"] = "土", ["杜"] = "土", ["靯"] = "土", ["荰"] = "土", ["菟"] = "兔", ["兔"] = "兔", ["鵵"] = "兔", ["梚"] = "兔", ["腿"] = "退", ["退"] = "退", ["褪"] = "退", ["豚"] = "豚", ["遯"] = "豚", ["妥"] = "妥", ["鵎"] = "妥", ["挼"] = "妥", ["骽"] = "妥", ["脮"] = "妥", ["餒"] = "妥", ["浽"] = "妥", ["娞"] = "妥", ["鮾"] = "妥", ["綏"] = "妥", ["荽"] = "妥", ["鋖"] = "妥", ["桵"] = "妥", ["瓦"] = "瓦", ["邷"] = "瓦", ["骫"] = "丸", ["丸"] = "丸", ["紈"] = "丸", ["芄"] = "丸", ["汍"] = "丸", ["肒"] = "丸", ["糲"] = "萬", ["犡"] = "萬", ["噧"] = "萬", ["邁"] = "萬", ["勱"] = "萬", ["蠆"] = "萬", ["厲"] = "萬", ["勵"] = "萬", ["礪"] = "萬", ["蠣"] = "萬", ["蠇"] = "萬", ["癘"] = "萬", ["濿"] = "萬", ["櫔"] = "萬", ["巁"] = "萬", ["贎"] = "萬", ["萬"] = "萬", ["忙"] = "亡", ["芒"] = "亡", ["茫"] = "亡", ["恾"] = "亡", ["吂"] = "亡", ["汒"] = "亡", ["朚"] = "亡", ["邙"] = "亡", ["杗"] = "亡", ["荒"] = "亡", ["肓"] = "亡", ["衁"] = "亡", ["巟"] = "亡", ["詤"] = "亡", ["慌"] = "亡", ["謊"] = "亡", ["喪"] = "亡", ["亡"] = "亡", ["望"] = "亡", ["莣"] = "亡", ["朢"] = "亡", ["鋩"] = "亡", ["硭"] = "亡", ["忘"] = "亡", ["网"] = "亡", ["罔"] = "亡", ["蛧"] = "亡", ["網"] = "亡", ["輞"] = "亡", ["棢"] = "亡", ["惘"] = "亡", ["菵"] = "亡", ["誷"] = "亡", ["魍"] = "亡", ["妄"] = "亡", ["盲"] = "亡", ["蝱"] = "亡", ["虻"] = "亡", ["氓"] = "亡", ["甿"] = "亡", ["皇"] = "王", ["惶"] = "王", ["遑"] = "王", ["堭"] = "王", ["煌"] = "王", ["餭"] = "王", ["騜"] = "王", ["艎"] = "王", ["隍"] = "王", ["湟"] = "王", ["徨"] = "王", ["篁"] = "王", ["蝗"] = "王", ["凰"] = "王", ["偟"] = "王", ["媓"] = "王", ["韹"] = "王", ["葟"] = "王", ["皝"] = "王", ["汪"] = "王", ["尪"] = "王", ["迋"] = "王", ["逛"] = "王", ["誑"] = "王", ["匡"] = "王", ["筐"] = "王", ["框"] = "王", ["眶"] = "王", ["誆"] = "王", ["邼"] = "王", ["恇"] = "王", ["劻"] = "王", ["洭"] = "王", ["軭"] = "王", ["狂"] = "王", ["軖"] = "王", ["鵟"] = "王", ["俇"] = "王", ["王"] = "王", ["蚟"] = "王", ["彺"] = "王", ["旺"] = "王", ["諻"] = "王", ["喤"] = "王", ["瑝"] = "王", ["鍠"] = "王", ["揘"] = "王", ["暀"] = "往", ["誑"] = "往", ["枉"] = "往", ["往"] = "往", ["鮠"] = "危", ["峞"] = "危", ["頠"] = "危", ["詭"] = "危", ["垝"] = "危", ["陒"] = "危", ["觤"] = "危", ["恑"] = "危", ["蛫"] = "危", ["祪"] = "危", ["洈"] = "危", ["姽"] = "危", ["桅"] = "危", ["佹"] = "危", ["跪"] = "危", ["危"] = "危", ["峗"] = "危", ["硊"] = "危", ["卼"] = "危", ["崴"] = "威", ["威"] = "威", ["葳"] = "威", ["隇"] = "威", ["蝛"] = "威", ["鰄"] = "威", ["楲"] = "威", ["矀"] = "微", ["覹"] = "微", ["黴"] = "微", ["薇"] = "微", ["媺"] = "微", ["微"] = "微", ["溦"] = "微", ["癓"] = "微", ["徽"] = "微", ["幑"] = "微", ["禕"] = "韋", ["郼"] = "韋", ["褘"] = "韋", ["諱"] = "韋", ["媁"] = "韋", ["幃"] = "韋", ["違"] = "韋", ["圍"] = "韋", ["韋"] = "韋", ["闈"] = "韋", ["湋"] = "韋", ["鍏"] = "韋", ["潿"] = "韋", ["韙"] = "韋", ["煒"] = "韋", ["暐"] = "韋", ["偉"] = "韋", ["瑋"] = "韋", ["葦"] = "韋", ["椲"] = "韋", ["韡"] = "韋", ["愇"] = "韋", ["緯"] = "韋", ["匯"] = "唯", ["擓"] = "唯", ["淮"] = "唯", ["睢"] = "唯", ["嶉"] = "唯", ["趡"] = "唯", ["踓"] = "唯", ["雖"] = "唯", ["濉"] = "唯", ["倠"] = "唯", ["婎"] = "唯", ["蓶"] = "唯", ["維"] = "唯", ["惟"] = "唯", ["唯"] = "唯", ["濰"] = "唯", ["琟"] = "唯", ["鷕"] = "唯", ["帷"] = "唯", ["鵻"] = "唯", ["譌"] = "爲", ["嬀"] = "爲", ["潙"] = "爲", ["蟡"] = "爲", ["僞"] = "爲", ["噅"] = "爲", ["撝"] = "爲", ["爲"] = "爲", ["鄬"] = "爲", ["蔿"] = "爲", ["儰"] = "爲", ["寪"] = "爲", ["蘤"] = "爲", ["娓"] = "尾", ["尾"] = "尾", ["浘"] = "尾", ["矮"] = "委", ["躷"] = "委", ["捼"] = "委", ["倭"] = "委", ["涹"] = "委", ["踒"] = "委", ["餧"] = "委", ["諉"] = "委", ["痿"] = "委", ["萎"] = "委", ["逶"] = "委", ["覣"] = "委", ["蜲"] = "委", ["委"] = "委", ["緌"] = "委", ["寐"] = "未", ["魅"] = "未", ["鬽"] = "未", ["昧"] = "未", ["妹"] = "未", ["眛"] = "未", ["沬"] = "未", ["未"] = "未", ["味"] = "未", ["鮇"] = "未", ["菋"] = "未", ["煨"] = "畏", ["偎"] = "畏", ["隈"] = "畏", ["椳"] = "畏", ["鰃"] = "畏", ["渨"] = "畏", ["葨"] = "畏", ["揋"] = "畏", ["猥"] = "畏", ["嵔"] = "畏", ["鍡"] = "畏", ["碨"] = "畏", ["腲"] = "畏", ["餵"] = "畏", ["畏"] = "畏", ["喟"] = "胃", ["胃"] = "胃", ["謂"] = "胃", ["媦"] = "胃", ["蝟"] = "胃", ["渭"] = "胃", ["煟"] = "胃", ["緭"] = "胃", ["尉"] = "尉", ["熨"] = "尉", ["慰"] = "尉", ["罻"] = "尉", ["犚"] = "尉", ["蔚"] = "尉", ["螱"] = "尉", ["褽"] = "尉", ["鳚"] = "尉", ["衞"] = "衛", ["讏"] = "衛", ["躛"] = "衛", ["媪"] = "𥁕", ["蝹"] = "𥁕", ["溫"] = "𥁕", ["𥁕"] = "𥁕", ["輼"] = "𥁕", ["蕰"] = "𥁕", ["殟"] = "𥁕", ["豱"] = "𥁕", ["緼"] = "𥁕", ["韞"] = "𥁕", ["瘟"] = "𥁕", ["揾"] = "𥁕", ["氲"] = "𥁕", ["煴"] = "𥁕", ["馧"] = "𥁕", ["蒀"] = "𥁕", ["藴"] = "𥁕", ["褞"] = "𥁕", ["醖"] = "𥁕", ["慍"] = "𥁕", ["蘊"] = "𥁕", ["腽"] = "𥁕", ["榅"] = "𥁕", ["嗢"] = "𥁕", ["旻"] = "文", ["旼"] = "文", ["汶"] = "文", ["忞"] = "文", ["盿"] = "文", ["枚"] = "文", ["玫"] = "文", ["玟"] = "文", ["文"] = "文", ["紋"] = "文", ["蚊"] = "文", ["雯"] = "文", ["彣"] = "文", ["馼"] = "文", ["鳼"] = "文", ["鼤"] = "文", ["抆"] = "文", ["紊"] = "文", ["莪"] = "我", ["哦"] = "我", ["娥"] = "我", ["峨"] = "我", ["峩"] = "我", ["鵝"] = "我", ["俄"] = "我", ["蛾"] = "我", ["睋"] = "我", ["涐"] = "我", ["誐"] = "我", ["硪"] = "我", ["我"] = "我", ["騀"] = "我", ["餓"] = "我", ["義"] = "我", ["儀"] = "我", ["轙"] = "我", ["檥"] = "我", ["蟻"] = "我", ["艤"] = "我", ["礒"] = "我", ["羛"] = "我", ["議"] = "我", ["犧"] = "我", ["曦"] = "我", ["羲"] = "我", ["巫"] = "巫", ["誣"] = "巫", ["莁"] = "巫", ["鵐"] = "巫", ["握"] = "屋", ["幄"] = "屋", ["偓"] = "屋", ["渥"] = "屋", ["齷"] = "屋", ["楃"] = "屋", ["喔"] = "屋", ["腛"] = "屋", ["媉"] = "屋", ["屋"] = "屋", ["剭"] = "屋", ["烏"] = "烏", ["嗚"] = "烏", ["鰞"] = "烏", ["歍"] = "烏", ["鎢"] = "烏", ["瑦"] = "烏", ["鄔"] = "烏", ["螐"] = "烏", ["隖"] = "烏", ["塢"] = "烏", ["溩"] = "烏", ["吳"] = "吳", ["蜈"] = "吳", ["鋘"] = "吳", ["麌"] = "吳", ["祦"] = "吳", ["誤"] = "吳", ["悞"] = "吳", ["娛"] = "吳", ["虞"] = "吳", ["澞"] = "吳", ["鸆"] = "吳", ["俁"] = "吳", ["噳"] = "吳", ["墲"] = "無", ["橅"] = "無", ["膴"] = "無", ["幠"] = "無", ["鄦"] = "無", ["撫"] = "無", ["無"] = "無", ["瞴"] = "無", ["蕪"] = "無", ["璑"] = "無", ["鷡"] = "無", ["譕"] = "無", ["憮"] = "無", ["舞"] = "無", ["廡"] = "無", ["嫵"] = "無", ["甒"] = "無", ["潕"] = "無", ["儛"] = "無", ["吾"] = "五", ["衙"] = "五", ["鼯"] = "五", ["浯"] = "五", ["珸"] = "五", ["郚"] = "五", ["齬"] = "五", ["鯃"] = "五", ["娪"] = "五", ["梧"] = "五", ["峿"] = "五", ["五"] = "五", ["伍"] = "五", ["寤"] = "五", ["啎"] = "五", ["晤"] = "五", ["悟"] = "五", ["逜"] = "五", ["窹"] = "五", ["捂"] = "五", ["鋙"] = "五", ["語"] = "五", ["圄"] = "五", ["敔"] = "五", ["卸"] = "午", ["汻"] = "午", ["滸"] = "午", ["午"] = "午", ["仵"] = "午", ["旿"] = "午", ["忤"] = "午", ["迕"] = "午", ["杵"] = "午", ["籞"] = "午", ["蘌"] = "午", ["篽"] = "午", ["禦"] = "午", ["許"] = "午", ["御"] = "午", ["賦"] = "武", ["陚"] = "武", ["武"] = "武", ["鵡"] = "武", ["珷"] = "武", ["碔"] = "武", ["娬"] = "武", ["虺"] = "兀", ["豗"] = "兀", ["鼿"] = "兀", ["虫"] = "兀", ["髡"] = "兀", ["軏"] = "兀", ["扤"] = "兀", ["兀"] = "兀", ["杌"] = "兀", ["屼"] = "兀", ["矹"] = "兀", ["脗"] = "勿", ["吻"] = "勿", ["刎"] = "勿", ["伆"] = "勿", ["勽"] = "勿", ["沕"] = "勿", ["忽"] = "勿", ["昒"] = "勿", ["惚"] = "勿", ["匫"] = "勿", ["笏"] = "勿", ["曶"] = "勿", ["淴"] = "勿", ["物"] = "勿", ["勿"] = "勿", ["芴"] = "勿", ["岉"] = "勿", ["茂"] = "戊", ["戊"] = "戊", ["夕"] = "夕", ["汐"] = "夕", ["穸"] = "夕", ["盻"] = "兮", ["兮"] = "兮", ["枍"] = "兮", ["粞"] = "西", ["洒"] = "西", ["西"] = "西", ["卤"] = "西", ["卥"] = "西", ["栖"] = "西", ["茜"] = "西", ["哂"] = "西", ["桸"] = "希", ["郗"] = "希", ["絺"] = "希", ["脪"] = "希", ["瓻"] = "希", ["希"] = "希", ["晞"] = "希", ["莃"] = "希", ["鵗"] = "希", ["稀"] = "希", ["睎"] = "希", ["豨"] = "希", ["悕"] = "希", ["俙"] = "希", ["欷"] = "希", ["浠"] = "希", ["唏"] = "希", ["借"] = "昔", ["唶"] = "昔", ["藉"] = "昔", ["躤"] = "昔", ["蜡"] = "昔", ["齰"] = "昔", ["醋"] = "昔", ["錯"] = "昔", ["措"] = "昔", ["厝"] = "昔", ["逪"] = "昔", ["剒"] = "昔", ["鵲"] = "昔", ["碏"] = "昔", ["踖"] = "昔", ["趞"] = "昔", ["皵"] = "昔", ["舄"] = "昔", ["斮"] = "昔", ["簎"] = "昔", ["諎"] = "昔", ["矠"] = "昔", ["庴"] = "昔", ["籍"] = "昔", ["耤"] = "昔", ["猎"] = "昔", ["昔"] = "昔", ["惜"] = "昔", ["腊"] = "昔", ["焟"] = "昔", ["棤"] = "昔", ["菥"] = "析", ["蜤"] = "析", ["析"] = "析", ["皙"] = "析", ["蜥"] = "析", ["淅"] = "析", ["惁"] = "析", ["晰"] = "析", ["厗"] = "屖", ["屖"] = "屖", ["遟"] = "屖", ["謘"] = "屖", ["稺"] = "屖", ["息"] = "息", ["熄"] = "息", ["媳"] = "息", ["鄎"] = "息", ["瘜"] = "息", ["蒠"] = "息", ["僁"] = "悉", ["悉"] = "悉", ["蟋"] = "悉", ["窸"] = "悉", ["摨"] = "犀", ["犀"] = "犀", ["遲"] = "犀", ["墀"] = "犀", ["橀"] = "醯", ["醯"] = "醯", ["謑"] = "奚", ["膎"] = "奚", ["鞵"] = "奚", ["榽"] = "奚", ["鷄"] = "奚", ["雞"] = "奚", ["谿"] = "奚", ["嵠"] = "奚", ["溪"] = "奚", ["磎"] = "奚", ["螇"] = "奚", ["鸂"] = "奚", ["奚"] = "奚", ["豯"] = "奚", ["徯"] = "奚", ["蹊"] = "奚", ["騱"] = "奚", ["傒"] = "奚", ["鼷"] = "奚", ["蒵"] = "奚", ["貕"] = "奚", ["慀"] = "奚", ["摺"] = "習", ["磖"] = "習", ["褶"] = "習", ["慴"] = "習", ["霫"] = "習", ["習"] = "習", ["鰼"] = "習", ["騽"] = "習", ["飁"] = "習", ["槢"] = "習", ["熠"] = "習", ["簁"] = "徙", ["徙"] = "徙", ["褷"] = "徙", ["屣"] = "徙", ["縰"] = "徙", ["蓰"] = "徙", ["嘻"] = "喜", ["嬉"] = "喜", ["禧"] = "喜", ["熹"] = "喜", ["僖"] = "喜", ["歖"] = "喜", ["譆"] = "喜", ["瞦"] = "喜", ["喜"] = "喜", ["憙"] = "喜", ["蟢"] = "喜", ["糦"] = "喜", ["饎"] = "喜", ["係"] = "系", ["系"] = "系", ["寫"] = "舄", ["瀉"] = "舄", ["舄"] = "舄", ["獡"] = "舄", ["潟"] = "舄", ["磶"] = "舄", ["蕮"] = "舄", ["虩"] = "隙", ["隙"] = "隙", ["丅"] = "下", ["下"] = "下", ["芐"] = "下", ["榎"] = "夏", ["廈"] = "夏", ["嗄"] = "夏", ["夏"] = "夏", ["洗"] = "先", ["先"] = "先", ["銑"] = "先", ["跣"] = "先", ["毨"] = "先", ["姺"] = "先", ["筅"] = "先", ["冼"] = "先", ["箲"] = "先", ["駪"] = "先", ["兟"] = "先", ["詵"] = "先", ["侁"] = "先", ["鮮"] = "鮮", ["廯"] = "鮮", ["癬"] = "鮮", ["蘚"] = "鮮", ["感"] = "咸", ["鱤"] = "咸", ["顑"] = "咸", ["轗"] = "咸", ["撼"] = "咸", ["憾"] = "咸", ["喊"] = "咸", ["緘"] = "咸", ["瑊"] = "咸", ["黬"] = "咸", ["減"] = "咸", ["羬"] = "咸", ["麙"] = "咸", ["咸"] = "咸", ["鹹"] = "咸", ["醎"] = "咸", ["諴"] = "咸", ["椷"] = "咸", ["輱"] = "咸", ["鍼"] = "咸", ["箴"] = "咸", ["葴"] = "咸", ["鱵"] = "咸", ["閑"] = "閑", ["嫻"] = "閑", ["鷴"] = "閑", ["顯"] = "顯", ["韅"] = "顯", ["萏"] = "臽", ["窞"] = "臽", ["惂"] = "臽", ["輡"] = "臽", ["錎"] = "臽", ["埳"] = "臽", ["臽"] = "臽", ["淊"] = "臽", ["欿"] = "臽", ["蜭"] = "臽", ["啗"] = "臽", ["鵮"] = "臽", ["餡"] = "臽", ["陷"] = "臽", ["爓"] = "臽", ["諂"] = "臽", ["讇"] = "臽", ["閻"] = "臽", ["焰"] = "臽", ["壛"] = "臽", ["櫩"] = "臽", ["燄"] = "臽", ["掐"] = "臽", ["縣"] = "縣", ["懸"] = "縣", ["相"] = "相", ["廂"] = "相", ["湘"] = "相", ["緗"] = "相", ["箱"] = "相", ["葙"] = "相", ["想"] = "相", ["霜"] = "相", ["孀"] = "相", ["鸘"] = "相", ["驦"] = "相", ["香"] = "香", ["萫"] = "香", ["曏"] = "鄉", ["鄉"] = "鄉", ["薌"] = "鄉", ["膷"] = "鄉", ["響"] = "鄉", ["饗"] = "鄉", ["蠁"] = "鄉", ["嚮"] = "鄉", ["卿"] = "鄉", ["囊"] = "襄", ["蠰"] = "襄", ["曩"] = "襄", ["灢"] = "襄", ["儾"] = "襄", ["孃"] = "襄", ["瓤"] = "襄", ["鑲"] = "襄", ["釀"] = "襄", ["瓖"] = "襄", ["驤"] = "襄", ["襄"] = "襄", ["纕"] = "襄", ["忀"] = "襄", ["欀"] = "襄", ["饟"] = "襄", ["攘"] = "襄", ["禳"] = "襄", ["穰"] = "襄", ["躟"] = "襄", ["瀼"] = "襄", ["獽"] = "襄", ["儴"] = "襄", ["蘘"] = "襄", ["鬤"] = "襄", ["勷"] = "襄", ["壤"] = "襄", ["嚷"] = "襄", ["讓"] = "襄", ["懹"] = "襄", ["攮"] = "襄", ["晌"] = "向", ["餉"] = "向", ["向"] = "向", ["珦"] = "向", ["潒"] = "象", ["像"] = "象", ["象"] = "象", ["橡"] = "象", ["蟓"] = "象", ["襐"] = "象", ["勨"] = "象", ["鱌"] = "象", ["嶑"] = "象", ["梟"] = "梟", ["蟂"] = "梟", ["鄡"] = "梟", ["囂"] = "囂", ["虈"] = "囂", ["觘"] = "小", ["抄"] = "小", ["鈔"] = "小", ["訬"] = "小", ["炒"] = "小", ["吵"] = "小", ["耖"] = "小", ["仯"] = "小", ["眇"] = "小", ["渺"] = "小", ["杪"] = "小", ["秒"] = "小", ["篎"] = "小", ["妙"] = "小", ["玅"] = "小", ["釥"] = "小", ["小"] = "小", ["少"] = "小", ["麨"] = "小", ["尠"] = "小", ["梢"] = "肖", ["捎"] = "肖", ["筲"] = "肖", ["鞘"] = "肖", ["艄"] = "肖", ["蛸"] = "肖", ["髾"] = "肖", ["輎"] = "肖", ["旓"] = "肖", ["弰"] = "肖", ["鮹"] = "肖", ["綃"] = "肖", ["颵"] = "肖", ["莦"] = "肖", ["娋"] = "肖", ["稍"] = "肖", ["哨"] = "肖", ["揱"] = "肖", ["潲"] = "肖", ["睄"] = "肖", ["悄"] = "肖", ["俏"] = "肖", ["峭"] = "肖", ["陗"] = "肖", ["帩"] = "肖", ["誚"] = "肖", ["消"] = "肖", ["宵"] = "肖", ["霄"] = "肖", ["硝"] = "肖", ["銷"] = "肖", ["逍"] = "肖", ["魈"] = "肖", ["痟"] = "肖", ["焇"] = "肖", ["肖"] = "肖", ["韒"] = "肖", ["趙"] = "肖", ["箾"] = "肖", ["踃"] = "肖", ["削"] = "肖", ["矟"] = "肖", ["酵"] = "孝", ["窙"] = "孝", ["哮"] = "孝", ["庨"] = "孝", ["涍"] = "孝", ["孝"] = "孝", ["栛"] = "劦", ["珕"] = "劦", ["荔"] = "劦", ["脅"] = "劦", ["姭"] = "劦", ["搚"] = "劦", ["拹"] = "劦", ["愶"] = "劦", ["嗋"] = "劦", ["熁"] = "劦", ["協"] = "劦", ["勰"] = "劦", ["劦"] = "劦", ["叶"] = "劦", ["瀣"] = "韰", ["韰"] = "韰", ["薤"] = "韰", ["燮"] = "燮", ["躞"] = "燮", ["沁"] = "心", ["吣"] = "心", ["心"] = "心", ["杺"] = "心", ["伈"] = "心", ["親"] = "辛", ["寴"] = "辛", ["儭"] = "辛", ["瀙"] = "辛", ["辛"] = "辛", ["新"] = "辛", ["薪"] = "辛", ["襯"] = "辛", ["櫬"] = "辛", ["嚫"] = "辛", ["莘"] = "辛", ["騂"] = "辛", ["垶"] = "辛", ["觪"] = "辛", ["崽"] = "囟", ["偲"] = "囟", ["腮"] = "囟", ["鰓"] = "囟", ["揌"] = "囟", ["顋"] = "囟", ["愢"] = "囟", ["毢"] = "囟", ["諰"] = "囟", ["細"] = "囟", ["思"] = "囟", ["緦"] = "囟", ["罳"] = "囟", ["禗"] = "囟", ["楒"] = "囟", ["葸"] = "囟", ["恖"] = "囟", ["颸"] = "囟", ["囟"] = "囟", ["顖"] = "囟", ["毸"] = "囟", ["釁"] = "釁", ["舋"] = "釁", ["亹"] = "釁", ["斖"] = "釁", ["虋"] = "釁", ["璺"] = "釁", ["興"] = "興", ["臖"] = "興", ["嬹"] = "興", ["筕"] = "行", ["桁"] = "行", ["行"] = "行", ["胻"] = "行", ["衡"] = "行", ["蘅"] = "行", ["珩"] = "行", ["洐"] = "行", ["荇"] = "行", ["絎"] = "行", ["杏"] = "杏", ["莕"] = "杏", ["幸"] = "幸", ["倖"] = "幸", ["婞"] = "幸", ["涬"] = "幸", ["緈"] = "幸", ["悻"] = "幸", ["睪"] = "幸", ["酗"] = "凶", ["凶"] = "凶", ["匈"] = "凶", ["兇"] = "凶", ["訩"] = "凶", ["胸"] = "凶", ["胷"] = "凶", ["洶"] = "凶", ["恟"] = "凶", ["詾"] = "凶", ["怳"] = "兄", ["況"] = "兄", ["貺"] = "兄", ["况"] = "兄", ["兄"] = "兄", ["讂"] = "夐", ["矎"] = "夐", ["夐"] = "夐", ["瓊"] = "夐", ["藑"] = "夐", ["觼"] = "夐", ["茠"] = "休", ["烋"] = "休", ["恘"] = "休", ["休"] = "休", ["貅"] = "休", ["咻"] = "休", ["庥"] = "休", ["鵂"] = "休", ["髤"] = "休", ["髹"] = "休", ["透"] = "秀", ["莠"] = "秀", ["誘"] = "秀", ["蜏"] = "秀", ["琇"] = "秀", ["秀"] = "秀", ["銹"] = "秀", ["滅"] = "戌", ["搣"] = "戌", ["烕"] = "戌", ["戌"] = "戌", ["珬"] = "戌", ["銊"] = "戌", ["剨"] = "砉", ["湱"] = "砉", ["砉"] = "砉", ["盨"] = "須", ["須"] = "須", ["鬚"] = "須", ["嬃"] = "須", ["蕦"] = "須", ["羺"] = "需", ["獳"] = "需", ["擩"] = "需", ["譳"] = "需", ["懦"] = "需", ["糯"] = "需", ["需"] = "需", ["繻"] = "需", ["鑐"] = "需", ["儒"] = "需", ["濡"] = "需", ["襦"] = "需", ["嚅"] = "需", ["顬"] = "需", ["鱬"] = "需", ["嬬"] = "需", ["臑"] = "需", ["醹"] = "需", ["蠕"] = "需", ["孺"] = "需", ["畜"] = "畜", ["蓄"] = "畜", ["稸"] = "畜", ["滀"] = "畜", ["傗"] = "畜", ["鄐"] = "畜", ["慉"] = "畜", ["弦"] = "玄", ["絃"] = "玄", ["舷"] = "玄", ["痃"] = "玄", ["胘"] = "玄", ["蚿"] = "玄", ["伭"] = "玄", ["婱"] = "玄", ["玄"] = "玄", ["眩"] = "玄", ["玹"] = "玄", ["玆"] = "玄", ["詃"] = "玄", ["泫"] = "玄", ["鉉"] = "玄", ["炫"] = "玄", ["袨"] = "玄", ["衒"] = "玄", ["惤"] = "玄", ["旋"] = "旋", ["漩"] = "旋", ["璇"] = "旋", ["琁"] = "旋", ["蜁"] = "旋", ["嫙"] = "旋", ["鏇"] = "旋", ["縼"] = "旋", ["躠"] = "薛", ["嶭"] = "薛", ["櫱"] = "薛", ["薛"] = "薛", ["辥"] = "薛", ["孼"] = "薛", ["蘖"] = "薛", ["蠥"] = "薛", ["孽"] = "薛", ["糵"] = "薛", ["攪"] = "學", ["覺"] = "學", ["澩"] = "學", ["斆"] = "學", ["鱟"] = "學", ["嶨"] = "學", ["礐"] = "學", ["觷"] = "學", ["學"] = "學", ["鷽"] = "學", ["泬"] = "穴", ["坹"] = "穴", ["穴"] = "穴", ["袕"] = "穴", ["鴪"] = "穴", ["侐"] = "血", ["血"] = "血", ["恤"] = "血", ["卹"] = "血", ["賉"] = "血", ["欰"] = "血", ["洫"] = "血", ["殈"] = "血", ["櫄"] = "熏", ["薰"] = "熏", ["曛"] = "熏", ["勲"] = "熏", ["熏"] = "熏", ["燻"] = "熏", ["獯"] = "熏", ["纁"] = "熏", ["醺"] = "熏", ["臐"] = "熏", ["爋"] = "熏", ["襑"] = "尋", ["憳"] = "尋", ["蕁"] = "尋", ["撏"] = "尋", ["燖"] = "尋", ["尋"] = "尋", ["潯"] = "尋", ["樳"] = "尋", ["鄩"] = "尋", ["汛"] = "卂", ["軐"] = "卂", ["卂"] = "卂", ["訊"] = "卂", ["訙"] = "卂", ["迅"] = "卂", ["阠"] = "卂", ["扟"] = "卂", ["籸"] = "卂", ["蝨"] = "卂", ["撰"] = "巽", ["饌"] = "巽", ["譔"] = "巽", ["鐉"] = "巽", ["選"] = "巽", ["繏"] = "巽", ["潠"] = "巽", ["蟤"] = "巽", ["僎"] = "巽", ["襈"] = "巽", ["巽"] = "巽", ["簨"] = "巽", ["邪"] = "牙", ["衺"] = "牙", ["牙"] = "牙", ["芽"] = "牙", ["齖"] = "牙", ["呀"] = "牙", ["枒"] = "牙", ["雅"] = "牙", ["厊"] = "牙", ["庌"] = "牙", ["訝"] = "牙", ["迓"] = "牙", ["砑"] = "牙", ["犽"] = "牙", ["疨"] = "牙", ["岈"] = "牙", ["谺"] = "牙", ["颬"] = "牙", ["鴉"] = "牙", ["釾"] = "牙", ["賈"] = "襾", ["檟"] = "襾", ["價"] = "襾", ["覀"] = "襾", ["襾"] = "襾", ["椏"] = "亞", ["錏"] = "亞", ["鵶"] = "亞", ["啞"] = "亞", ["瘂"] = "亞", ["亞"] = "亞", ["婭"] = "亞", ["俹"] = "亞", ["稏"] = "亞", ["惡"] = "亞", ["噁"] = "亞", ["堊"] = "亞", ["蝁"] = "亞", ["嘕"] = "焉", ["嫣"] = "焉", ["焉"] = "焉", ["鄢"] = "焉", ["蔫"] = "焉", ["漹"] = "焉", ["傿"] = "焉", ["唌"] = "延", ["誕"] = "延", ["蜑"] = "延", ["蛋"] = "延", ["硟"] = "延", ["涎"] = "延", ["脠"] = "延", ["梴"] = "延", ["鋋"] = "延", ["埏"] = "延", ["挻"] = "延", ["鯅"] = "延", ["延"] = "延", ["筵"] = "延", ["蜒"] = "延", ["狿"] = "延", ["郔"] = "延", ["綖"] = "延", ["莚"] = "延", ["唁"] = "言", ["這"] = "言", ["言"] = "言", ["琂"] = "言", ["圁"] = "言", ["誾"] = "言", ["訔"] = "言", ["狺"] = "言", ["船"] = "沿", ["沿"] = "沿", ["鉛"] = "沿", ["倓"] = "炎", ["緂"] = "炎", ["毯"] = "炎", ["菼"] = "炎", ["裧"] = "炎", ["賧"] = "炎", ["睒"] = "炎", ["舕"] = "炎", ["談"] = "炎", ["郯"] = "炎", ["惔"] = "炎", ["錟"] = "炎", ["淡"] = "炎", ["痰"] = "炎", ["餤"] = "炎", ["啖"] = "炎", ["腅"] = "炎", ["剡"] = "炎", ["覢"] = "炎", ["掞"] = "炎", ["炎"] = "炎", ["琰"] = "炎", ["棪"] = "炎", ["扊"] = "炎", ["庵"] = "奄", ["鵪"] = "奄", ["菴"] = "奄", ["馣"] = "奄", ["晻"] = "奄", ["唵"] = "奄", ["黤"] = "奄", ["埯"] = "奄", ["淹"] = "奄", ["閹"] = "奄", ["崦"] = "奄", ["醃"] = "奄", ["掩"] = "奄", ["奄"] = "奄", ["罨"] = "奄", ["裺"] = "奄", ["俺"] = "奄", ["腌"] = "奄", ["殗"] = "奄", ["餣"] = "奄", ["弇"] = "弇", ["媕"] = "弇", ["黭"] = "弇", ["揜"] = "弇", ["渰"] = "弇", ["鞥"] = "弇", ["愆"] = "衍", ["衍"] = "衍", ["堰"] = "妟", ["躽"] = "妟", ["宴"] = "妟", ["蝘"] = "妟", ["偃"] = "妟", ["郾"] = "妟", ["鶠"] = "妟", ["褗"] = "妟", ["匽"] = "妟", ["鼴"] = "妟", ["鰋"] = "妟", ["揠"] = "妟", ["喭"] = "彦", ["鏟"] = "彦", ["産"] = "彦", ["簅"] = "彦", ["摌"] = "彦", ["嵼"] = "彦", ["滻"] = "彦", ["顏"] = "彦", ["楌"] = "彦", ["偐"] = "彦", ["齴"] = "彦", ["遃"] = "彦", ["嵃"] = "彦", ["彦"] = "彦", ["諺"] = "彦", ["猒"] = "猒", ["懕"] = "猒", ["饜"] = "猒", ["嬮"] = "猒", ["厭"] = "猒", ["黶"] = "猒", ["檿"] = "猒", ["魘"] = "猒", ["厴"] = "猒", ["擪"] = "猒", ["壓"] = "猒", ["靨"] = "猒", ["雁"] = "雁", ["鳫"] = "雁", ["鴈"] = "雁", ["贗"] = "雁", ["燕"] = "燕", ["驠"] = "燕", ["嬿"] = "燕", ["鷰"] = "燕", ["醼"] = "燕", ["讌"] = "燕", ["嚥"] = "燕", ["酀"] = "燕", ["獻"] = "鬳", ["甗"] = "鬳", ["巘"] = "鬳", ["讞"] = "鬳", ["鬳"] = "鬳", ["瓛"] = "鬳", ["囐"] = "鬳", ["齾"] = "鬳", ["钀"] = "鬳", ["豔"] = "豔", ["灩"] = "豔", ["鴦"] = "央", ["佒"] = "央", ["咉"] = "央", ["眏"] = "央", ["姎"] = "央", ["坱"] = "央", ["映"] = "央", ["泱"] = "央", ["盎"] = "央", ["駚"] = "央", ["軮"] = "央", ["醠"] = "央", ["央"] = "央", ["秧"] = "央", ["殃"] = "央", ["鞅"] = "央", ["鉠"] = "央", ["雵"] = "央", ["胦"] = "央", ["柍"] = "央", ["詇"] = "央", ["岟"] = "央", ["炴"] = "央", ["怏"] = "央", ["紻"] = "央", ["英"] = "央", ["瑛"] = "央", ["霙"] = "央", ["韺"] = "央", ["媖"] = "央", ["渶"] = "央", ["鶧"] = "央", ["楧"] = "央", ["暎"] = "央", ["样"] = "羊", ["佯"] = "羊", ["詳"] = "羊", ["洋"] = "羊", ["翔"] = "羊", ["庠"] = "羊", ["祥"] = "羊", ["痒"] = "羊", ["姜"] = "羊", ["羌"] = "羊", ["蜣"] = "羊", ["猐"] = "羊", ["唴"] = "羊", ["羊"] = "羊", ["徉"] = "羊", ["烊"] = "羊", ["蛘"] = "羊", ["眻"] = "羊", ["鴹"] = "羊", ["恙"] = "羊", ["羕"] = "羊", ["樣"] = "羊", ["漾"] = "羊", ["湯"] = "昜", ["踼"] = "昜", ["蝪"] = "昜", ["薚"] = "昜", ["簜"] = "昜", ["盪"] = "昜", ["偒"] = "昜", ["蕩"] = "昜", ["燙"] = "昜", ["啺"] = "昜", ["碭"] = "昜", ["婸"] = "昜", ["愓"] = "昜", ["璗"] = "昜", ["崵"] = "昜", ["逿"] = "昜", ["暢"] = "昜", ["畼"] = "昜", ["腸"] = "昜", ["場"] = "昜", ["傷"] = "昜", ["殤"] = "昜", ["觴"] = "昜", ["慯"] = "昜", ["禓"] = "昜", ["塲"] = "昜", ["陽"] = "昜", ["楊"] = "昜", ["揚"] = "昜", ["瘍"] = "昜", ["煬"] = "昜", ["鍚"] = "昜", ["暘"] = "昜", ["颺"] = "昜", ["昜"] = "昜", ["輰"] = "昜", ["敭"] = "昜", ["鰑"] = "昜", ["諹"] = "昜", ["瑒"] = "昜", ["鸉"] = "昜", ["餳"] = "昜", ["鯗"] = "養", ["養"] = "養", ["癢"] = "養", ["瀁"] = "養", ["幺"] = "幺", ["吆"] = "幺", ["笑"] = "夭", ["夭"] = "夭", ["镺"] = "夭", ["芺"] = "夭", ["妖"] = "夭", ["祅"] = "夭", ["枖"] = "夭", ["訞"] = "夭", ["殀"] = "夭", ["仸"] = "夭", ["妋"] = "夭", ["飫"] = "夭", ["沃"] = "夭", ["鋈"] = "夭", ["崤"] = "爻", ["郩"] = "爻", ["敎"] = "爻", ["較"] = "爻", ["肴"] = "爻", ["淆"] = "爻", ["倄"] = "爻", ["爻"] = "爻", ["餚"] = "爻", ["殽"] = "爻", ["笅"] = "爻", ["駁"] = "爻", ["撓"] = "垚", ["鐃"] = "垚", ["譊"] = "垚", ["橈"] = "垚", ["磽"] = "垚", ["墝"] = "垚", ["穘"] = "垚", ["顤"] = "垚", ["燒"] = "垚", ["饒"] = "垚", ["蟯"] = "垚", ["蕘"] = "垚", ["襓"] = "垚", ["繞"] = "垚", ["遶"] = "垚", ["嬈"] = "垚", ["趬"] = "垚", ["蹺"] = "垚", ["翹"] = "垚", ["澆"] = "垚", ["驍"] = "垚", ["僥"] = "垚", ["堯"] = "垚", ["垚"] = "垚", ["嶢"] = "垚", ["獟"] = "垚", ["膮"] = "垚", ["嘵"] = "垚", ["憢"] = "垚", ["曉"] = "垚", ["皢"] = "垚", ["搖"] = "謠", ["遙"] = "謠", ["瑤"] = "謠", ["徭"] = "謠", ["鰩"] = "謠", ["媱"] = "謠", ["傜"] = "謠", ["颻"] = "謠", ["窰"] = "謠", ["愮"] = "謠", ["鷂"] = "謠", ["榣"] = "謠", ["嗂"] = "謠", ["猺"] = "謠", ["謠"] = "謠", ["鎐"] = "謠", ["繇"] = "繇", ["蘨"] = "繇", ["櫾"] = "繇", ["滔"] = "舀", ["韜"] = "舀", ["縚"] = "舀", ["謟"] = "舀", ["慆"] = "舀", ["幍"] = "舀", ["槄"] = "舀", ["搯"] = "舀", ["瑫"] = "舀", ["稻"] = "舀", ["蹈"] = "舀", ["舀"] = "舀", ["腰"] = "要", ["要"] = "要", ["葽"] = "要", ["喓"] = "要", ["闄"] = "要", ["偠"] = "要", ["騕"] = "要", ["婹"] = "要", ["耶"] = "耶", ["椰"] = "耶", ["爺"] = "耶", ["瑘"] = "耶", ["鎁"] = "耶", ["他"] = "也", ["拖"] = "也", ["駞"] = "也", ["池"] = "也", ["灺"] = "也", ["鍦"] = "也", ["虵"] = "也", ["也"] = "也", ["忚"] = "也", ["髢"] = "也", ["杝"] = "也", ["肔"] = "也", ["馳"] = "也", ["阤"] = "也", ["施"] = "也", ["絁"] = "也", ["葹"] = "也", ["弛"] = "也", ["箷"] = "也", ["衪"] = "也", ["暆"] = "也", ["迆"] = "也", ["酏"] = "也", ["匜"] = "也", ["迤"] = "也", ["扡"] = "也", ["崺"] = "也", ["貤"] = "也", ["地"] = "也", ["洩"] = "曳", ["曳"] = "曳", ["拽"] = "曳", ["礏"] = "業", ["業"] = "業", ["鄴"] = "業", ["驜"] = "業", ["嶪"] = "業", ["鸈"] = "業", ["澲"] = "業", ["曄"] = "曄", ["爗"] = "曄", ["燁"] = "曄", ["曅"] = "曄", ["皣"] = "曄", ["瞱"] = "曄", ["一"] = "一", ["弌"] = "一", ["哀"] = "衣", ["依"] = "衣", ["衣"] = "衣", ["扆"] = "衣", ["庡"] = "衣", ["偯"] = "衣", ["曀"] = "壹", ["殪"] = "壹", ["豷"] = "壹", ["懿"] = "壹", ["饐"] = "壹", ["鷧"] = "壹", ["撎"] = "壹", ["亄"] = "壹", ["噎"] = "壹", ["壹"] = "壹", ["桋"] = "夷", ["荑"] = "夷", ["銕"] = "夷", ["鴺"] = "夷", ["鮧"] = "夷", ["洟"] = "夷", ["羠"] = "夷", ["咦"] = "夷", ["夷"] = "夷", ["姨"] = "夷", ["痍"] = "夷", ["峓"] = "夷", ["恞"] = "夷", ["眱"] = "夷", ["蛦"] = "夷", ["胰"] = "夷", ["跠"] = "夷", ["茝"] = "頤", ["洍"] = "頤", ["姬"] = "頤", ["宧"] = "頤", ["頤"] = "頤", ["弬"] = "頤", ["礙"] = "疑", ["儗"] = "疑", ["懝"] = "疑", ["譺"] = "疑", ["癡"] = "疑", ["疑"] = "疑", ["嶷"] = "疑", ["觺"] = "疑", ["擬"] = "疑", ["薿"] = "疑", ["凝"] = "疑", ["劜"] = "乙", ["札"] = "乙", ["扎"] = "乙", ["蚻"] = "乙", ["紮"] = "乙", ["軋"] = "乙", ["圠"] = "乙", ["穵"] = "乙", ["挖"] = "乙", ["鳦"] = "乙", ["耴"] = "乙", ["乙"] = "乙", ["肊"] = "乙", ["似"] = "以", ["姒"] = "以", ["耜"] = "以", ["佀"] = "以", ["以"] = "以", ["苡"] = "以", ["苢"] = "以", ["唉"] = "矣", ["埃"] = "矣", ["欸"] = "矣", ["娭"] = "矣", ["挨"] = "矣", ["騃"] = "矣", ["俟"] = "矣", ["竢"] = "矣", ["涘"] = "矣", ["誒"] = "矣", ["矣"] = "矣", ["艾"] = "乂", ["鴱"] = "乂", ["餀"] = "乂", ["刈"] = "乂", ["乂"] = "乂", ["戴"] = "弋", ["襶"] = "弋", ["貸"] = "弋", ["代"] = "弋", ["袋"] = "弋", ["岱"] = "弋", ["黛"] = "弋", ["玳"] = "弋", ["帒"] = "弋", ["甙"] = "弋", ["酨"] = "弋", ["試"] = "弋", ["弒"] = "弋", ["忒"] = "弋", ["貣"] = "弋", ["鴏"] = "弋", ["栻"] = "弋", ["侙"] = "弋", ["恜"] = "弋", ["式"] = "弋", ["軾"] = "弋", ["拭"] = "弋", ["鉽"] = "弋", ["烒"] = "弋", ["弋"] = "弋", ["芅"] = "弋", ["黓"] = "弋", ["隿"] = "弋", ["杙"] = "弋", ["釴"] = "弋", ["夜"] = "亦", ["鵺"] = "亦", ["迹"] = "亦", ["跡"] = "亦", ["亦"] = "亦", ["弈"] = "亦", ["奕"] = "亦", ["帟"] = "亦", ["腋"] = "亦", ["掖"] = "亦", ["焲"] = "亦", ["液"] = "亦", ["椺"] = "役", ["役"] = "役", ["疫"] = "役", ["垼"] = "役", ["炈"] = "役", ["鈠"] = "役", ["豛"] = "役", ["坄"] = "役", ["唈"] = "邑", ["浥"] = "邑", ["裛"] = "邑", ["俋"] = "邑", ["挹"] = "邑", ["邑"] = "邑", ["悒"] = "邑", ["賜"] = "易", ["儩"] = "易", ["舓"] = "易", ["易"] = "易", ["敡"] = "易", ["鬄"] = "易", ["睗"] = "易", ["晹"] = "易", ["痬"] = "易", ["蜴"] = "易", ["埸"] = "易", ["逷"] = "易", ["剔"] = "易", ["踢"] = "易", ["惕"] = "易", ["錫"] = "易", ["裼"] = "易", ["緆"] = "易", ["鷖"] = "医", ["翳"] = "医", ["嫛"] = "医", ["黳"] = "医", ["繄"] = "医", ["医"] = "医", ["嫕"] = "医", ["蘙"] = "医", ["瞖"] = "医", ["殹"] = "医", ["贀"] = "医", ["醫"] = "医", ["毉"] = "医", ["蠮"] = "医", ["洕"] = "佾", ["佾"] = "佾", ["屑"] = "佾", ["榍"] = "佾", ["糏"] = "佾", ["隘"] = "益", ["賹"] = "益", ["搤"] = "益", ["縊"] = "益", ["螠"] = "益", ["謚"] = "益", ["諡"] = "益", ["蠲"] = "益", ["溢"] = "益", ["鎰"] = "益", ["齸"] = "益", ["貖"] = "益", ["益"] = "益", ["嗌"] = "益", ["膉"] = "益", ["鷁"] = "益", ["艗"] = "益", ["褹"] = "埶", ["勢"] = "埶", ["藝"] = "埶", ["囈"] = "埶", ["埶"] = "埶", ["蓺"] = "埶", ["槸"] = "埶", ["爇"] = "埶", ["褻"] = "埶", ["暬"] = "埶", ["熱"] = "埶", ["槷"] = "埶", ["禩"] = "異", ["異"] = "異", ["潩"] = "異", ["廙"] = "異", ["趩"] = "異", ["瀷"] = "異", ["翼"] = "異", ["熼"] = "異", ["豙"] = "豙", ["藙"] = "豙", ["顡"] = "豙", ["毅"] = "豙", ["斁"] = "睪", ["籜"] = "睪", ["蘀"] = "睪", ["鐸"] = "睪", ["凙"] = "睪", ["襗"] = "睪", ["擇"] = "睪", ["澤"] = "睪", ["鸅"] = "睪", ["蠌"] = "睪", ["檡"] = "睪", ["釋"] = "睪", ["繹"] = "睪", ["睪"] = "睪", ["譯"] = "睪", ["嶧"] = "睪", ["懌"] = "睪", ["驛"] = "睪", ["醳"] = "睪", ["圛"] = "睪", ["墿"] = "睪", ["燡"] = "睪", ["噫"] = "意", ["譩"] = "意", ["醷"] = "意", ["意"] = "意", ["鷾"] = "意", ["憶"] = "意", ["億"] = "意", ["臆"] = "意", ["繶"] = "意", ["澺"] = "意", ["薏"] = "意", ["檍"] = "意", ["癔"] = "意", ["欭"] = "因", ["烟"] = "因", ["胭"] = "因", ["咽"] = "因", ["恩"] = "因", ["煾"] = "因", ["因"] = "因", ["姻"] = "因", ["茵"] = "因", ["鞇"] = "因", ["氤"] = "因", ["洇"] = "因", ["駰"] = "因", ["絪"] = "因", ["裀"] = "因", ["黫"] = "垔", ["甄"] = "垔", ["薽"] = "垔", ["籈"] = "垔", ["煙"] = "垔", ["湮"] = "垔", ["堙"] = "垔", ["禋"] = "垔", ["闉"] = "垔", ["垔"] = "垔", ["陻"] = "垔", ["諲"] = "垔", ["歅"] = "垔", ["鄄"] = "垔", ["諳"] = "音", ["腤"] = "音", ["嬜"] = "音", ["喑"] = "音", ["揞"] = "音", ["隌"] = "音", ["罯"] = "音", ["暗"] = "音", ["闇"] = "音", ["黯"] = "音", ["歆"] = "音", ["愔"] = "音", ["韾"] = "音", ["音"] = "音", ["瘖"] = "音", ["窨"] = "音", ["湆"] = "音", ["殷"] = "殷", ["慇"] = "殷", ["溵"] = "殷", ["磤"] = "殷", ["冘"] = "冘", ["抌"] = "冘", ["狖"] = "冘", ["貁"] = "冘", ["耽"] = "冘", ["眈"] = "冘", ["酖"] = "冘", ["妉"] = "冘", ["黕"] = "冘", ["衴"] = "冘", ["瓭"] = "冘", ["馾"] = "冘", ["髧"] = "冘", ["紞"] = "冘", ["鈂"] = "冘", ["沈"] = "冘", ["沉"] = "冘", ["枕"] = "冘", ["莐"] = "冘", ["霃"] = "冘", ["鴆"] = "冘", ["訦"] = "冘", ["忱"] = "冘", ["邥"] = "冘", ["魫"] = "冘", ["寅"] = "寅", ["蔩"] = "寅", ["鏔"] = "寅", ["演"] = "寅", ["縯"] = "寅", ["戭"] = "寅", ["夤"] = "寅", ["螾"] = "寅", ["濥"] = "寅", ["瞚"] = "寅", ["淫"] = "淫", ["霪"] = "淫", ["婬"] = "淫", ["芛"] = "尹", ["伊"] = "尹", ["咿"] = "尹", ["蛜"] = "尹", ["笋"] = "尹", ["尹"] = "尹", ["紖"] = "引", ["矧"] = "引", ["訠"] = "引", ["弞"] = "引", ["引"] = "引", ["蚓"] = "引", ["鈏"] = "引", ["靷"] = "引", ["隱"] = "隱", ["櫽"] = "隱", ["嶾"] = "隱", ["癮"] = "隱", ["懚"] = "隱", ["檼"] = "隱", ["穩"] = "隱", ["印"] = "印", ["鮣"] = "印", ["胤"] = "胤", ["酳"] = "胤", ["瀴"] = "賏", ["甖"] = "賏", ["鸚"] = "賏", ["櫻"] = "賏", ["嚶"] = "賏", ["罌"] = "賏", ["鸎"] = "賏", ["譻"] = "賏", ["賏"] = "賏", ["嬰"] = "賏", ["瓔"] = "賏", ["纓"] = "賏", ["攖"] = "賏", ["蘡"] = "賏", ["癭"] = "賏", ["廮"] = "賏", ["巊"] = "賏", ["應"] = "鷹", ["鷹"] = "鷹", ["膺"] = "鷹", ["譍"] = "鷹", ["噟"] = "鷹", ["盈"] = "盈", ["楹"] = "盈", ["鶯"] = "熒", ["罃"] = "熒", ["嫈"] = "熒", ["褮"] = "熒", ["覮"] = "熒", ["謍"] = "熒", ["䁝"] = "熒", ["嶸"] = "熒", ["嵤"] = "熒", ["榮"] = "熒", ["瑩"] = "熒", ["蠑"] = "熒", ["禜"] = "熒", ["醟"] = "熒", ["檾"] = "熒", ["煢"] = "熒", ["焭"] = "熒", ["縈"] = "熒", ["營"] = "熒", ["鎣"] = "熒", ["塋"] = "熒", ["濴"] = "熒", ["熒"] = "熒", ["螢"] = "熒", ["滎"] = "熒", ["濙"] = "熒", ["瀅"] = "熒", ["嬴"] = "贏", ["瀛"] = "贏", ["籝"] = "贏", ["贏"] = "贏", ["攍"] = "贏", ["郺"] = "邕", ["齆"] = "邕", ["甕"] = "邕", ["罋"] = "邕", ["雍"] = "邕", ["邕"] = "邕", ["嗈"] = "邕", ["灉"] = "邕", ["癰"] = "邕", ["廱"] = "邕", ["雝"] = "邕", ["壅"] = "邕", ["饔"] = "邕", ["噰"] = "邕", ["澭"] = "邕", ["擁"] = "邕", ["臃"] = "邕", ["永"] = "永", ["栐"] = "永", ["泳"] = "永", ["詠"] = "永", ["咏"] = "永", ["通"] = "用", ["俑"] = "用", ["蓪"] = "用", ["桶"] = "用", ["捅"] = "用", ["痛"] = "用", ["筩"] = "用", ["誦"] = "用", ["傭"] = "用", ["慵"] = "用", ["鱅"] = "用", ["滽"] = "用", ["墉"] = "用", ["鏞"] = "用", ["鄘"] = "用", ["槦"] = "用", ["銿"] = "用", ["甬"] = "用", ["勇"] = "用", ["涌"] = "用", ["踊"] = "用", ["蛹"] = "用", ["恿"] = "用", ["慂"] = "用", ["悀"] = "用", ["埇"] = "用", ["踴"] = "用", ["庸"] = "用", ["用"] = "用", ["佣"] = "用", ["絛"] = "攸", ["窱"] = "攸", ["蓧"] = "攸", ["條"] = "攸", ["鋚"] = "攸", ["鞗"] = "攸", ["樤"] = "攸", ["鰷"] = "攸", ["莜"] = "攸", ["翛"] = "攸", ["筱"] = "攸", ["篠"] = "攸", ["修"] = "攸", ["脩"] = "攸", ["樇"] = "攸", ["滫"] = "攸", ["悠"] = "攸", ["攸"] = "攸", ["浟"] = "攸", ["蓨"] = "攸", ["滌"] = "攸", ["儵"] = "攸", ["倐"] = "攸", ["倏"] = "攸", ["虪"] = "攸", ["鏖"] = "麀", ["𤏶"] = "麀", ["麀"] = "麀", ["憂"] = "憂", ["優"] = "憂", ["瀀"] = "憂", ["櫌"] = "憂", ["鄾"] = "憂", ["嚘"] = "憂", ["耰"] = "憂", ["獶"] = "憂", ["纋"] = "憂", ["懮"] = "憂", ["尤"] = "尤", ["疣"] = "尤", ["肬"] = "尤", ["沋"] = "尤", ["訧"] = "尤", ["忧"] = "尤", ["蚘"] = "尤", ["袖"] = "由", ["岫"] = "由", ["牰"] = "由", ["抽"] = "由", ["妯"] = "由", ["紬"] = "由", ["怞"] = "由", ["鮋"] = "由", ["菗"] = "由", ["宙"] = "由", ["胄"] = "由", ["冑"] = "由", ["伷"] = "由", ["駎"] = "由", ["油"] = "由", ["由"] = "由", ["蚰"] = "由", ["秞"] = "由", ["邮"] = "由", ["釉"] = "由", ["柚"] = "由", ["鼬"] = "由", ["苖"] = "由", ["笛"] = "由", ["迪"] = "由", ["頔"] = "由", ["軸"] = "由", ["舳"] = "由", ["游"] = "斿", ["遊"] = "斿", ["蝣"] = "斿", ["斿"] = "斿", ["楢"] = "酉", ["逎"] = "酉", ["遒"] = "酉", ["蝤"] = "酉", ["揂"] = "酉", ["酒"] = "酉", ["媨"] = "酉", ["鞧"] = "酉", ["緧"] = "酉", ["趥"] = "酉", ["酋"] = "酉", ["崷"] = "酉", ["鰌"] = "酉", ["煪"] = "酉", ["醜"] = "酉", ["猶"] = "酉", ["猷"] = "酉", ["輶"] = "酉", ["偤"] = "酉", ["莤"] = "酉", ["蕕"] = "酉", ["庮"] = "酉", ["槱"] = "酉", ["梄"] = "酉", ["丣"] = "酉", ["酉"] = "酉", ["郵"] = "郵", ["腄"] = "郵", ["絠"] = "又", ["醢"] = "又", ["珛"] = "又", ["栯"] = "又", ["有"] = "又", ["友"] = "又", ["右"] = "又", ["宥"] = "又", ["囿"] = "又", ["侑"] = "又", ["酭"] = "又", ["姷"] = "又", ["又"] = "又", ["佑"] = "又", ["祐"] = "又", ["賄"] = "又", ["蛕"] = "又", ["烠"] = "又", ["倄"] = "又", ["鮪"] = "又", ["洧"] = "又", ["痏"] = "又", ["郁"] = "又", ["戫"] = "又", ["哊"] = "又", ["黝"] = "幼", ["坳"] = "幼", ["軪"] = "幼", ["眑"] = "幼", ["拗"] = "幼", ["鴢"] = "幼", ["靿"] = "幼", ["狕"] = "幼", ["袎"] = "幼", ["怮"] = "幼", ["窈"] = "幼", ["苭"] = "幼", ["泑"] = "幼", ["呦"] = "幼", ["蚴"] = "幼", ["幼"] = "幼", ["侉"] = "于", ["夸"] = "于", ["姱"] = "于", ["胯"] = "于", ["跨"] = "于", ["誇"] = "于", ["垮"] = "于", ["銙"] = "于", ["骻"] = "于", ["咵"] = "于", ["釫"] = "于", ["摦"] = "于", ["鮬"] = "于", ["嶀"] = "于", ["扝"] = "于", ["刳"] = "于", ["郀"] = "于", ["挎"] = "于", ["袴"] = "于", ["絝"] = "于", ["褲"] = "于", ["恗"] = "于", ["洿"] = "于", ["瓠"] = "于", ["鄠"] = "于", ["污"] = "于", ["杇"] = "于", ["圬"] = "于", ["鴮"] = "于", ["盓"] = "于", ["汙"] = "于", ["樗"] = "于", ["摴"] = "于", ["荂"] = "于", ["雩"] = "于", ["吁"] = "于", ["盱"] = "于", ["訏"] = "于", ["扜"] = "于", ["旴"] = "于", ["冔"] = "于", ["紆"] = "于", ["陓"] = "于", ["迂"] = "于", ["虶"] = "于", ["于"] = "于", ["盂"] = "于", ["竽"] = "于", ["邘"] = "于", ["玗"] = "于", ["芋"] = "于", ["杅"] = "于", ["釪"] = "于", ["骬"] = "于", ["謣"] = "于", ["宇"] = "于", ["野"] = "予", ["壄"] = "予", ["序"] = "予", ["抒"] = "予", ["芧"] = "予", ["杼"] = "予", ["墅"] = "予", ["舒"] = "予", ["紓"] = "予", ["妤"] = "予", ["伃"] = "予", ["予"] = "予", ["預"] = "予", ["忬"] = "予", ["豫"] = "予", ["蕷"] = "予", ["澦"] = "予", ["斜"] = "余", ["茶"] = "余", ["荼"] = "余", ["梌"] = "余", ["搽"] = "余", ["塗"] = "余", ["佘"] = "余", ["賒"] = "余", ["畬"] = "余", ["舍"] = "余", ["捨"] = "余", ["騇"] = "余", ["涻"] = "余", ["稌"] = "余", ["悇"] = "余", ["庩"] = "余", ["捈"] = "余", ["途"] = "余", ["酴"] = "余", ["駼"] = "余", ["鵌"] = "余", ["涂"] = "余", ["嵞"] = "余", ["峹"] = "余", ["筡"] = "余", ["蒤"] = "余", ["徐"] = "余", ["俆"] = "余", ["敘"] = "余", ["漵"] = "余", ["除"] = "余", ["篨"] = "余", ["滁"] = "余", ["蒢"] = "余", ["蜍"] = "余", ["鵨"] = "余", ["瑹"] = "余", ["余"] = "余", ["餘"] = "余", ["艅"] = "余", ["狳"] = "余", ["雓"] = "余", ["悆"] = "余", ["閼"] = "於", ["菸"] = "於", ["於"] = "於", ["淤"] = "於", ["箊"] = "於", ["唹"] = "於", ["扵"] = "於", ["瘀"] = "於", ["棜"] = "於", ["萸"] = "臾", ["臾"] = "臾", ["腴"] = "臾", ["諛"] = "臾", ["楰"] = "臾", ["庾"] = "臾", ["斞"] = "臾", ["褕"] = "俞", ["偷"] = "俞", ["媮"] = "俞", ["鍮"] = "俞", ["緰"] = "俞", ["牏"] = "俞", ["揄"] = "俞", ["窬"] = "俞", ["歈"] = "俞", ["俞"] = "俞", ["隃"] = "俞", ["毹"] = "俞", ["輸"] = "俞", ["鄃"] = "俞", ["腧"] = "俞", ["逾"] = "俞", ["榆"] = "俞", ["愉"] = "俞", ["渝"] = "俞", ["瑜"] = "俞", ["蕍"] = "俞", ["覦"] = "俞", ["蝓"] = "俞", ["踰"] = "俞", ["崳"] = "俞", ["羭"] = "俞", ["堬"] = "俞", ["瘉"] = "俞", ["萮"] = "俞", ["騟"] = "俞", ["愈"] = "俞", ["貐"] = "俞", ["喻"] = "俞", ["諭"] = "俞", ["攑"] = "舁", ["藇"] = "舁", ["嶼"] = "舁", ["鱮"] = "舁", ["舉"] = "舁", ["櫸"] = "舁", ["舁"] = "舁", ["與"] = "舁", ["輿"] = "舁", ["旟"] = "舁", ["璵"] = "舁", ["歟"] = "舁", ["譽"] = "舁", ["嬩"] = "舁", ["擧"] = "舁", ["鸒"] = "舁", ["礜"] = "舁", ["穥"] = "舁", ["齵"] = "禺", ["偶"] = "禺", ["耦"] = "禺", ["藕"] = "禺", ["髃"] = "禺", ["蕅"] = "禺", ["愚"] = "禺", ["隅"] = "禺", ["禺"] = "禺", ["湡"] = "禺", ["堣"] = "禺", ["嵎"] = "禺", ["鰅"] = "禺", ["鍝"] = "禺", ["遇"] = "禺", ["寓"] = "禺", ["庽"] = "禺", ["媀"] = "禺", ["喁"] = "禺", ["顒"] = "禺", ["蘇"] = "魚", ["穌"] = "魚", ["魚"] = "魚", ["漁"] = "魚", ["䱷"] = "魚", ["詡"] = "羽", ["栩"] = "羽", ["珝"] = "羽", ["祤"] = "羽", ["羽"] = "羽", ["頨"] = "羽", ["踽"] = "禹", ["萭"] = "禹", ["聥"] = "禹", ["楀"] = "禹", ["齲"] = "禹", ["禹"] = "禹", ["瑀"] = "禹", ["鄅"] = "禹", ["珏"] = "玉", ["砡"] = "玉", ["匤"] = "玉", ["玉"] = "玉", ["鳿"] = "玉", ["頊"] = "玉", ["筆"] = "聿", ["潷"] = "聿", ["硉"] = "聿", ["律"] = "聿", ["葎"] = "聿", ["聿"] = "聿", ["銉"] = "聿", ["育"] = "育", ["毓"] = "育", ["棛"] = "育", ["錥"] = "育", ["焴"] = "育", ["淯"] = "育", ["蜟"] = "育", ["堉"] = "育", ["逳"] = "育", ["蘛"] = "育", ["煜"] = "昱", ["翊"] = "昱", ["翌"] = "昱", ["昱"] = "昱", ["喅"] = "昱", ["瞲"] = "矞", ["璚"] = "矞", ["劀"] = "矞", ["鱊"] = "矞", ["譎"] = "矞", ["潏"] = "矞", ["鐍"] = "矞", ["憰"] = "矞", ["噊"] = "矞", ["驈"] = "矞", ["橘"] = "矞", ["繘"] = "矞", ["獝"] = "矞", ["燏"] = "矞", ["遹"] = "矞", ["鷸"] = "矞", ["矞"] = "矞", ["霱"] = "矞", ["嶽"] = "獄", ["鸑"] = "獄", ["哭"] = "獄", ["獄"] = "獄", ["竇"] = "𧶠", ["續"] = "𧶠", ["覿"] = "𧶠", ["黷"] = "𧶠", ["讟"] = "𧶠", ["殰"] = "𧶠", ["讀"] = "𧶠", ["櫝"] = "𧶠", ["牘"] = "𧶠", ["儥"] = "𧶠", ["贕"] = "𧶠", ["皾"] = "𧶠", ["瓄"] = "𧶠", ["瀆"] = "𧶠", ["豄"] = "𧶠", ["韇"] = "𧶠", ["嬻"] = "𧶠", ["犢"] = "𧶠", ["匵"] = "𧶠", ["藚"] = "𧶠", ["襩"] = "𧶠", ["贖"] = "𧶠", ["𧶠"] = "𧶠", ["鬱"] = "鬱", ["欝"] = "鬱", ["灪"] = "鬱", ["爩"] = "鬱", ["絹"] = "肙", ["狷"] = "肙", ["蜎"] = "肙", ["弲"] = "肙", ["娟"] = "肙", ["悁"] = "肙", ["捐"] = "肙", ["涓"] = "肙", ["鵑"] = "肙", ["睊"] = "肙", ["焆"] = "肙", ["鞙"] = "肙", ["埍"] = "肙", ["罥"] = "肙", ["羂"] = "肙", ["瓹"] = "肙", ["梋"] = "肙", ["鋗"] = "肙", ["駽"] = "肙", ["琄"] = "肙", ["剈"] = "肙", ["肙"] = "肙", ["冤"] = "冤", ["蒬"] = "冤", ["婣"] = "淵", ["鼘"] = "淵", ["囦"] = "淵", ["淵"] = "淵", ["裫"] = "淵", ["奫"] = "淵", ["冠"] = "元", ["莞"] = "元", ["脘"] = "元", ["筦"] = "元", ["梡"] = "元", ["岏"] = "元", ["刓"] = "元", ["园"] = "元", ["忨"] = "元", ["蚖"] = "元", ["黿"] = "元", ["抏"] = "元", ["玩"] = "元", ["貦"] = "元", ["翫"] = "元", ["妧"] = "元", ["完"] = "元", ["捖"] = "元", ["垸"] = "元", ["綄"] = "元", ["院"] = "元", ["皖"] = "元", ["晥"] = "元", ["浣"] = "元", ["頑"] = "元", ["睆"] = "元", ["鯇"] = "元", ["元"] = "元", ["沅"] = "元", ["芫"] = "元", ["杬"] = "元", ["邧"] = "元", ["阮"] = "元", ["俒"] = "元", ["暖"] = "爰", ["煖"] = "爰", ["喛"] = "爰", ["緩"] = "爰", ["鰀"] = "爰", ["嵈"] = "爰", ["鍰"] = "爰", ["湲"] = "爰", ["媛"] = "爰", ["瑗"] = "爰", ["援"] = "爰", ["褑"] = "爰", ["諼"] = "爰", ["愋"] = "爰", ["楥"] = "爰", ["爰"] = "爰", ["鶢"] = "爰", ["蝯"] = "爰", ["猨"] = "爰", ["羱"] = "原", ["豲"] = "原", ["謜"] = "原", ["縓"] = "原", ["原"] = "原", ["源"] = "原", ["厵"] = "原", ["嫄"] = "原", ["騵"] = "原", ["榞"] = "原", ["獂"] = "原", ["蒝"] = "原", ["願"] = "原", ["傆"] = "原", ["愿"] = "原", ["員"] = "員", ["圓"] = "員", ["塤"] = "員", ["損"] = "員", ["縜"] = "員", ["隕"] = "員", ["殞"] = "員", ["溳"] = "員", ["磒"] = "員", ["霣"] = "員", ["愪"] = "員", ["勛"] = "員", ["鄖"] = "員", ["篔"] = "員", ["貟"] = "員", ["韻"] = "員", ["薳"] = "袁", ["袁"] = "袁", ["園"] = "袁", ["轅"] = "袁", ["猿"] = "袁", ["榬"] = "袁", ["溒"] = "袁", ["遠"] = "袁", ["癏"] = "睘", ["擐"] = "睘", ["還"] = "睘", ["環"] = "睘", ["鬟"] = "睘", ["寰"] = "睘", ["闤"] = "睘", ["糫"] = "睘", ["圜"] = "睘", ["鐶"] = "睘", ["轘"] = "睘", ["澴"] = "睘", ["繯"] = "睘", ["檈"] = "睘", ["儇"] = "睘", ["翾"] = "睘", ["蠉"] = "睘", ["嬛"] = "睘", ["譞"] = "睘", ["懁"] = "睘", ["獧"] = "睘", ["噮"] = "睘", ["彋"] = "睘", ["睘"] = "睘", ["涴"] = "夗", ["埦"] = "夗", ["豌"] = "夗", ["剜"] = "夗", ["眢"] = "夗", ["蜿"] = "夗", ["帵"] = "夗", ["碗"] = "夗", ["椀"] = "夗", ["盌"] = "夗", ["腕"] = "夗", ["惋"] = "夗", ["捥"] = "夗", ["睕"] = "夗", ["琬"] = "夗", ["鴛"] = "夗", ["鵷"] = "夗", ["惌"] = "夗", ["宛"] = "夗", ["怨"] = "夗", ["葾"] = "夗", ["夗"] = "夗", ["婉"] = "夗", ["菀"] = "夗", ["苑"] = "夗", ["踠"] = "夗", ["畹"] = "夗", ["倇"] = "夗", ["晼"] = "夗", ["黦"] = "夗", ["焥"] = "夗", ["曰"] = "曰", ["汩"] = "曰", ["𦚢"] = "𦚢", ["𩨭"] = "𦚢", ["刖"] = "月", ["枂"] = "月", ["月"] = "月", ["跀"] = "月", ["抈"] = "月", ["鈅"] = "月", ["玥"] = "月", ["蚏"] = "月", ["泧"] = "戉", ["眓"] = "戉", ["越"] = "戉", ["狘"] = "戉", ["戉"] = "戉", ["鉞"] = "戉", ["樾"] = "戉", ["怴"] = "戉", ["岳"] = "岳", ["捳"] = "岳", ["讑"] = "龠", ["籲"] = "龠", ["爚"] = "龠", ["禴"] = "龠", ["蘥"] = "龠", ["鑰"] = "龠", ["瀹"] = "龠", ["龠"] = "龠", ["籥"] = "龠", ["鸙"] = "龠", ["魂"] = "云", ["沄"] = "云", ["忶"] = "云", ["囩"] = "云", ["夽"] = "云", ["雲"] = "云", ["芸"] = "云", ["耘"] = "云", ["妘"] = "云", ["紜"] = "云", ["云"] = "云", ["耺"] = "云", ["蕓"] = "云", ["澐"] = "云", ["橒"] = "云", ["抎"] = "云", ["枃"] = "匀", ["笉"] = "匀", ["郇"] = "匀", ["絢"] = "匀", ["眴"] = "匀", ["盷"] = "匀", ["訇"] = "匀", ["迿"] = "匀", ["姰"] = "匀", ["畇"] = "匀", ["荀"] = "匀", ["詢"] = "匀", ["洵"] = "匀", ["恂"] = "匀", ["峋"] = "匀", ["珣"] = "匀", ["槆"] = "匀", ["筍"] = "匀", ["箰"] = "匀", ["旬"] = "匀", ["殉"] = "匀", ["徇"] = "匀", ["侚"] = "匀", ["均"] = "匀", ["鈞"] = "匀", ["袀"] = "匀", ["汮"] = "匀", ["呁"] = "匀", ["筠"] = "匀", ["荺"] = "匀", ["匀"] = "匀", ["韵"] = "匀", ["輷"] = "匀", ["揈"] = "匀", ["鍧"] = "匀", ["渹"] = "匀", ["赹"] = "匀", ["憌"] = "匀", ["惸"] = "匀", ["咰"] = "匀", ["唆"] = "允", ["梭"] = "允", ["葰"] = "允", ["誜"] = "允", ["朘"] = "允", ["捘"] = "允", ["荾"] = "允", ["酸"] = "允", ["狻"] = "允", ["痠"] = "允", ["鋑"] = "允", ["脧"] = "允", ["悛"] = "允", ["吮"] = "允", ["萒"] = "允", ["沇"] = "允", ["抁"] = "允", ["馻"] = "允", ["兖"] = "允", ["渷"] = "允", ["兗"] = "允", ["焌"] = "允", ["允"] = "允", ["狁"] = "允", ["玧"] = "允", ["俊"] = "允", ["晙"] = "允", ["餕"] = "允", ["畯"] = "允", ["駿"] = "允", ["竣"] = "允", ["皴"] = "允", ["逡"] = "允", ["踆"] = "允", ["夋"] = "允", ["埈"] = "允", ["陖"] = "允", ["鵕"] = "允", ["浚"] = "允", ["峻"] = "允", ["帀"] = "帀", ["沞"] = "帀", ["魳"] = "帀", ["迊"] = "帀", ["匝"] = "帀", ["咂"] = "帀", ["韴"] = "帀", ["砸"] = "帀", ["灾"] = "災", ["災"] = "災", ["𢦏"] = "𢦏", ["栽"] = "𢦏", ["哉"] = "𢦏", ["烖"] = "𢦏", ["載"] = "𢦏", ["渽"] = "𢦏", ["睵"] = "𢦏", ["溨"] = "𢦏", ["裁"] = "𢦏", ["酨"] = "𢦏", ["蛓"] = "𢦏", ["胾"] = "𢦏", ["宰"] = "宰", ["縡"] = "宰", ["梓"] = "宰", ["滓"] = "宰", ["再"] = "再", ["洅"] = "再", ["贊"] = "贊", ["趲"] = "贊", ["讚"] = "贊", ["酇"] = "贊", ["饡"] = "贊", ["濽"] = "贊", ["襸"] = "贊", ["攢"] = "贊", ["瓚"] = "贊", ["禶"] = "贊", ["穳"] = "贊", ["囋"] = "贊", ["鑽"] = "贊", ["劗"] = "贊", ["纘"] = "贊", ["儧"] = "贊", ["鄼"] = "贊", ["欑"] = "贊", ["籫"] = "贊", ["巑"] = "贊", ["攅"] = "贊", ["髒"] = "葬", ["葬"] = "葬", ["早"] = "早", ["草"] = "早", ["愺"] = "早", ["騲"] = "早", ["皁"] = "早", ["皂"] = "早", ["蚤"] = "蚤", ["慅"] = "蚤", ["騷"] = "蚤", ["搔"] = "蚤", ["鰠"] = "蚤", ["溞"] = "蚤", ["颾"] = "蚤", ["瘙"] = "蚤", ["瑵"] = "蚤", ["糔"] = "蚤", ["鼜"] = "蚤", ["藻"] = "喿", ["澡"] = "喿", ["璪"] = "喿", ["繰"] = "喿", ["躁"] = "喿", ["趮"] = "喿", ["操"] = "喿", ["幧"] = "喿", ["懆"] = "喿", ["鄵"] = "喿", ["鐰"] = "喿", ["臊"] = "喿", ["鱢"] = "喿", ["燥"] = "喿", ["噪"] = "喿", ["髞"] = "喿", ["喿"] = "喿", ["譟"] = "喿", ["劋"] = "喿", ["橾"] = "喿", ["廁"] = "則", ["則"] = "則", ["賊"] = "則", ["鰂"] = "則", ["鱡"] = "則", ["蠈"] = "則", ["側"] = "則", ["萴"] = "則", ["測"] = "則", ["惻"] = "則", ["崱"] = "則", ["仄"] = "仄", ["昃"] = "仄", ["潧"] = "曾", ["繒"] = "曾", ["增"] = "曾", ["憎"] = "曾", ["磳"] = "曾", ["曾"] = "曾", ["矰"] = "曾", ["罾"] = "曾", ["熷"] = "曾", ["竲"] = "曾", ["橧"] = "曾", ["譄"] = "曾", ["蹭"] = "曾", ["層"] = "曾", ["贈"] = "曾", ["僧"] = "曾", ["鬙"] = "曾", ["甑"] = "曾", ["鄫"] = "曾", ["驓"] = "曾", ["嶒"] = "曾", ["噌"] = "曾", ["鏳"] = "曾", ["作"] = "乍", ["鲊"] = "乍", ["痄"] = "乍", ["厏"] = "乍", ["詐"] = "乍", ["咋"] = "乍", ["笮"] = "乍", ["榨"] = "乍", ["炸"] = "乍", ["乍"] = "乍", ["拃"] = "乍", ["酢"] = "乍", ["祚"] = "乍", ["胙"] = "乍", ["阼"] = "乍", ["飵"] = "乍", ["秨"] = "乍", ["迮"] = "乍", ["柞"] = "乍", ["昨"] = "乍", ["怍"] = "乍", ["砟"] = "乍", ["莋"] = "乍", ["岝"] = "乍", ["鈼"] = "乍", ["筰"] = "乍", ["葃"] = "乍", ["舴"] = "乍", ["窄"] = "乍", ["蚱"] = "乍", ["齚"] = "乍", ["泎"] = "乍", ["頕"] = "占", ["煔"] = "占", ["炶"] = "占", ["詀"] = "占", ["站"] = "占", ["檆"] = "占", ["黏"] = "占", ["粘"] = "占", ["枮"] = "占", ["霑"] = "占", ["沾"] = "占", ["覘"] = "占", ["鉆"] = "占", ["占"] = "占", ["颭"] = "占", ["佔"] = "占", ["苫"] = "占", ["痁"] = "占", ["蛅"] = "占", ["阽"] = "占", ["敁"] = "占", ["掂"] = "占", ["點"] = "占", ["玷"] = "占", ["店"] = "占", ["坫"] = "占", ["黇"] = "占", ["扂"] = "占", ["拈"] = "占", ["鮎"] = "占", ["砧"] = "占", ["笘"] = "占", ["跕"] = "占", ["貼"] = "占", ["帖"] = "占", ["怗"] = "占", ["呫"] = "占", ["甔"] = "詹", ["擔"] = "詹", ["儋"] = "詹", ["聸"] = "詹", ["膽"] = "詹", ["黵"] = "詹", ["澹"] = "詹", ["憺"] = "詹", ["瞻"] = "詹", ["詹"] = "詹", ["蟾"] = "詹", ["噡"] = "詹", ["譫"] = "詹", ["幨"] = "詹", ["襜"] = "詹", ["韂"] = "詹", ["贍"] = "詹", ["檐"] = "詹", ["簷"] = "詹", ["舚"] = "詹", ["碾"] = "展", ["輾"] = "展", ["展"] = "展", ["搌"] = "展", ["慚"] = "斬", ["慙"] = "斬", ["鏨"] = "斬", ["槧"] = "斬", ["暫"] = "斬", ["蹔"] = "斬", ["斬"] = "斬", ["獑"] = "斬", ["嶃"] = "斬", ["覱"] = "斬", ["摲"] = "斬", ["漸"] = "斬", ["塹"] = "斬", ["壍"] = "斬", ["嬱"] = "斬", ["螹"] = "斬", ["蔪"] = "斬", ["章"] = "章", ["樟"] = "章", ["彰"] = "章", ["漳"] = "章", ["鄣"] = "章", ["璋"] = "章", ["嫜"] = "章", ["獐"] = "章", ["慞"] = "章", ["墇"] = "章", ["障"] = "章", ["麞"] = "章", ["蔁"] = "章", ["暲"] = "章", ["嶂"] = "章", ["瘴"] = "章", ["丈"] = "丈", ["杖"] = "丈", ["仗"] = "丈", ["挑"] = "兆", ["洮"] = "兆", ["桃"] = "兆", ["逃"] = "兆", ["咷"] = "兆", ["鼗"] = "兆", ["鞉"] = "兆", ["駣"] = "兆", ["𣂁"] = "兆", ["脁"] = "兆", ["晁"] = "兆", ["兆"] = "兆", ["旐"] = "兆", ["狣"] = "兆", ["鮡"] = "兆", ["垗"] = "兆", ["姚"] = "兆", ["珧"] = "兆", ["銚"] = "兆", ["恌"] = "兆", ["烑"] = "兆", ["餆"] = "兆", ["筄"] = "兆", ["艞"] = "兆", ["佻"] = "兆", ["祧"] = "兆", ["朓"] = "兆", ["庣"] = "兆", ["趒"] = "兆", ["聎"] = "兆", ["眺"] = "兆", ["覜"] = "兆", ["頫"] = "兆", ["絩"] = "兆", ["跳"] = "兆", ["窕"] = "兆", ["誂"] = "兆", ["肁"] = "肁", ["肇"] = "肁", ["咤"] = "乇", ["吒"] = "乇", ["灹"] = "乇", ["矺"] = "乇", ["奼"] = "乇", ["侘"] = "乇", ["詫"] = "乇", ["秅"] = "乇", ["秺"] = "乇", ["亳"] = "乇", ["托"] = "乇", ["託"] = "乇", ["魠"] = "乇", ["馲"] = "乇", ["侂"] = "乇", ["飥"] = "乇", ["仛"] = "乇", ["虴"] = "乇", ["杔"] = "乇", ["乇"] = "乇", ["宅"] = "乇", ["厇"] = "乇", ["晢"] = "折", ["狾"] = "折", ["誓"] = "折", ["逝"] = "折", ["銴"] = "折", ["折"] = "折", ["娎"] = "折", ["哳"] = "折", ["踅"] = "折", ["哲"] = "折", ["蜇"] = "折", ["悊"] = "折", ["嚞"] = "折", ["喆"] = "折", ["硩"] = "折", ["浙"] = "折", ["晣"] = "折", ["焎"] = "折", ["觰"] = "者", ["諸"] = "者", ["者"] = "者", ["堵"] = "者", ["赭"] = "者", ["撦"] = "者", ["扯"] = "者", ["闍"] = "者", ["奢"] = "者", ["鍺"] = "者", ["都"] = "者", ["醏"] = "者", ["覩"] = "者", ["睹"] = "者", ["暏"] = "者", ["賭"] = "者", ["帾"] = "者", ["楮"] = "者", ["屠"] = "者", ["瘏"] = "者", ["廜"] = "者", ["鷵"] = "者", ["緒"] = "者", ["豬"] = "者", ["猪"] = "者", ["瀦"] = "者", ["藸"] = "者", ["櫫"] = "者", ["褚"] = "者", ["著"] = "者", ["箸"] = "者", ["儲"] = "者", ["躇"] = "者", ["櫧"] = "者", ["藷"] = "者", ["蠩"] = "者", ["煮"] = "者", ["渚"] = "者", ["煑"] = "者", ["陼"] = "者", ["翥"] = "者", ["署"] = "者", ["薯"] = "者", ["曙"] = "者", ["書"] = "者", ["暑"] = "者", ["鐯"] = "者", ["擆"] = "者", ["櫡"] = "者", ["踂"] = "耴", ["輒"] = "耴", ["耴"] = "耴", ["鮿"] = "耴", ["偵"] = "貞", ["幀"] = "貞", ["湞"] = "貞", ["貞"] = "貞", ["楨"] = "貞", ["禎"] = "貞", ["赬"] = "貞", ["遉"] = "貞", ["寘"] = "真", ["䡩"] = "真", ["黰"] = "真", ["顛"] = "真", ["滇"] = "真", ["齻"] = "真", ["槙"] = "真", ["瘨"] = "真", ["傎"] = "真", ["蹎"] = "真", ["厧"] = "真", ["巔"] = "真", ["癲"] = "真", ["瑱"] = "真", ["填"] = "真", ["窴"] = "真", ["闐"] = "真", ["磌"] = "真", ["鷏"] = "真", ["嗔"] = "真", ["搷"] = "真", ["鎮"] = "真", ["縝"] = "真", ["真"] = "真", ["禛"] = "真", ["稹"] = "真", ["蒖"] = "真", ["鬒"] = "真", ["瞋"] = "真", ["謓"] = "真", ["慎"] = "真", ["沴"] = "疹", ["趁"] = "疹", ["紾"] = "疹", ["跈"] = "疹", ["殄"] = "疹", ["抮"] = "疹", ["駗"] = "疹", ["珍"] = "疹", ["診"] = "疹", ["畛"] = "疹", ["疹"] = "疹", ["軫"] = "疹", ["胗"] = "疹", ["袗"] = "疹", ["眕"] = "疹", ["飻"] = "疹", ["餮"] = "疹", ["黱"] = "朕", ["朕"] = "朕", ["鰧"] = "朕", ["螣"] = "朕", ["栚"] = "朕", ["眹"] = "朕", ["騰"] = "朕", ["滕"] = "朕", ["縢"] = "朕", ["儯"] = "朕", ["幐"] = "朕", ["藤"] = "朕", ["謄"] = "朕", ["膡"] = "朕", ["籐"] = "朕", ["勝"] = "朕", ["蕂"] = "朕", ["榺"] = "朕", ["塍"] = "朕", ["媵"] = "朕", ["賸"] = "朕", ["琤"] = "爭", ["崢"] = "爭", ["鬇"] = "爭", ["爭"] = "爭", ["箏"] = "爭", ["猙"] = "爭", ["埩"] = "爭", ["諍"] = "爭", ["凈"] = "爭", ["錚"] = "爭", ["棦"] = "爭", ["竫"] = "爭", ["睜"] = "爭", ["淨"] = "爭", ["徵"] = "徵", ["癥"] = "徵", ["澂"] = "徵", ["懲"] = "徵", ["綻"] = "正", ["淀"] = "正", ["靛"] = "正", ["症"] = "正", ["竀"] = "正", ["征"] = "正", ["怔"] = "正", ["正"] = "正", ["鉦"] = "正", ["鴊"] = "正", ["眐"] = "正", ["佂"] = "正", ["整"] = "正", ["政"] = "正", ["証"] = "正", ["定"] = "正", ["顁"] = "正", ["錠"] = "正", ["掟"] = "正", ["之"] = "之", ["芝"] = "之", ["志"] = "之", ["痣"] = "之", ["娡"] = "之", ["誌"] = "之", ["蚩"] = "之", ["妛"] = "之", ["嗤"] = "之", ["媸"] = "之", ["旹"] = "之", ["滍"] = "之", ["支"] = "支", ["枝"] = "支", ["肢"] = "支", ["汥"] = "支", ["衼"] = "支", ["馶"] = "支", ["鳷"] = "支", ["忮"] = "支", ["伎"] = "支", ["豉"] = "支", ["翅"] = "支", ["翄"] = "支", ["妓"] = "支", ["庋"] = "支", ["跂"] = "支", ["蚑"] = "支", ["吱"] = "支", ["岐"] = "支", ["歧"] = "支", ["鬾"] = "支", ["技"] = "支", ["芰"] = "支", ["攱"] = "支", ["庪"] = "支", ["頍"] = "支", ["屐"] = "支", ["巵"] = "巵", ["梔"] = "巵", ["識"] = "戠", ["幟"] = "戠", ["織"] = "戠", ["熾"] = "戠", ["樴"] = "戠", ["職"] = "戠", ["軄"] = "戠", ["戠"] = "戠", ["膱"] = "戠", ["蟙"] = "戠", ["置"] = "直", ["值"] = "直", ["植"] = "直", ["埴"] = "直", ["惪"] = "直", ["德"] = "直", ["稙"] = "直", ["淔"] = "直", ["直"] = "直", ["犆"] = "直", ["殖"] = "直", ["騺"] = "執", ["摯"] = "執", ["贄"] = "執", ["鷙"] = "執", ["墊"] = "執", ["慹"] = "執", ["謺"] = "執", ["褺"] = "執", ["蓻"] = "執", ["縶"] = "執", ["漐"] = "執", ["蟄"] = "執", ["執"] = "執", ["瓡"] = "執", ["祉"] = "止", ["址"] = "止", ["止"] = "止", ["趾"] = "止", ["芷"] = "止", ["沚"] = "止", ["阯"] = "止", ["齒"] = "止", ["紕"] = "止", ["只"] = "只", ["胑"] = "只", ["疻"] = "只", ["軹"] = "只", ["咫"] = "只", ["枳"] = "只", ["抧"] = "只", ["伿"] = "只", ["齞"] = "只", ["稽"] = "旨", ["詣"] = "旨", ["栺"] = "旨", ["榰"] = "旨", ["脂"] = "旨", ["鴲"] = "旨", ["指"] = "旨", ["旨"] = "旨", ["恉"] = "旨", ["嗜"] = "旨", ["蓍"] = "旨", ["鰭"] = "旨", ["耆"] = "旨", ["鮨"] = "旨", ["鬐"] = "旨", ["致"] = "至", ["輊"] = "至", ["駤"] = "至", ["跮"] = "至", ["荎"] = "至", ["緻"] = "至", ["至"] = "至", ["鵄"] = "至", ["胵"] = "至", ["痓"] = "至", ["咥"] = "至", ["窒"] = "至", ["蛭"] = "至", ["垤"] = "至", ["耋"] = "至", ["姪"] = "至", ["絰"] = "至", ["恎"] = "至", ["挃"] = "至", ["庢"] = "至", ["銍"] = "至", ["秷"] = "至", ["螲"] = "至", ["侄"] = "至", ["桎"] = "至", ["郅"] = "至", ["晊"] = "至", ["室"] = "至", ["制"] = "制", ["淛"] = "制", ["製"] = "制", ["掣"] = "制", ["痸"] = "制", ["猘"] = "制", ["陟"] = "陟", ["騭"] = "陟", ["啑"] = "疐", ["疐"] = "疐", ["嚏"] = "疐", ["懥"] = "疐", ["質"] = "質", ["躓"] = "質", ["懫"] = "質", ["礩"] = "質", ["櫍"] = "質", ["劕"] = "質", ["鑕"] = "質", ["中"] = "中", ["忠"] = "中", ["衷"] = "中", ["忡"] = "中", ["浺"] = "中", ["盅"] = "中", ["种"] = "中", ["沖"] = "中", ["翀"] = "中", ["仲"] = "中", ["撞"] = "重", ["幢"] = "重", ["橦"] = "重", ["噇"] = "重", ["𩪘"] = "重", ["艟"] = "重", ["憧"] = "重", ["畽"] = "重", ["董"] = "重", ["蕫"] = "重", ["箽"] = "重", ["懂"] = "重", ["湩"] = "重", ["曈"] = "重", ["童"] = "重", ["僮"] = "重", ["瞳"] = "重", ["罿"] = "重", ["犝"] = "重", ["潼"] = "重", ["穜"] = "重", ["動"] = "重", ["慟"] = "重", ["堹"] = "重", ["諥"] = "重", ["蹱"] = "重", ["重"] = "重", ["緟"] = "重", ["蝩"] = "重", ["褈"] = "重", ["鐘"] = "重", ["鍾"] = "重", ["籦"] = "重", ["種"] = "重", ["腫"] = "重", ["踵"] = "重", ["歱"] = "重", ["喠"] = "重", ["偅"] = "重", ["衝"] = "重", ["揰"] = "重", ["尰"] = "重", ["潨"] = "眾", ["眾"] = "眾", ["洲"] = "州", ["州"] = "州", ["喌"] = "州", ["酬"] = "州", ["詶"] = "州", ["鵃"] = "舟", ["輈"] = "舟", ["侜"] = "舟", ["矪"] = "舟", ["舟"] = "舟", ["裯"] = "周", ["啁"] = "周", ["禂"] = "周", ["綢"] = "周", ["翢"] = "周", ["錭"] = "周", ["雕"] = "周", ["凋"] = "周", ["琱"] = "周", ["鯛"] = "周", ["鵰"] = "周", ["彫"] = "周", ["奝"] = "周", ["調"] = "周", ["蜩"] = "周", ["惆"] = "周", ["婤"] = "周", ["稠"] = "周", ["椆"] = "周", ["周"] = "周", ["輖"] = "周", ["賙"] = "周", ["郮"] = "周", ["晭"] = "周", ["倜"] = "周", ["粥"] = "粥", ["鬻"] = "粥", ["肘"] = "肘", ["疛"] = "肘", ["紂"] = "肘", ["葤"] = "肘", ["酎"] = "肘", ["婦"] = "帚", ["帚"] = "帚", ["箒"] = "帚", ["鯞"] = "帚", ["咮"] = "朱", ["株"] = "朱", ["誅"] = "朱", ["邾"] = "朱", ["鼄"] = "朱", ["跦"] = "朱", ["袾"] = "朱", ["鴸"] = "朱", ["蛛"] = "朱", ["殊"] = "朱", ["趎"] = "朱", ["珠"] = "朱", ["朱"] = "朱", ["侏"] = "朱", ["絑"] = "朱", ["祩"] = "朱", ["鮢"] = "朱", ["硃"] = "朱", ["姝"] = "朱", ["銖"] = "朱", ["茱"] = "朱", ["洙"] = "朱", ["陎"] = "朱", ["竺"] = "竹", ["篤"] = "竹", ["竹"] = "竹", ["筑"] = "竹", ["築"] = "竹", ["茿"] = "竹", ["篴"] = "逐", ["蓫"] = "逐", ["逐"] = "逐", ["鱁"] = "逐", ["飳"] = "主", ["妵"] = "主", ["黈"] = "主", ["蘣"] = "主", ["罜"] = "主", ["拄"] = "主", ["柱"] = "主", ["駐"] = "主", ["註"] = "主", ["鉒"] = "主", ["軴"] = "主", ["住"] = "主", ["跓"] = "主", ["嵀"] = "主", ["主"] = "主", ["麈"] = "主", ["宔"] = "主", ["炷"] = "主", ["注"] = "主", ["疰"] = "主", ["蛀"] = "主", ["霔"] = "主", ["貯"] = "宁", ["詝"] = "宁", ["柠"] = "宁", ["宁"] = "宁", ["佇"] = "宁", ["竚"] = "宁", ["苧"] = "宁", ["紵"] = "宁", ["羜"] = "宁", ["眝"] = "宁", ["壴"] = "壴", ["廚"] = "壴", ["躕"] = "壴", ["櫥"] = "壴", ["幮"] = "壴", ["樹"] = "壴", ["澍"] = "壴", ["尌"] = "壴", ["祝"] = "祝", ["呪"] = "祝", ["咒"] = "祝", ["柷"] = "祝", ["抓"] = "爪", ["爪"] = "爪", ["笊"] = "爪", ["找"] = "爪", ["竱"] = "專", ["團"] = "專", ["摶"] = "專", ["篿"] = "專", ["慱"] = "專", ["剸"] = "專", ["鄟"] = "專", ["漙"] = "專", ["鷒"] = "專", ["轉"] = "專", ["傳"] = "專", ["囀"] = "專", ["縳"] = "專", ["專"] = "專", ["磚"] = "專", ["甎"] = "專", ["塼"] = "專", ["嫥"] = "專", ["膞"] = "專", ["鱄"] = "專", ["蓴"] = "專", ["孨"] = "孨", ["孱"] = "孨", ["蜼"] = "隹", ["堆"] = "隹", ["嵟"] = "隹", ["碓"] = "隹", ["推"] = "隹", ["蓷"] = "隹", ["陮"] = "隹", ["魋"] = "隹", ["嶊"] = "隹", ["崔"] = "隹", ["猚"] = "隹", ["椎"] = "隹", ["顀"] = "隹", ["隹"] = "隹", ["錐"] = "隹", ["萑"] = "隹", ["騅"] = "隹", ["鵻"] = "隹", ["誰"] = "隹", ["脽"] = "隹", ["蘬"] = "追", ["磓"] = "追", ["塠"] = "追", ["頧"] = "追", ["鴭"] = "追", ["鎚"] = "追", ["搥"] = "追", ["縋"] = "追", ["膇"] = "追", ["槌"] = "追", ["追"] = "追", ["桘"] = "追", ["巋"] = "追", ["歸"] = "追", ["悼"] = "卓", ["淖"] = "卓", ["罩"] = "卓", ["鵫"] = "卓", ["趠"] = "卓", ["踔"] = "卓", ["棹"] = "卓", ["鋽"] = "卓", ["掉"] = "卓", ["逴"] = "卓", ["焯"] = "卓", ["綽"] = "卓", ["婥"] = "卓", ["繛"] = "卓", ["卓"] = "卓", ["桌"] = "卓", ["倬"] = "卓", ["啅"] = "卓", ["晫"] = "卓", ["蝃"] = "叕", ["欼"] = "叕", ["綴"] = "叕", ["醊"] = "叕", ["畷"] = "叕", ["啜"] = "叕", ["餟"] = "叕", ["腏"] = "叕", ["錣"] = "叕", ["輟"] = "叕", ["娺"] = "叕", ["窡"] = "叕", ["鵽"] = "叕", ["掇"] = "叕", ["剟"] = "叕", ["裰"] = "叕", ["敠"] = "叕", ["惙"] = "叕", ["罬"] = "叕", ["叕"] = "叕", ["歠"] = "叕", ["逫"] = "叕", ["輜"] = "甾", ["淄"] = "甾", ["錙"] = "甾", ["緇"] = "甾", ["甾"] = "甾", ["菑"] = "甾", ["鶅"] = "甾", ["椔"] = "甾", ["鯔"] = "甾", ["糍"] = "兹", ["茲"] = "兹", ["滋"] = "兹", ["孳"] = "兹", ["嵫"] = "兹", ["嗞"] = "兹", ["鎡"] = "兹", ["鰦"] = "兹", ["鶿"] = "兹", ["稵"] = "兹", ["螆"] = "兹", ["慈"] = "兹", ["鷀"] = "兹", ["磁"] = "兹", ["礠"] = "兹", ["濨"] = "兹", ["孜"] = "子", ["仔"] = "子", ["孖"] = "子", ["子"] = "子", ["虸"] = "子", ["耔"] = "子", ["秄"] = "子", ["杍"] = "子", ["籽"] = "子", ["字"] = "子", ["茡"] = "子", ["芓"] = "子", ["牸"] = "子", ["李"] = "子", ["姊"] = "秭", ["秭"] = "秭", ["趀"] = "秭", ["笫"] = "秭", ["胏"] = "秭", ["柹"] = "秭", ["柿"] = "秭", ["郋"] = "自", ["自"] = "自", ["洎"] = "自", ["臮"] = "自", ["垍"] = "自", ["詯"] = "自", ["淙"] = "宗", ["鬃"] = "宗", ["漴"] = "宗", ["粽"] = "宗", ["宗"] = "宗", ["倧"] = "宗", ["綜"] = "宗", ["錝"] = "宗", ["賨"] = "宗", ["琮"] = "宗", ["悰"] = "宗", ["孮"] = "宗", ["誴"] = "宗", ["崇"] = "宗", ["崈"] = "宗", ["踪"] = "宗", ["奏"] = "奏", ["凑"] = "奏", ["腠"] = "奏", ["輳"] = "奏", ["楱"] = "奏", ["湊"] = "奏", ["足"] = "足", ["莡"] = "足", ["捉"] = "足", ["齪"] = "足", ["娖"] = "足", ["浞"] = "足", ["鋜"] = "足", ["趗"] = "足", ["珿"] = "足", ["哫"] = "足", ["促"] = "足", ["晬"] = "卒", ["祽"] = "卒", ["綷"] = "卒", ["淬"] = "卒", ["啐"] = "卒", ["倅"] = "卒", ["焠"] = "卒", ["碎"] = "卒", ["誶"] = "卒", ["濢"] = "卒", ["噿"] = "卒", ["臎"] = "卒", ["醉"] = "卒", ["翠"] = "卒", ["悴"] = "卒", ["萃"] = "卒", ["瘁"] = "卒", ["顇"] = "卒", ["粹"] = "卒", ["睟"] = "卒", ["賥"] = "卒", ["卒"] = "卒", ["稡"] = "卒", ["猝"] = "卒", ["椊"] = "卒", ["捽"] = "卒", ["崪"] = "卒", ["窣"] = "卒", ["崒"] = "卒", ["踤"] = "卒", ["錊"] = "卒", ["蔟"] = "族", ["嗾"] = "族", ["鷟"] = "族", ["鏃"] = "族", ["瘯"] = "族", ["簇"] = "族", ["族"] = "族", ["罪"] = "罪", ["辠"] = "罪", ["𢶀"] = "罪", ["尊"] = "尊", ["樽"] = "尊", ["罇"] = "尊", ["嶟"] = "尊", ["繜"] = "尊", ["撙"] = "尊", ["噂"] = "尊", ["譐"] = "尊", ["僔"] = "尊", ["蹲"] = "尊", ["鱒"] = "尊", ["鐏"] = "尊", ["遵"] = "尊", ["鷷"] = "尊", ["墫"] = "尊", ["竴"] = "尊", ["左"] = "左", ["佐"] = "左", ["袏"] = "左", ["蹉"] = "左", ["瑳"] = "左", ["搓"] = "左", ["磋"] = "左", ["溠"] = "左", ["傞"] = "左", ["醝"] = "左", ["瘥"] = "左", ["鹺"] = "左", ["嵯"] = "左", ["嵳"] = "左", ["蒫"] = "左", ["艖"] = "左", ["齹"] = "左", ["縒"] = "左", ["褨"] = "左", ["嗟"] = "左", ["差"] = "左", ["鎈"] = "左", ["槎"] = "左", ["髊"] = "左", ["脞"] = "坐", ["侳"] = "坐", ["挫"] = "坐", ["夎"] = "坐", ["遳"] = "坐", ["銼"] = "坐", ["剉"] = "坐", ["莝"] = "坐", ["趖"] = "坐", ["矬"] = "坐", ["痤"] = "坐", ["睉"] = "坐", ["坐"] = "坐", ["座"] = "坐", ["髽"] = "坐", ["鑿"] = "丵", ["糳"] = "丵", ["艐"] = "翪", ["堫"] = "翪", ["葼"] = "翪", ["鬷"] = "翪", ["嵕"] = "翪", ["猣"] = "翪", ["鯼"] = "翪", ["椶"] = "翪", ["騣"] = "翪", ["蝬"] = "翪", ["翪"] = "翪", ["緵"] = "翪", ["稯"] = "翪", ["鬉"] = "翪", ["糉"] = "翪", } jb8cabq7w4513a57r7mo9wjqpg3d8hk 모듈:zh-glyph/phonetic 828 448052 4388253 2025-07-07T09:55:33Z CHK2605 33979 새 문서: return { ["愛"]="愛曖僾靉薆璦瞹", ["安"]="安鞍鞌侒按案洝荌晏鴳騴鷃頞胺咹", ["卬"]="卬枊昂仰迎", ["敖"]="熬敖嗷螯聱驁鰲遨獒滶蔜鷔鼇謷嶅嗸摮嫯鏊傲磝", ["奧"]="襖懊燠奧墺隩澳噢薁䉛", ["八"]="扒八𩡩朳玐釟汃", ["巴"]="巴芭笆豝鈀吧蚆疤把爸弝靶葩舥妑帊琶爬杷跁耙", ["犮"]="軷韍祓蛂拔菝袚茇盋帗跋魃䣮馛炦颰妭犮胈鈸苃坺髮冹瞂紱黻翇", ["癹"]="發癹", ["罷"]... 4388253 Scribunto text/plain return { ["愛"]="愛曖僾靉薆璦瞹", ["安"]="安鞍鞌侒按案洝荌晏鴳騴鷃頞胺咹", ["卬"]="卬枊昂仰迎", ["敖"]="熬敖嗷螯聱驁鰲遨獒滶蔜鷔鼇謷嶅嗸摮嫯鏊傲磝", ["奧"]="襖懊燠奧墺隩澳噢薁䉛", ["八"]="扒八𩡩朳玐釟汃", ["巴"]="巴芭笆豝鈀吧蚆疤把爸弝靶葩舥妑帊琶爬杷跁耙", ["犮"]="軷韍祓蛂拔菝袚茇盋帗跋魃䣮馛炦颰妭犮胈鈸苃坺髮冹瞂紱黻翇", ["癹"]="發癹", ["罷"]="擺犤罷矲羆襬藣", ["霸"]="壩霸灞欛", ["白"]="怕帕粕胉泊箔魄皕伯百迫敀柏湐拍珀皛洦白帛舶鮊陌帞袹蛨貊佰銆碧咟", ["拜"]="拜湃", ["班"]="班斑", ["般"]="螌般媻搫搬盤磐瘢幋槃縏鎜鞶", ["半"]="半絆靽姅拌拚坢判泮頖胖冸牉柈伴叛畔袢", ["勹"]="袍袌軳抱勽菢勹包胞苞枹飽泡炮皰疱跑咆庖匏刨狍炰鉋瓟颮鞄鮑骲玸雹窇", ["保"]="襃保堡褓堢緥葆賲宲椺", ["鴇"]="鴇駂", ["暴"]="暴曝瀑虣爆襮嚗謈犦懪", ["卑"]="捭牌郫蠯猈稗粺𥱼豍箄錍睥渒鼙鞞椑崥髀卑鵯裨痺碑婢諀脾埤陴蜱焷螷庳琕萆綼", ["北"]="背鄁偝邶苝北", ["貝"]="貝狽鋇浿垻敗唄", ["備"]="憊韛備俻鞴糒犕", ["奔"]="賁蟦膹橨奔錛噴濆歕獖餴饙僨墳燌豶羵蕡鐼馩轒鼖憤鱝", ["本"]="本笨苯翉体鉢缽", ["匕"]="匕庀疕朼牝", ["比"]="梐狴悂螕鎞蓖篦批砒鈚磇媲笓膍陛仳吡紕比妣秕沘枇粊庇屁琵毗貔豼蚍芘肶魮阰坒玭", ["啚"]="鄙啚", ["必"]="泌秘毖閟柲鉍邲覕咇苾馝飶鴓鮅必珌佖駜怭妼宓樒密蔤滵蜜謐榓淧瑟璱飋虙", ["畀"]="箅濞畀痹淠嚊鼻襣", ["畢"]="畢蓽篳蹕韠滭鷝熚彃縪饆鏎罼", ["敝"]="蔽鄨鷩彆潎斃敝幣弊鱉虌憋瞥鐅嫳撇撆暼蹩襒", ["閉"]="閉閇", ["辟"]="嬖薜鐾臂譬避檗擘糪掰繴辟璧鐴躄襞僻癖廦擗躃闢壁鼊霹劈澼憵甓鷿幦", ["扁"]="斒鯿編揙褊篇偏翩媥扁萹騗騙諞楄蝙甂猵牑蹁匾碥惼糄徧遍頨艑", ["卞"]="汴卞忭抃犿笇飰", ["弁"]="鴘弁拚閞昪匥笲軬畚", ["便"]="鞭鯾箯便緶楩", ["辡"]="辬瓣辦辨辡辯辮", ["彪"]="彪淲滮", ["猋"]="飆猋贆", ["麃"]="藨麃臕鑣儦瀌犥皫", ["表"]="表裱俵", ["别"]="捌哵別莂", ["彬"]="虨彬霦", ["斌"]="斌贇", ["豩"]="燹豳", ["賓"]="蠙賓檳鑌濱顮儐矉擯殯鬢繽嬪薲獱臏髕", ["仌"]="冫冰砅馮憑", ["兵"]="浜捠兵", ["丙"]="更粳埂浭稉梗哽綆鯁挭骾郠硬鞕丙炳邴怲苪蛃昺昞窉柄鈵寎病", ["秉"]="秉棅", ["禀"]="燷壈燣顲稟廩懍凜癛檁", ["并"]="鵧駢胼骿軿賆跰恲鮩絣拼迸姘皏併并栟屏箳餅鉼摒庰偋艵頩竮瓶缾蛢荓郱洴蓱", ["並"]="湴跰並竝", ["孛"]="誖悖孛哱馞勃餑郣浡桲挬脖鵓渤綍", ["卜"]="仆赴訃朴圤卜鳪扑攴", ["不"]="肧俖娝痞丕伾秠駓怌豾髬魾鉟嚭邳岯否抔不紑鴀衃罘芣杯盃桮坯胚", ["步"]="荹步踄", ["部"]="部蔀篰", ["才"]="茬材才財鼒在豺", ["采"]="采睬彩採綵寀菜埰棌", ["參"]="篸參驂傪慘黲謲毿蔘犙糝槮鬖摻醦縿穇嵾磣墋曑瘮滲", ["粲"]="餐湌粲燦璨薒殩", ["倉"]="艙倉蒼滄傖鶬凔槍搶蹌瑲牄嗆創瘡愴鎗", ["曹"]="遭糟醩傮槽曹螬漕嘈艚褿蓸慒", ["冊"]="栅冊笧", ["畟"]="稷畟溭謖", ["叉"]="叉杈靫汊衩扠釵芆訍", ["臿"]="偛插鍤臿喢牐歃敮", ["孱"]="孱潺僝轏樼", ["廛"]="纏緾躔瀍鄽廛", ["毚"]="纔讒饞毚欃攙儳酁瀺嚵巉劖艬鑱", ["昌"]="昌倡猖菖閶鯧裮琩唱", ["長"]="張餦粻漲長脹痮帳賬倀鼚鋹悵韔萇瓺棖掁", ["巢"]="璅繅薻罺摷勦巢轈樔鄛剿漅", ["朝"]="嘲廟朝潮", ["車"]="車硨厙庫", ["徹"]="徹撤澈轍", ["臣"]="臤掔慳藖堅鋻鰹蜸菣賢礥臔挋臣茞腎頣緊嚚鏗摼硻", ["辰"]="辴屒振侲桭唇帪賑裖敐震娠蜃辰晨宸鷐麎祳脤鋠磭陙脣漘", ["陳"]="陳敶陣", ["韱"]="讖攕櫼懺殲瀸鑯虃籤韯纖孅韱襳", ["爯"]="稱爯偁", ["丞"]="蒸烝篜脀拯氶承丞巹", ["成"]="成城誠宬郕筬盛珹晟墭", ["呈"]="挰鋥逞裎悜睈呈程酲珵徎郢浧桯鞓壬鐵驖戜", ["乘"]="乘溗塖騬椉剩嵊", ["尺"]="尺蚇", ["彖"]="蠡盠彖墬喙餯剶猭鶨椽篆瑑堟蝝緣櫞掾褖湪", ["赤"]="浾嚇赦郝赫爀赤烾螫赥捇焃", ["敕"]="敕勅鷘慗遫", ["充"]="統充珫茺銃", ["舂"]="樁憃舂摏蹖", ["蟲"]="痋鉵赨爞蟲融瀜", ["雔"]="犨犫雔售讎", ["丑"]="峱紐扭狃鈕忸杻莥羞丑沑粈衄", ["臭"]="臭殠糗嗅齅", ["出"]="聉贅祟出茁欪貀袦咄柮拙炪掘鈯啒淈窟泏堀胐窋絀黜屈趉鶌詘倔崛", ["芻"]="煼謅縐鄒騶搊皺篘㑳趍趨芻犓雛鶵媰齺", ["豖"]="冢塚涿琢啄諑剢瘃豖", ["川"]="川釧巛巡馴紃甽順訓", ["舛"]="舛荈僢舜瞬蕣", ["刅"]="梁粱刱", ["吹"]="吹炊焁", ["垂"]="埵綞涶唾厜腄箠娷諈錘甀硾捶垂陲倕菙睡", ["辭"]="辤辭", ["此"]="些跐柴祡茈眦砦寨啙泚玼皉鮆眥貲髭頾訾鴜鈭姕觜紫訿呰嘴雌此佌庛疵骴胔飺齜", ["朿"]="債積刺莿㓨朿漬耫嘖梀捒幘簀嫧謮責皟憡策筴拺賾鰿擌蹟襀磧洓績勣樍", ["次"]="咨資姿粢諮恣澬趑蠀次佽絘薋瓷茨餈垐楶", ["囱"]="牎窗窓囱總熜傯緫揔偬囪璁驄蔥匆怱葱楤聦繱騘鍯聰愡檧憽幒", ["从"]="摐鏦豵嵸蓯蹤縱樅磫熧瘲暰瑽從从慫聳傱", ["竄"]="躥竄攛鑹", ["崔"]="嗺催璀皠漼鏙摧崔慛槯繀膗", ["毳"]="膬毳竁橇", ["存"]="荐洊臶栫袸存拵", ["寸"]="村忖刌寸", ["沓"]="踏濌錔鞜沓涾誻", ["羍"]="羍達闥撻躂澾薘", ["龖"]="龖襲", ["大"]="馱大忕太汰汏軑釱达杕", ["眔"]="褱鰥嚃眔遝", ["帶"]="帶蹛艜慸滯懘蔕螮摕僀殢遰墆嵽蒂", ["丹"]="丹旃栴", ["單"]="嚲癉奲驒鼉磾鷤觶單鄲殫簞匰襌彈貚撣潬僤憚樿燀戰闡繟幝嘽灛蟬禪嬋墠鱓蕇", ["旦"]="皽担胆疸觛亶嬗笪狚旦鴠譠坦但檀壇儃驙袒襢繵膻澶邅鱣饘旜氈鸇顫蟺擅羶呾怛妲靼炟", ["宕"]="宕菪", ["刀"]="刀忉魛舠朷叨倒到菿鞀鳭灱菬超怊欩召昭招鉊沼照詔炤弨眧韶佋軺玿柖紹袑綤邵劭卲刁芀貂蛁迢苕髫岧", ["得"]="得淂棏", ["登"]="登璒燈簦蹬磴鐙嶝隥橙凳墱鼟膯澄鄧僜覴瞪憕撜證", ["狄"]="逖悐狄荻梑", ["翟"]="櫂濯耀曜燿糶粜嬥藋躍戳擢蠗鸐翟趯籊糴䊮", ["氐"]="低氐袛羝眡岻奃趆柢邸底詆坻抵牴觝弤軧骶砥胝疷秪泜蚳彽阺貾祗厎茋鴟汦", ["弟"]="梯睇涕挮鬀剃綈蕛稊苐鵜銻鮷罤弟娣悌第", ["帝"]="膪揥腣諦偙渧帝楴啼蹄締崹鶙禘啻嫡摘謫讁擿蹢適啇滴鏑甋樀敵", ["典"]="典錪腆痶淟琠賟晪", ["奠"]="奠鄭擲躑", ["殿"]="殿澱壂臀", ["弔"]="盄弔伄", ["疊"]="曡疊", ["丁"]="圢町打盯朾丁玎虰揨釘靪仃叮疔頂奵耵酊葶矴訂飣汀艼庁婷停聤渟楟亭", ["鼎"]="鼎薡濎", ["冬"]="疼冬苳笗炵佟鼕鉖終螽鼨柊鴤泈蔠", ["東"]="東菄鶇倲涷蝀凍鯟崠埬棟", ["兜"]="兜篼", ["斗"]="斗抖蚪枓阧斢鈄", ["豆"]="侸剅郖鬪鋀頭豆逗痘梪脰荳浢餖毭豎裋短", ["鬥"]="鬥鬭", ["毒"]="瑇纛碡毒蝳", ["耑"]="揣褍惴圌篅瑞端剬偳鍴耑踹湍煓貒諯顓喘遄輲椯歂腨", ["段"]="鍛腶碫瑖緞段椴毈", ["兌"]="毤蛻娧駾裞兌綐銳帨稅說涚䫄脫侻挩莌梲鮵敓痥悅閱", ["對"]="對轛薱濧懟", ["敦"]="弴敦錞憝憞譈鐓鷻鶉惇墩驐燉焞啍暾噋諄埻稕醇淳犉", ["屯"]="躉窀沌盹頓扽黗吨屯飩豘軘坉邨忳芚庉囤迍杶瑃椿偆肫訰純春蠢踳惷蒓賰鬊", ["盾"]="盾遁循揗楯輴腯鍎", ["多"]="多哆跢痑爹陊橠袲奓栘黟趍誃簃眵恀侈姼鉹垑袳卶宜誼竩移迻扅拸熪謻蛥", ["朵"]="桗挆朵朶躲剁垛", ["戹"]="呃阸厄蚅扼軛戹豟呝軶", ["而"]="耐耏而鮞鴯栭陑峏輀胹洏髵恧", ["兒"]="掜誽倪蜺霓郳齯婗輗棿猊麑貎鯢兒觬堄晲睨唲隉鶂鬩", ["尔"]="妳弥尒尔迩你苶", ["耳"]="佴麛弭渳葞髶聻恥咡誀耳洱駬餌珥衈毦刵眲", ["爾"]="嬭禰镾薾檷鑈瀰獼瓕彌鸍擟濔壐璽爾邇獮籋", ["二"]="膩二弍貳樲", ["發"]="廢癈橃撥鱍襏驋鏺潑醱", ["乏"]="砭貶窆泛姂䒦柉覂眨鴔乏", ["伐"]="茷筏伐閥垡栰", ["罰"]="罰藅", ["法"]="法灋", ["番"]="皤嶓番播譒鄱潘蟠磻蕃轓鱕鐇藩籓橎翻幡飜旛繙燔蹯膰羳鷭璠襎墦", ["凡"]="嵐葻釩汎凡帆颿軓梵芃風飌楓猦偑檒瘋諷堸渢鳳", ["棥"]="攀襻棥礬樊蠜", ["煩"]="煩薠", ["緐"]="繁緐蘩瀿瀪", ["反"]="扳板版瓪昄鈑蝂眅阪魬粄反返坂畈販汳飯", ["氾"]="氾犯範范笵", ["匚"]="匚匠", ["方"]="縍榜蒡牓螃搒舫謗雱磅霶滂鎊髈彷趽房篣騯傍膀旁徬閍祊嗙方汸坊邡枋鈁蚄肪鴋牥昉瓬放倣芳淓妨紡仿髣鶭訪防魴", ["妃"]="圮妃", ["非"]="啡排俳輫悲棑輩裴徘琲痱非扉緋猆斐馡騑誹餥匪棐蜚篚榧鯡霏菲婔裶悱奜腓陫屝厞翡", ["飛"]="飛騛", ["肥"]="蜰肥淝萉", ["朏"]="朏昢", ["分"]="扮盼頒朌鳻份汃玢邠攽砏貧湓盆葐坌坋分吩粉黺芬紛衯棻氛雰忿魵汾羒枌棼妢梤馚鼢蚡弅秎", ["糞"]="糞瀵", ["丰"]="邦梆垹肨蚌玤棒蜯琫菶俸髼蜂韸蓬篷唪埲丰妦仹峯峰鋒烽蠭桻莑夆捧逢縫漨捀奉", ["豐"]="豐蘴灃寷麷酆", ["封"]="幫鞤封葑犎崶湗", ["夆"]="胮逄舽", ["缶"]="寶珤缶缹", ["夫"]="趺肤邞鈇衭玞夫鳺扶妋麩蚨芙颫枎", ["旉"]="敷璷", ["巿"]="沛芾伂霈旆肺杮巿", ["弗"]="鄪費砩沸疿茀髴昲靅狒怫胇艴弗紼柫笰拂刜彿佛坲咈炥", ["伏"]="絥伏垘茯洑栿", ["孚"]="殍脬捊莩哹浮蜉桴罦琈粰烰艀俘孚孵稃郛筟", ["服"]="菔服鵩箙棴", ["畐"]="富輻副褔蔔匐逼偪幅楅湢堛愊踾揊稫畐疈腷鶝福蝠葍", ["复"]="愎鍑覆復椱複馥腹輹蝮蕧复鰒澓", ["甫"]="豧縛逋餔晡庯陠鵏峬誧秿鯆補圃鋪痡浦烳溥悑酺匍蜅脯葡蒱蒲簿捕哺簠甫黼莆俌郙傅搏麱尃榑輔鬴賻博髆鎛猼餺簙鑮欂蒪膊薄礡", ["父"]="抪布佈怖斧父蚥滏釜", ["付"]="鉜跗柎腑俯府付咐怤泭姇紨拊弣符苻坿腐附駙鮒袝蚹胕", ["阜"]="阜埠", ["負"]="負萯蝜偩", ["丐"]="丐匄", ["干"]="訐肝竿干奸玕汗迀忓鳱邗秆矸仠皯衦簳擀旰盰幹杆骭桿趕稈刊靬衎犴豻頇岸鼾罕焊蔊虷旱皔釬扞閈馯捍悍銲垾駻睅娨飦赶軒蓒酐澣", ["甘"]="紺姏嵌甘柑苷泔坩蚶酣甝魽邯鉗箝黚拑", ["敢"]="撖澉噉敢橄瞰闞憨譀巖礹豃讝玁嚴儼曮釅", ["倝"]="乾漧倝榦韓鶾翰瀚螒雗斡", ["岡"]="岡崗剛掆鋼綱犅堈", ["羔"]="羔糕餻窯溔", ["高"]="高膏篙稿稾槁縞暠槀藁燺薧犒蒿藃豪毫壕濠鎬滈鄗鰝薃搞敲髇嗃巐歊謞熇碻塙毃翯瀥", ["皋"]="睾皋", ["皐"]="臯橰鷱翱翺噑獋暭", ["夰"]="夰昦", ["杲"]="杲菒", ["告"]="造慥艁糙告誥郜祰靠浩晧皓窖簉梏硞牿鵠酷焅嚳頶", ["戈"]="戕戈划", ["革"]="革諽緙鞂", ["鬲"]="隔膈搹鬲槅嗝虉翮滆蒚鎘", ["各"]="髂路輅賂虂露潞鷺璐簬簵洛駱絡酪烙雒珞硌袼笿鉻鮥鵅挌落各胳閣格擱恪愙貉狢佫略茖骼觡蛒敋客喀揢額峉頟詻垎楁", ["艮"]="艱齦眼蛝限硍豤詪根跟珢艮茛墾懇垠泿痕拫鞎很恨銀檭", ["亘"]="烜貆峘狟絙荁宣咺暅桓洹揎愃瑄渲喧萱暄諠翧蝖垣楦", ["庚"]="唐煻糖搪蓎瑭餹篖螗塘鶶赯磄溏傏鎕榶嵣庚賡鹒康穅糠槺漮躿慷", ["耿"]="耿褧", ["工"]="缸篢贑涳江肛扛杠豇茳釭矼玒虹腔崆羫控椌悾跫啌谾舡缻項屸功工疘魟攻愩碽貢羾空箜硿埪鵼倥鞚叿嗊訌紅仜葒渱鴻汞澒鞏巩銎恐蛩筇桏邛", ["弓"]="弓穹焪芎", ["公"]="慃袞蔉滾忩鬆凇公蚣翁螉蓊嗡滃暡勜塕瓮崧菘硹淞蜙倯松訟頌忪彸衳伀妐炂鈆", ["厷"]="肱宏閎吰竑谹翃紘鈜浤耾雄", ["躬"]="躬匑躳窮藭", ["共"]="港巷衖鬨烘洪鉷谼葓哄蕻恭供龔珙共髸拱拲蛬栱輁舼輂", ["冓"]="溝篝鞲韝褠冓構購媾覯遘煹搆講耩傋斠", ["古"]="箇個居橭嫴姑辜酤蛄鴣沽盬古罟估鈷詁牯故固稒痼錮鯝棝凅枯軲跍骷苦葫餬瑚湖鶘猢醐糊箶蝴胡瓳怙祜岵婟楛据裾琚椐鶋蜛崌涺腒鋸倨踞涸", ["谷"]="螸裕容溶鎔蓉傛褣搈瑢嵱熔榕塎谷唂焀俗欲浴鵒峪鋊輍慾", ["股"]="股羖", ["骨"]="顝滑猾磆螖鶻嗗骨縎愲蓇尳榾搰核", ["鼓"]="皷鼓瞽", ["瓜"]="瓜坬窊畖搲攨孤苽胍泒呱觚柧罛軱菰箛狐弧", ["冎"]="碢腡過渦鍋楇瘑緺堝濄鐹薖簻禍窩萵檛膼蝸媧騧冎剮諣歄咼喎", ["枴"]="箉拐枴", ["夬"]="袂夬快駃筷炔觖缺蒛吷妜決訣抉玦芵赽鴂鈌决疦蚗趹", ["官"]="官棺倌悹涫管琯痯輨錧館婠悺逭菅綰捾", ["毌"]="毌貫樌鏆遦慣摜瑻謴", ["雚"]="觀灌鸛瓘矔懽爟雚罐鑵歡驩貛酄獾讙嚾權顴孉蠸虇勸", ["光"]="光灮洸桄胱垙輄恍茪侊晃幌榥滉觥駫", ["圭"]="街鞋娾佳鮭涯崖啀厓捱睚娃洼哇胿溎觟黊蘳蛙窪卦挂掛詿罣絓鼃圭珪邽閨袿窐茥桂筀奎刲蝰楏睳畦眭烓跬恚硅", ["規"]="嫢規槻鬹摫瞡窺闚", ["龜"]="鬮龜", ["巂"]="孈纗攜蠵鑴驨酅雟讗觽儶觿欈瓗携", ["癸"]="睽湀聧藈癸葵鄈楑戣鍨騤揆猤闋", ["鬼"]="謉瑰傀藱魁磈塊嵬隗槐瘣廆溾螝褢騩愧媿聭餽鬼魏巍犩", ["簋"]="簋孂", ["貴"]="藬僓頹穨蘈隤墤尵蹪瀢鞼膭憒靧潰繢嬇殨闠簣嘳蕢聵樻䙡匱臾饋櫃遺壝瞶貴", ["郭"]="郭埻崞椁槨噋廓鞹漷霩", ["果"]="裸躶果菓猓輠裹蜾惈粿窠稞課髁棵顆堁敤夥婐踝祼", ["亥"]="該垓賅陔豥荄郂姟絯晐峐侅胲頦奒輆欬硋閡咳孩亥劾痎烗骸駭刻餩核", ["害"]="轄害犗幰攇憲瀗割磍瞎鎋鶷縖豁", ["函"]="蜬函涵顄圅菡", ["寒"]="寒蹇謇搴藆騫褰攐鑳寋鶱", ["厂"]="厂屵", ["暵"]="儺臡嘆灘擹攤癱歎難暵熯漢戁", ["好"]="薅好", ["号"]="饕號号枵呺鴞", ["昊"]="昊顥灝", ["禾"]="科萪蝌犐禾和咊盉龢鉌俰", ["合"]="龕媕頜答畣荅嗒褡撘搭榙佮蛤鴿合郃匌鉿閤鞈韐鮯哈姶欱盒耠詥塔鞳劄跲袷餄恰帢洽祫珨烚歙湁拾給翕噏潝熻嬆翖闟", ["曷"]="愒馤靄餲喝揭偈猲葛輵獦渴嵑暍曷褐鶡毼蝎鞨遏齃堨擖楬朅藒竭碣羯鍻歇蠍謁", ["盍"]="蓋盖溘搕嗑榼磕瞌盍闔篕熆鰪廅圔饁", ["寉"]="鶴髉篧榷搉傕確寉蒮", ["黑"]="嚜嫼墨默纆黑潶", ["亨"]="亨享烹脝悙哼", ["亙"]="搄縆絙亙堩恆峘", ["弘"]="弘鞃苰泓宖紭", ["侯"]="緱侯喉猴瘊篌糇帿睺矦餱翭葔鄇鍭鯸候堠", ["后"]="垢詬茩姤銗骺后垕郈逅鲘缿", ["乎"]="罅呼軤苸嘑歑謼滹乎虖嫭", ["虍"]="唬戲巇隵嚱盧鑪壚籚蘆顱髗鱸攎櫨轤黸獹鸕艫纑瀘瓐爐嚧矑罏蠦虜擄艣鐪虖虍雐虎琥萀臚廬驢藘爈櫖儢慮勴鑢濾攄處豦據鐻澽虛墟懅蘧籧醵璩虡遽勮噓驉歔魖膚虧噱臄劇諕", ["互"]="魱互冱枑", ["戸"]="妒雇顧戽戶扈帍昈滬簄齭所", ["華"]="鞾華譁樺嘩驊鏵崋", ["化"]="訛吪鈋囮魤靴貨花化杹匕", ["畫"]="畫澅繣劃嫿", ["褱"]="瓌櫰褱懷瀤壞蘾", ["萈"]="寬髖萈臗", ["奐"]="渙瘓喚煥奐寏換", ["患"]="漶贃患槵", ["黃"]="僙廣鄺懬爌曠矌壙纊黃璜潢簧癀鱑獚蟥趪櫎擴瀇獷觵礦鑛穬橫黌鐄嚝彉彍", ["灰"]="脄盔詼恢灰", ["隓"]="鬌隋墮媠橢嫷毻堶憜惰嶞髓瀡隨隓隳撱", ["回"]="回徊茴洄迴佪蛔", ["毀"]="毀燬檓毇譭", ["卉"]="卉芔泋", ["彗"]="櫘彗篲鏏槥轊熭嘒暳嚖慧蔧雪", ["惠"]="韢繐憓潓惠蟪蕙橞譓鏸穗", ["會"]="譮會儈膾鱠襘禬檜旝澮鄶廥鬠劊獪繪懀薈嬒瞺噲璯", ["昏"]="鍲抿緡捪湣昏婚閽惛棔殙", ["圂"]="溷慁圂", ["火"]="火邩伙", ["或"]="幗慖簂蔮國或惑蜮閾緎淢域罭棫琙魊馘聝膕摑漍嘓蟈掝彧稶", ["蒦"]="檴鱯護頀濩韄鳠擭瓁劐穫鑊矆鸌雘蠖臒嬳彠嚄獲", ["霍"]="靃臛籗霍藿攉矐瀖癨", ["毄"]="繫檕轚蘻罊蟿礊擊墼", ["及"]="趿鈒靸馺砐魥扱笈衱极昅雭急級汲芨伋彶及岌吸", ["吉"]="秸髻夡鴶袺頡劼硈咭黠聐趌結拮桔狤擷襭翓纈吉郆詰蛣佶鮚姞欯恄", ["即"]="卪癤幯節蝍蠞堲唧楖揤櫛瀄擳即鯽", ["茍"]="亟茍殛極", ["疾"]="嫉疾蒺愱槉", ["棘"]="棘襋蕀", ["集"]="雜磼囃鏶穕潗集", ["几"]="肌飢机虮几麂", ["己"]="改跽己紀妀記杞屺芑邔玘忌鵋誋梞", ["丮"]="丮谻", ["脊"]="脊蹐鶺塉瘠膌", ["幾"]="機譏嘰磯鞿饑禨幾鐖僟璣蟣穖畿", ["戟"]="戟撠", ["旡"]="溉槩概摡慨嘅穊暨鱀塈既旡蔇炁櫭曁", ["季"]="季悸痵", ["祭"]="蔡瘵祭際穄鰶傺摖擦攃礤察詧", ["冀"]="冀驥懻", ["罽"]="罽瀱蘮", ["繼"]="繼檵", ["加"]="妿賀迦茄伽枷嘉加笳痂袈跏珈鴐架駕瘸", ["夾"]="瘞瘱脥浹挾夾郟筴裌鵊狹峽硤陜陿翜梜頰莢鋏蛺唊悏匧愜篋俠綊", ["家"]="家傢幏稼嫁", ["戛"]="戛嘎", ["甲"]="笚閘鉀甲胛岬押玾呷匣狎柙翈炠鴨庘", ["叚"]="葭麚瘕豭貑猳犌假嘏婽椵叚蝦煆霞遐瑕鰕碬蕸赮鍜騢暇", ["戔"]="殘戔帴虥盞醆琖剗棧輚嶘錢俴籛淺濺踐諓餞賤綫箋牋", ["肩"]="顅掮肩猏菺鵳", ["姦"]="姦葌", ["兼"]="譧賺尲鹻歉槏鰜稴豏甉廉鎌鬑鐮簾薕蠊嬚溓嵰隒熑濂燫兼縑鶼蒹搛謙膁嗛慊傔馦嫌鼸尷", ["監"]="藍襤籃懢儖蘫攬欖覽爁擥灠濫嚂纜監礛鑑艦檻壏轞鹽", ["柬"]="蘭攔欄瀾讕闌韊幱籣躝爛爤鑭糷斕揀柬暕諫練鍊煉楝萰堜湅", ["繭"]="襺繭蠒", ["幵"]="笄枅蚈羿栞雃詽揅幵鳽豣麉趼汧岍研妍訮鈃", ["見"]="涀莧粯晛筧絸垷挸見俔蜆硯峴哯睍現", ["建"]="犍騝鍵揵鞬腱湕建旔楗健", ["閒"]="間簡澗鐧蕑覵襉僩鬜癇瞯憪橌撊", ["薦"]="瀳韉薦", ["畺"]="畺畕礓繮韁橿薑疆壃僵彊麠", ["夅"]="贛灨竷戇洚降絳栙夅跭隆癃窿霳", ["交"]="烄礮交郊茭蛟鮫鵁咬鉸佼詨絞狡姣筊校珓跤頝骹齩洨胶效効傚皎恔晈窔駮", ["焦"]="癄焦蕉鷦僬噍膲鐎蟭燋醮潐趭樵譙憔劁顦嶕撨穛", ["角"]="捔桷角埆确斛槲蔛", ["敫"]="礉邀憿徼儌璬皦繳敫譥激噭獥鸄墽竅覈燩檄薂", ["皆"]="皆偕階喈稭堦楷鶛湝蝔鍇揩諧瑎龤", ["孑"]="孑𨥂", ["劫"]="劫蜐", ["疌"]="疀萐箑啑睫婕緁捷疌寁倢崨踕誱徢蜨", ["桀"]="桀傑榤嵥滐搩謋", ["截"]="巀截蠽", ["解"]="薢解檞懈繲廨蟹獬澥嶰邂", ["丯"]="夆丯瘛觢契栔禊稧楔葜猰窫揳偰潔絜鍥挈蛪齧褉喫", ["介"]="妎芥尬界介疥玠砎魪价衸齘骱扴圿忦", ["戒"]="祴駴戒誡悈械裓", ["巾"]="巾帘", ["今"]="貪嗿僋酓馠谽唅含肣頷筨梒鋡莟琀浛盦韽玪妗欦黔鈐鳹雂念梣枔岑笒涔侺今黅衿衾坅搇琴禽芩庈耹靲擒檎紟吟訡廞陰霠飲蔭廕矜", ["斤"]="蘄祈頎旂圻蚚岓玂沂掀釿齗听垽斤菦靳劤勁赾芹近斦欣忻昕訢炘邤庍焮", ["金"]="淦顉金錦欽菳嶔撳捦鵭唫鈙崟趛", ["兓"]="簪撍鐕憯噆朁蠶蚕糣熸鬵灊潛僭兓嶜兂譖", ["津"]="葏津", ["堇"]="囏螼堇墐𥎊僅瑾覲殣饉廑瘽歏鄞謹槿漌慬勤懃懄", ["盡"]="濜盡賮燼藎壗璶", ["晉"]="鄑戩榗晉縉搢瑨", ["進"]="璡進", ["坙"]="羥俓牼硁誙娙莖痙", ["巠"]="葝頸勁鑋輕涇經鵛巠剄烴徑逕桱蛵陘鋞脛踁", ["京"]="涼凉椋綡輬諒掠弶京麖鶁景鯨黥勍剠倞影璟憬暻澋", ["兢"]="兢殑", ["井"]="硎耕荊井丼妌穽阱汫刑形邢鉶型侀", ["竟"]="滰境竟鏡獍樈璄摬", ["敬"]="蟼憼驚警儆璥檠敬擎曔", ["誩"]="誩競", ["冋"]="苘詗駉坰冋絅扃炯迥泂", ["臦"]="臩臦", ["丩"]="艽芁荍叫訆嘂收糾朻丩赳虬虯觓", ["九"]="尻訄艽虓鳩勼九究仇鼽犰叴厹頄朹馗扏訅釚肍軌宄氿匭泦旭", ["久"]="畂久灸玖疚柩羑", ["臼"]="臼齨桕舅舊匶閰", ["咎"]="咎鼛櫜倃綹麔晷厬", ["就"]="僦就鷲殧噈蹴", ["廄"]="廄匓", ["匊"]="菊鞠掬匊鵴椈諊踘趜蘜鞫巈麴毱驧", ["局"]="鋦挶梮局跼侷", ["狊"]="瞁湨郹狊鶪鼳犑闃", ["巨"]="柜渠磲蕖蟝璖巨距拒苣炬詎鉅秬粔駏歫矩榘", ["句"]="勾鉤鴝句夠枸軥狗苟岣笱玽耇豿敂怐雊竘齁呴蚼豞訽佝拘駒眗跔鮈痀蒟絇邭劬朐鼩斪翑葋姁欨喣煦昫", ["具"]="俱椇具埧颶", ["瞿"]="瞿衢氍癯蠷臞欋鸜灈躣忂戵鑺懼", ["龹"]="潫豢勬韏眷桊絭觠飬弮拳卷齤券", ["卷"]="腃卷菤捲埢睠弮犈棬鬈圈蜷踡婘蔨倦淃綣裷", ["雋"]="隽檇臇嶲鐫雋儁寯", ["欮"]="鱖蹶厥欮蕨劂瘚蟨蟩橜撅闕橛鷢蹷憠", ["絕"]="蕝脃脆絕", ["爵"]="釂皭爝爵嚼穱灂", ["矍"]="钁攫矍躩玃貜彏戄籰", ["君"]="涒麏莙輑蜠峮窘僒君桾宭鮶捃群羣裙裠帬焄郡", ["軍"]="揮輝翬暉煇楎瀈韗褌鶤緷睴璭瘒顐諢餫渾琿鼲堚鯶軍皸齳喗葷惲賱運暈鄆", ["侃"]="諐侃偘", ["亢"]="笐亢牨苀魧迒邟忼骯抗炕伉閌犺蚢砊阬頏航杭沆肮吭秔坑劥", ["丂"]="丂攷考烤拷栲洘銬巧朽", ["殻"]="彀鷇瞉豰瑴愨殼觳嗀穀糓轂榖瀔縠", ["可"]="砢柯菏牁滒哥歌謌鴚哿舸笴軻珂可岢坷蚵呵訶抲荷何河苛魺袔阿妸疴鈳娿痾跒閜", ["克"]="克剋勊", ["肯"]="肯肎", ["孔"]="吼孔", ["口"]="口叩扣釦筘", ["寇"]="滱寇簆蔻", ["圣"]="怪恠圣", ["凷"]="凷屆", ["款"]="款欵歀窾", ["夔"]="夔犪躨", ["昆"]="昆琨鯤菎崐蜫惃錕猑騉緄輥棍餛混焜倱掍箟", ["困"]="硱梱捆綑閫悃稛裍齫困涃", ["桰"]="咶話刮鴰趏舌姡頢括活适栝佸髺聒銛葀懖筈萿蛞闊秳", ["剌"]="莿鵣辣辢剌揧瘌楋蝲", ["來"]="來萊淶徠崍郲騋猍鯠鶆庲棶斄逨麳唻賚睞勑誺倈憖猌麥", ["賴"]="賴籟癩瀨藾攋懶嬾獺", ["牢"]="牢窂哰", ["勞"]="勞撈嘮癆簩蟧憥澇僗髝膋犖", ["老"]="老姥栳恅", ["樂"]="樂轢濼躒擽爍鑠藥櫟纅礫瓅皪觻嚛", ["畾"]="摞騾螺蔂虆瘰礌雷擂攂礧儡瓃櫑鑘鐳畾轠罍蕾癗磥累儽樏鸓嫘纍欙纝壘櫐蘽藟讄", ["厽"]="絫厽垒", ["耒"]="頛郲耒銇洡誄", ["磊"]="藞磊", ["頪"]="蘱纇類頪禷", ["离"]="謧璃離縭离醨樆褵漓黐籬灕蘺攡魑螭摛", ["釐"]="犛釐嫠剺孷漦氂", ["蠡"]="盠欚劙", ["里"]="埋霾薶榸厘狸貍梩艃里理鯉俚悝娌裏荲", ["豊"]="體軆禮澧醴豊鱧", ["力"]="勒肋扐仂艻朸玏泐阞竻力屴鳨", ["立"]="涖莅蒞位拉菈颯立粒笠砬岦苙鴗雴泣", ["利"]="犁黎莉黧鯬筣蔾藜邌瓈鵹棃梨蟍蜊鑗利痢浰", ["丽"]="灑籭躧曬廲驪鱺欐丽麗儷鸝酈孋矖穲邐彲釃襹纚", ["戾"]="錑戻戾綟唳蜧捩悷淚", ["隶"]="曃埭逮靆齂棣隸肆蕼肂殔隶", ["栗"]="栗溧慄鷅凓篥麜瑮塛搮", ["秝"]="秝歷曆磿靂癧櫪藶瀝攊厤", ["連"]="連漣鰱翴鏈璉僆摙蓮嗹縺", ["良"]="剆郎稂桹鋃硠浪蜋琅狼欴踉莨艆駺躴筤閬哴蓈廊榔螂瑯朗朖誏俍崀埌蒗娘良粮悢", ["兩"]="倆兩脼緉蜽魎輛", ["量"]="糧量", ["了"]="釕了", ["料"]="料炓", ["尞"]="簝潦獠轑橑燎繚璙憭爒僚嫽療膫鷯遼撩嘹寮飉竂鐐蟟瞭嶚镽", ["列"]="例鮤栵洌銐峛列裂烈冽迾蛚茢颲鴷挒姴", ["巤"]="鑞蠟邋臘臈擸擖獵躐鬣儠犣鱲巤獦", ["林"]="婪惏啉漤醂林琳淋痳箖霖菻罧棽綝郴禁襟僸澿噤凚齽", ["粦"]="潾膦憐燐鄰轔嶙粼磷疄麟鱗璘翷瞵獜驎鏻繗僯橉撛遴粦甐", ["吝"]="麐吝悋", ["閵"]="藺閵躪轥", ["夌"]="棱稜輘倰祾踜凌菱陵綾鯪淩夌蔆崚掕𩜁庱睖", ["霝"]="靈霛麢霝醽櫺蘦孁龗酃爧欞", ["令"]="令怜零魿命冷跉嶺領阾柃袊詅旍舲齡囹鴒蛉鈴苓伶泠瓴拎刢玲聆竛軨笭翎閝鹷昤駖彾呤狑秢岭紷砱羚姈蕶澪", ["流"]="流硫琉旒瑬裗", ["六"]="六圥", ["翏"]="醪嫪嘐賿顟膠轇摎髎熮廖憀豂漻翏寥蓼鄝鷚繆勠疁飂鏐僇瘳璆謬蟉樛磟戮剹穋", ["龍"]="驡龐瀧籠豅朧龓聾礱嚨蘢櫳襱瓏曨鸗蠪巃竉攏儱龍躘隴壠壟寵龏", ["婁"]="樓摟耬僂婁螻髏蔞鞻艛膢廔嘍瞜簍慺鷜褸遱謱嶁甊塿漊鏤瘻擻藪籔氀縷屢數屨窶貗", ["屚"]="漏瘺屚", ["鹵"]="滷鹵樐蓾鏀", ["魯"]="魯櫓穭", ["圥"]="灶竈鼀", ["坴"]="睦坴陸稑鵱鯥淕踛", ["彔"]="剝龣祿淥睩琭箓碌盝娽彔趢簶綠逯錄醁騄菉籙", ["鹿"]="鄜鹿漉轆簏螰麓騼摝廘蔍鏕", ["呂"]="櫚閭吕侣梠郘絽莒筥", ["寽"]="酹脟捋蛶埒鋝浖哷寽", ["旅"]="玈旅膂祣", ["率"]="率繂膟蟀", ["䜌"]="蠻矕變鸞巒灤欒鑾臠羉䜌灓圝曫孿彎灣攣孌戀㪻", ["卵"]="卵關関聯", ["亂"]="覼亂薍", ["侖"]="蜦綸論崘掄菕惀睔碖溣倫淪輪侖陯鯩棆踚耣錀", ["羅"]="羅蘿籮儸饠欏囉鑼邏", ["蠃"]="驘鸁蠃臝羸", ["麻"]="麻痲犘縻醿爢蘼靡摩魔磨劘麽麼塺麾", ["馬"]="馬碼罵鷌鰢瑪榪傌禡媽", ["買"]="買蕒嘪鷶賣", ["曼"]="獌鬘謾慢嫚縵曼饅蔓鰻墁鏝槾漫幔蟃", ["尨"]="厖駹狵尨浝哤牻娏蛖𥆙痝𪁪", ["茻"]="莽茻", ["莽"]="蟒漭", ["毛"]="毛髦旄芼氂枆酕牦耄覒眊耗秏毣", ["矛"]="堥蓩猱茅罞蝥鶜瞀愗袤雺懋楙矛蟊髳鍪鞪糅腬柔揉蹂鍒騥蝚葇鞣鰇瑈鶔楺煣輮韖敄務鶩騖婺霚嵍霧霿楘", ["卯"]="卯昴泖茆奅窌聊貿鄮劉留蒥鶹騮榴瑠瘤遛鎦飀鰡嵧餾瀏懰柳珋罶嬼溜霤廇塯", ["冃"]="媢冃冒帽瑁賵艒萺勗勖", ["皃"]="貌皃藐邈", ["眉"]="眉楣嵋湄鶥瑂郿葿媚篃蝞煝", ["美"]="美渼媄", ["門"]="蔄闅閩蕄門捫悶聞閿問", ["冡"]="蒙冡濛艨朦矇饛檬鸏幪蠓靀曚", ["夢"]="蘉瞢懜懵甍薨夢鄸", ["米"]="謎迷米眯洣蔝麊冞糜敉侎麋蘪攗", ["羋"]="羋蝆", ["冖"]="冟冖冪羃濗鼏", ["覓"]="覓漞", ["芇"]="芇蹣瞞顢樠慲鬗滿鏋懣璊", ["綿"]="綿棉緜矊", ["臱"]="臱矏櫋籩邊", ["丏"]="汅沔丏眄麪", ["免"]="免娩勉俛鮸冕絻婏浼鞔悗嬎晚挽輓脕莬", ["面"]="蝒緬湎愐偭勔面麵", ["苗"]="貓描媌緢苗猫庿", ["蔑"]="礣蔑篾蠛懱幭鱴衊瀎襪韤韈", ["民"]="眠民泯怋岷珉罠笢鈱抿刡敃愍暋蟁", ["皿"]="猛艋蜢皿孟", ["閔"]="憫閔潣簢燘", ["黽"]="澠黽僶繩譝憴鱦蠅鄳鼆", ["名"]="名洺眳詺銘茗酩姳", ["明"]="莔明盟萌奣", ["冥"]="瞑嫇慏冥榠鄍溟螟猽蓂覭暝幎幂塓", ["末"]="眛沬佅韎帓粖末昩秣靺眜抹妺怽沫袜", ["沒"]="沒歿莈", ["莫"]="蟆鬕饃模摸嫫謨膜摹暮慕募墓慔莫寞漠幕鏌瘼鄚瞙嗼塻貘驀", ["牟"]="牟眸侔蛑麰劺恈鴾", ["某"]="某謀媒煤腜禖", ["母"]="脢挴海毐呣拇母胟姆畮踇苺莓敏鰵慜毋梅酶鋂每毎痗晦誨悔霉", ["畝"]="畝畞", ["姥"]="姥峔", ["目"]="瞐苜目", ["木"]="木沐朷蚞霂", ["乃"]="乃鼐疓奶仍艿辸礽扔芿", ["奈"]="奈柰渿捺", ["南"]="南楠腩湳揇萳罱喃諵", ["夒"]="獿犪擾", ["匘"]="腦惱瑙匘碯硇𣳦", ["內"]="妠內笍芮枘汭鈉蜹抐納衲魶軜蒳豽肭吶焫訥", ["能"]="態能螚褦", ["尼"]="泥屔苨坭迡埿旎狔抳尼呢怩柅蚭跜秜痆昵", ["孴"]="孨孴", ["屰"]="斥訴泝愬遡塑溯遻柝鶚諤齶鍔遌崿偔堮湂鱷噩咢鑩鄂鰐萼愕顎朔槊蒴坼拆逆屰縌蝷", ["匿"]="暱慝匿", ["輦"]="輦鄻攆", ["念"]="淰唸埝趝諗稔棯腍捻錜敜惗菍", ["鳥"]="島搗鵃瞗鳥蔦窵", ["臬"]="甈臬嵲臲闑", ["聶"]="攝聶鑷躡襵懾囁欇灄顳讘", ["寧"]="濘獰檸儜薴鬡鑏嬣寍寗甯寧鸋嚀聹", ["農"]="嶩噥鬞擃齈癑農辳憹膿儂濃醲襛穠檂", ["弄"]="筭弄梇哢硦", ["女"]="拿拏詉蒘笯挐絮呶怓帑奴砮駑孥努弩怒袽帤女籹恕如茹洳鴽蕠汝肗", ["虐"]="虐瘧謔", ["派"]="庍派脈脉衇眽覛霢", ["佩"]="佩珮", ["配"]="配嶏", ["朋"]="崩堋漰倗朋鵬棚鬅掤淜輣繃弸", ["彭"]="澎彭膨蟚蟛憉", ["皮"]="陂詖彼柀佊貱跛披鈹帔鮍耚狓翍旇秛紴皮疲被髲鞁骳波碆菠簸駊頗坡玻破婆蔢", ["匹"]="匹鴄", ["片"]="爿片沜", ["票"]="標鏢瘭幖熛蔈膘褾票飄漂螵瞟嫖旚僄慓彯摽翲嘌縹醥顠篻剽勡薸瓢鰾驃", ["頻"]="瀕頻顰蘋嚬", ["品"]="臨瀶品", ["甹"]="俜甹聘娉騁梬", ["平"]="平怦砰抨閛伻評坪苹枰泙蚲胓匉萍", ["咅"]="蓓倍菩掊剖婄踣箁咅部培犃瓿殕醅棓涪賠陪毰焙", ["菐"]="樸璞墣撲轐獛蹼襆濮纀醭僕菐穙鏷幞", ["普"]="譜普", ["七"]="切砌沏七柒叱", ["妻"]="妻萋淒凄悽鶈郪緀霋棲", ["桼"]="漆桼膝厀", ["其"]="基箕朞稘萁期諅其錤諆欺娸魌僛唭棋旗淇祺琪騏綦麒蜞綨蜝棊碁鯕踑藄櫀璂禥惎帺", ["奇"]="奇畸剞羇掎攲躸踦寄徛欹崎觭碕綺婍騎琦鵸錡輢齮犄猗椅旖陭檹漪倚", ["畁"]="畁萆", ["齊"]="儕麡齋穧擠躋齏齎櫅齌隮賷虀濟癠霽齊臍蠐懠薺鱭嚌劑齍", ["乞"]="乞盵齕紇籺圪訖吃扢疙屹仡迄釳忔汔矻麧", ["豈"]="獃剴凱愷塏鎧颽暟闓豈隑皚嵦敳磑螘覬溰顗", ["啓"]="啓啟棨綮晵闙启", ["气"]="愾忾刏汽氣气忥餼鎎熂霼犔", ["咠"]="楫檝湒咠葺緝諿輯箿蕺戢濈霵揖", ["牽"]="牽縴", ["僉"]="厱歛臉醶鹼薟匳獫蘞籢斂瀲撿羷殮簽僉憸譣檢瞼儉顩嬐嶮噞驗險劒劍𩏩", ["遷"]="遷櫏韆僊躚蹮", ["前"]="媊煎湔鬋剪翦譾揃箭葥前騚歬", ["虔"]="虔鰬榩", ["遣"]="遣繾譴", ["欠"]="坎扻砍芡欠杴鍁", ["爿"]="臧牂戕贓藏奘臟將漿鱂蔣螿槳獎醬鏘蹡嶈斨爿牆妝莊裝壯疒床牀狀", ["強"]="繈襁膙鏹勥強", ["牆"]="薔廧蘠嬙檣", ["喬"]="驕嬌憍穚鷮蕎喬簥撟矯鱎敽蟜譑蹻繑鞽趫嘺橋僑鐈毊轎嶠獢屩", ["且"]="虘蔖摣袓怚罝謯姐抯飷且趄笡查柤樝皻渣楂苴駔租蒩祖組珇靻粗徂殂麆伹蛆沮咀疽雎狙岨砠坥刞覰覷跙筯菹葅阻俎詛鉏豠鋤耡齟助", ["妾"]="霎翣帹接椄菨鯜妾淁踥", ["侵"]="鋟綅祲埐梫濅浸侵駸寢寑薓", ["秦"]="轃秦螓臻蓁搸溱榛", ["頃"]="顈傾頃穎潁熲", ["殸"]="殸聲謦磬罄馨", ["慶"]="慶羻", ["丘"]="丘邱蚯丠", ["秋"]="鍫篍愀湫揪揫啾鬏秋鰍楸秌鞦鶖萩甃醔愁僽", ["囚"]="鮂囚泅苬", ["求"]="救求球逑賕蛷莍殏梂俅脙絿銶毬捄觩", ["區"]="摳彄剾謳歐區鷗甌漚瞘嘔櫙膒蓲醧鏂毆塸貙樞驅軀嶇鰸敺傴嫗饇", ["取"]="陬棷掫緅趣取鯫棸鄹郰齱菆箃黀驟最襊蕞嘬諏娵娶聚埾藂叢繓撮", ["去"]="佉呿抾弆祛袪阹胠魼去麮鼁砝劫鉣蜐怯", ["全"]="拴栓跧痊詮荃銓筌輇硂佺駩絟恮峑全仝牷", ["泉"]="線泉葲灥", ["犬"]="猚畎汱甽犬", ["郤"]="腳脚卻却谻郤綌", ["囷"]="菌麇麕囷箘攈", ["肰"]="嘫然肰繎燃蹨橪撚", ["冉"]="那挪娜柟抩聃舑坍髯蚺呥冉袡苒姌", ["人"]="千仟芊阡汘迁杄人仁朲佞", ["壬"]="紝鵀拰賃任壬恁銋荏餁栠袵飪妊衽", ["刃"]="涊紉忍荵刃認仞軔韌肕牣杒訒", ["日"]="涅捏篞衵日馹", ["戎"]="娀戎茙駥狨絨", ["茸"]="茸髶搑榵穁", ["冗"]="宂冗", ["肉"]="朒肉", ["乳"]="啂乳", ["辱"]="耨槈鎒搙褥傉辱縟蓐鄏溽媷嗕", ["耎"]="陾腝堧稬愞煗餪渜偄瑌軟輭蝡碝耎緛媆", ["甤"]="甤蕤", ["睿"]="睿叡璿壡濬", ["閏"]="撋瞤潤閏", ["若"]="若婼惹諾蠚逽蹃箬楉鄀", ["弱"]="嫋弱溺蒻搦愵", ["塞"]="賽塞簺僿寨", ["三"]="三弎", ["散"]="散糤繖饊鏾潸霰撒", ["桑"]="桒桑磉顙嗓搡", ["掃"]="掃埽", ["色"]="色赩", ["嗇"]="濇嗇穡薔轖繬嬙懎", ["歰"]="澀歰澁", ["杀"]="閷鎩殺蔱摋煞榝刹", ["沙"]="硰娑挱挲桫渻沙紗砂鯊裟桬髿魦莎莏", ["彡"]="杉彡衫髟釤䑣彤浵肜", ["山"]="山疝邖汕訕仙秈苮屾", ["删"]="珊跚姗删栅", ["羴"]="羴羼", ["扇"]="扇煽傓", ["善"]="橏嫸善譱蟮鱔僐鄯墡磰繕膳饍", ["商"]="商蔏螪", ["上"]="丄上", ["尚"]="當襠鐺簹璫檔儅蟷擋黨讜欓譡闣瓽鏜闛鼞曭儻戃矘爣攩淌倘躺趟堂坣棠糛螳隚橖掌廠敞僘氅常嘗裳徜尚甞鋿嫦償賞瞠撐樘橕牚埫", ["勺"]="豹趵尥箹杓約扚釣瘹芍酌灼勺彴犳妁汋仢葯礿肑瓝的靮馰玓魡", ["舌"]="絬舌", ["射"]="謝榭射麝", ["設"]="設蔎", ["申"]="電胂申伸呻紳眒柛訷抻神朄", ["身"]="身銵", ["罙"]="探棎賝琛穼深", ["宷"]="宷審瀋嬸", ["昚"]="昚傄", ["甚"]="湛媅黮糂堪戡嵁歁勘磡墈偡碪椹揕踸鍖斟諶愖瘎煁甚葚", ["升"]="升昇陞抍", ["生"]="猜輤綪倩棈蒨篟生牲笙甥鉎珄鼪猩狌眚貹崝精菁鶄蜻鼱婧睛箐聙旌清圊請凊䝼靚情晴夝靜靖睲惺性姓靗鯖青靘掅胜曐星鮏腥鯹醒篂", ["省"]="省渻箵", ["聖"]="檉蟶聖聽廳", ["尸"]="杘尸鳲屍屎", ["失"]="眣蛈迭跌瓞昳胅軼苵镻詄泆趃柣抶秩帙紩袠翐妷失佚劮", ["師"]="篩師鰤蒒獅螄", ["濕"]="儑濕漯礘隰溼", ["十"]="針汁卙十什", ["石"]="柘妬蠹沰拓橐袥驝斫磭磔跖石碩祏鉐鼫", ["食"]="飤食蝕飾飭", ["史"]="吏倳剚事史使駛", ["矢"]="彘璏薙知蜘智鼅潪踟雉矢痴", ["士"]="茌士仕", ["氏"]="氏衹紙帋扺坁汦忯眂舐芪祇疧軝蚔", ["世"]="貰跇迣世泄枻詍靾袣抴呭勩屜鰈渫煠喋鞢殜葉弽韘枼楪揲鍱偞蝶牒蹀諜堞牃褋惵碟屧屟紲齛疶緤媟", ["示"]="示祁狋視眎沶", ["是"]="鞮隄堤鍉蝭醍緹提瑅題媞褆禔騠趧鯷踶徥匙是諟翨睼寔湜遈", ["筮"]="噬筮簭澨遾", ["奭"]="奭襫", ["手"]="杽手", ["守"]="守狩", ["首"]="道導首", ["受"]="受綬授", ["壽"]="禱擣檮壔懤濤燾翿幬儔譸籌疇躊燽薵魗醻壽璹鑄", ["嘼"]="獸嘼", ["殳"]="吺祋投骰酘坄殳杸", ["尗"]="椒茮踧蔋惄戚慼鏚慽磩寂嘁墄摵督錖裻傶蹙槭縬顣敊琡俶埱淑婌尗叔掓菽鮛", ["疋"]="疋蝑壻婿胥稰楈諝湑揟醑糈楚礎憷齼濋儊綀疎疏蔬梳", ["孰"]="熟孰塾", ["鼠"]="鼠癙", ["蜀"]="襡噣斣歜斀孎濁鐲鸀擉獨髑韣斸钃欘躅蠋燭囑矚屬属蠾觸臅觕蜀", ["朮"]="訹怵朮炢術述秫沭蒁", ["束"]="涑鏉摗駷嗽瘶欶漱捒悚竦娕梀速餗殐遬蔌樕藗誎束", ["庶"]="褯遮蔗鷓樜蟅嗻鍍度渡庶剫踱喥謶席蓆墌摭蹠", ["刷"]="涮刷", ["衰"]="蓑缞衰榱", ["雙"]="雙艭愯㩳", ["爽"]="摤磢漺傸鷞騻爽塽樉", ["水"]="沝水", ["厶"]="私厶", ["司"]="司伺覗笥詞祠柌嗣孠飼呞", ["虒"]="擨搋鷈謕嗁蹏鼶遞虒榹磃傂螔禠褫篪歋", ["斯"]="嘶撕斯廝蟴燍鐁凘澌", ["絲"]="絲蕬鷥", ["巳"]="巳祀汜戺起熙媐圯异巸", ["四"]="訵四泗駟柶牭呬", ["寺"]="等待寺持峙痔跱歭洔畤秲庤時鰣塒蒔榯恃侍詩邿特", ["宋"]="浨俕宋", ["叟"]="㮴艘嫂瞍謏叜叟傁廋醙遚餿搜颼溲鎪獀鄋螋騪瘦", ["夙"]="洬夙", ["素"]="素傃嗉膆塐", ["宿"]="宿蓿縮樎蹜摍", ["粟"]="粟憟", ["肅"]="簫蕭瀟潚彇蟰橚嘯歗熽繡鏽肅鷫驌鱐璛", ["祘"]="蒜祘", ["算"]="纂繤算匴篹篡攥", ["遂"]="隊邃譢遂隧燧襚旞璲檖澻鐆鐩穟墜", ["歲"]="噦翽鐬濊歲劌顪穢薉獩饖奯", ["孫"]="孫猻蓀搎遜愻", ["飧"]="飧蕵", ["隼"]="隼榫准準", ["索"]="索溹", ["惢"]="惢蕊蘂繠", ["瑣"]="鎖瑣溑", ["它"]="佗拕它蛇袉鴕駝紽鮀陀沱跎詑酡迱舵柁鉈", ["蹋"]="傝搨蹹榻遢鰨毾塌溻蹋躢闒", ["譶"]="誩譶霅", ["台"]="胎台邰鮐孡苔抬駘炱菭跆殆怠迨紿詒軩咍佁枲辝鈶笞齝眙治始怡貽飴瓵珆", ["臺"]="懛儓臺擡薹嬯檯籉", ["覃"]="鷣撢憛潭譚覃鐔藫橝蟫燂醰禫嘾贉瞫蕈鱏簟驔磹", ["曇"]="曇壜", ["炭"]="炭湠", ["弢"]="弢詜", ["匋"]="掏蜪陶萄啕淘騊匋祹綯", ["替"]="替暜僣", ["天"]="添忝悿舔菾天吞祆蚕", ["田"]="田佃畋畇鈿沺甸", ["甜"]="銛栝餂恬湉甜狧", ["廷"]="蜓涏綎珽脡侹頲廷庭鼮莛筳霆娗挺艇鋌梃誔", ["同"]="鮦侗恫痌同仝銅桐峒硐筒洞烔挏酮鲖眮衕哃絧姛詷胴駧迵戙", ["禿"]="禿鵚", ["突"]="突宊揬鼵葖鶟堗", ["圖"]="啚圖", ["土"]="社肚土吐芏杜靯荰", ["兔"]="菟兔鵵梚", ["退"]="腿退褪", ["豚"]="豚遯", ["妥"]="妥鵎挼骽脮餒浽娞鮾綏荽鋖桵", ["瓦"]="瓦邷", ["丸"]="骫丸紈芄汍肒", ["萬"]="糲犡噧邁勱蠆厲勵礪蠣蠇癘濿櫔巁贎萬", ["亡"]="忙芒茫恾吂汒朚邙杗荒肓衁巟詤慌謊喪亡望莣朢鋩硭忘网罔蛧網輞棢惘菵誷魍妄盲蝱虻氓甿", ["王"]="皇惶遑堭煌餭騜艎隍湟徨篁蝗凰偟媓韹葟皝汪尪迋逛誑匡筐框眶誆邼恇劻洭軭狂軖鵟俇王蚟彺旺諻喤瑝鍠揘", ["往"]="暀誑枉往", ["危"]="鮠峞頠詭垝陒觤恑蛫祪洈姽桅佹跪危峗硊卼", ["威"]="崴威葳隇蝛鰄楲", ["微"]="矀覹黴薇媺微溦癓徽幑", ["韋"]="禕郼褘諱媁幃違圍韋闈湋鍏潿韙煒暐偉瑋葦椲韡愇緯", ["唯"]="匯擓淮睢嶉趡踓雖濉倠婎蓶維惟唯濰琟鷕帷鵻", ["爲"]="譌嬀潙蟡僞噅撝爲鄬蔿儰寪蘤", ["尾"]="娓尾浘", ["委"]="矮躷捼倭涹踒餧諉痿萎逶覣蜲委緌", ["未"]="寐魅鬽昧妹眛沬未味鮇菋", ["畏"]="煨偎隈椳鰃渨葨揋猥嵔鍡碨腲餵畏", ["胃"]="喟胃謂媦蝟渭煟緭", ["尉"]="尉熨慰罻犚蔚螱褽鳚", ["衛"]="衞讏躛", ["𥁕"]="媪蝹溫𥁕輼蕰殟豱緼韞瘟揾氲煴馧蒀藴褞醖慍蘊腽榅嗢", ["文"]="旻旼汶忞盿枚玫玟文紋蚊雯彣馼鳼鼤抆紊", ["我"]="莪哦娥峨峩鵝俄蛾睋涐誐硪我騀餓義儀轙檥蟻艤礒羛議犧曦羲", ["巫"]="巫誣莁鵐", ["屋"]="握幄偓渥齷楃喔腛媉屋剭", ["烏"]="烏嗚鰞歍鎢瑦鄔螐隖塢溩", ["吳"]="吳蜈鋘麌祦誤悞娛虞澞鸆俁噳", ["無"]="墲橅膴幠鄦撫無瞴蕪璑鷡譕憮舞廡嫵甒潕儛", ["五"]="吾衙鼯浯珸郚齬鯃娪梧峿五伍寤啎晤悟逜窹捂鋙語圄敔", ["午"]="卸汻滸午仵旿忤迕杵籞蘌篽禦許御", ["武"]="賦陚武鵡珷碔娬", ["兀"]="虺豗鼿虫髡軏扤兀杌屼矹", ["勿"]="脗吻刎伆勽沕忽昒惚匫笏曶淴物勿芴岉", ["戊"]="茂戊", ["夕"]="夕汐穸", ["兮"]="盻兮枍", ["西"]="粞洒西卤卥栖茜哂", ["希"]="桸郗絺脪瓻希晞莃鵗稀睎豨悕俙欷浠唏", ["昔"]="借唶藉躤蜡齰醋錯措厝逪剒鵲碏踖趞皵舄斮簎諎矠庴籍耤猎昔惜腊焟棤", ["析"]="菥蜤析皙蜥淅惁晰", ["屖"]="厗屖遟謘稺", ["息"]="息熄媳鄎瘜蒠", ["悉"]="僁悉蟋窸", ["犀"]="摨犀遲墀", ["醯"]="橀醯", ["奚"]="謑膎鞵榽鷄雞谿嵠溪磎螇鸂奚豯徯蹊騱傒鼷蒵貕慀", ["習"]="摺磖褶慴霫習鰼騽飁槢熠", ["徙"]="簁徙褷屣縰蓰", ["喜"]="嘻嬉禧熹僖歖譆瞦喜憙蟢糦饎", ["系"]="係系", ["舄"]="寫瀉舄獡潟磶蕮", ["隙"]="虩隙", ["下"]="丅下芐", ["夏"]="榎廈嗄夏", ["先"]="洗先銑跣毨姺筅冼箲駪兟詵侁", ["鮮"]="鮮廯癬蘚", ["咸"]="感鱤顑轗撼憾喊緘瑊黬減羬麙咸鹹醎諴椷輱鍼箴葴鱵", ["閑"]="閑嫻鷴", ["顯"]="顯韅", ["臽"]="萏窞惂輡錎埳臽淊欿蜭啗鵮餡陷爓諂讇閻焰壛櫩燄掐", ["縣"]="縣懸", ["相"]="相廂湘緗箱葙想霜孀鸘驦", ["香"]="香萫", ["鄉"]="曏鄉薌膷響饗蠁嚮卿", ["襄"]="囊蠰曩灢儾孃瓤鑲釀瓖驤襄纕忀欀饟攘禳穰躟瀼獽儴蘘鬤勷壤嚷讓懹攮", ["向"]="晌餉向珦", ["象"]="潒像象橡蟓襐勨鱌嶑", ["梟"]="梟蟂鄡", ["囂"]="囂虈", ["小"]="觘抄鈔訬炒吵耖仯眇渺杪秒篎妙玅釥小少麨尠", ["肖"]="梢捎筲鞘艄蛸髾輎旓弰鮹綃颵莦娋稍哨揱潲睄悄俏峭陗帩誚消宵霄硝銷逍魈痟焇肖韒趙箾踃削矟", ["孝"]="酵窙哮庨涍孝", ["劦"]="栛珕荔脅姭搚拹愶嗋熁協勰劦叶", ["韰"]="瀣韰薤", ["燮"]="燮躞", ["心"]="沁吣心杺伈", ["辛"]="親寴儭瀙辛新薪襯櫬嚫莘騂垶觪", ["囟"]="崽偲腮鰓揌顋愢毢諰細思緦罳禗楒葸恖颸囟顖毸", ["釁"]="釁舋亹斖虋璺", ["興"]="興臖嬹", ["行"]="筕桁行胻衡蘅珩洐荇絎", ["杏"]="杏莕", ["幸"]="幸倖婞涬緈悻睪", ["凶"]="酗凶匈兇訩胸胷洶恟詾", ["兄"]="怳況貺况兄", ["夐"]="讂矎夐瓊藑觼", ["休"]="茠烋恘休貅咻庥鵂髤髹", ["秀"]="透莠誘蜏琇秀銹", ["戌"]="滅搣烕戌珬銊", ["砉"]="剨湱砉", ["須"]="盨須鬚嬃蕦", ["需"]="羺獳擩譳懦糯需繻鑐儒濡襦嚅顬鱬嬬臑醹蠕孺", ["畜"]="畜蓄稸滀傗鄐慉", ["玄"]="弦絃舷痃胘蚿伭婱玄眩玹玆詃泫鉉炫袨衒惤", ["旋"]="旋漩璇琁蜁嫙鏇縼", ["薛"]="躠嶭櫱薛辥孼蘖蠥孽糵", ["學"]="攪覺澩斆鱟嶨礐觷學鷽", ["穴"]="泬坹穴袕鴪", ["血"]="侐血恤卹賉欰洫殈", ["熏"]="櫄薰曛勲熏燻獯纁醺臐爋", ["尋"]="襑憳蕁撏燖尋潯樳鄩", ["卂"]="汛軐卂訊訙迅阠扟籸蝨", ["巽"]="撰饌譔鐉選繏潠蟤僎襈巽簨", ["牙"]="邪衺牙芽齖呀枒雅厊庌訝迓砑犽疨岈谺颬鴉釾", ["襾"]="賈檟價覀襾", ["亞"]="椏錏鵶啞瘂亞婭俹稏惡噁堊蝁", ["焉"]="嘕嫣焉鄢蔫漹傿", ["延"]="唌誕蜑蛋硟涎脠梴鋋埏挻鯅延筵蜒狿郔綖莚", ["言"]="唁這言琂圁誾訔狺", ["沿"]="船沿鉛", ["炎"]="倓緂毯菼裧賧睒舕談郯惔錟淡痰餤啖腅剡覢掞炎琰棪扊", ["奄"]="庵鵪菴馣晻唵黤埯淹閹崦醃掩奄罨裺俺腌殗餣", ["弇"]="弇媕黭揜渰鞥", ["衍"]="愆衍", ["妟"]="堰躽宴蝘偃郾鶠褗匽鼴鰋揠", ["彦"]="喭鏟産簅摌嵼滻顏楌偐齴遃嵃彦諺", ["猒"]="猒懕饜嬮厭黶檿魘厴擪壓靨", ["雁"]="雁鳫鴈贗", ["燕"]="燕驠嬿鷰醼讌嚥酀", ["鬳"]="獻甗巘讞鬳瓛囐齾钀", ["豔"]="豔灩", ["央"]="鴦佒咉眏姎坱映泱盎駚軮醠央秧殃鞅鉠雵胦柍詇岟炴怏紻英瑛霙韺媖渶鶧楧暎", ["羊"]="样佯詳洋翔庠祥痒姜羌蜣猐唴羊徉烊蛘眻鴹恙羕樣漾", ["昜"]="湯踼蝪薚簜盪偒蕩燙啺碭婸愓璗崵逿暢畼腸場傷殤觴慯禓塲陽楊揚瘍煬鍚暘颺昜輰敭鰑諹瑒鸉餳", ["養"]="鯗養癢瀁", ["幺"]="幺吆", ["夭"]="笑夭镺芺妖祅枖訞殀仸妋飫沃鋈", ["爻"]="崤郩敎較肴淆倄爻餚殽笅駁", ["垚"]="撓鐃譊橈磽墝穘顤燒饒蟯蕘襓繞遶嬈趬蹺翹澆驍僥堯垚嶢獟膮嘵憢曉皢", ["謠"]="搖遙瑤徭鰩媱傜颻窰愮鷂榣嗂猺謠鎐", ["繇"]="繇蘨櫾", ["舀"]="滔韜縚謟慆幍槄搯瑫稻蹈舀", ["要"]="腰要葽喓闄偠騕婹", ["耶"]="耶椰爺瑘鎁", ["也"]="他拖駞池灺鍦虵也忚髢杝肔馳阤施絁葹弛箷衪暆迆酏匜迤扡崺貤地", ["曳"]="洩曳拽", ["業"]="礏業鄴驜嶪鸈澲", ["曄"]="曄爗燁曅皣瞱", ["一"]="一弌", ["衣"]="哀依衣扆庡偯", ["壹"]="曀殪豷懿饐鷧撎亄噎壹", ["夷"]="桋荑銕鴺鮧洟羠咦夷姨痍峓恞眱蛦胰跠", ["頤"]="茝洍姬宧頤弬", ["疑"]="礙儗懝譺癡疑嶷觺擬薿凝", ["乙"]="劜札扎蚻紮軋圠穵挖鳦耴乙肊", ["以"]="似姒耜佀以苡苢", ["矣"]="唉埃欸娭挨騃俟竢涘誒矣", ["乂"]="艾鴱餀刈乂", ["弋"]="戴襶貸代袋岱黛玳帒甙酨試弒忒貣鴏栻侙恜式軾拭鉽烒弋芅黓隿杙釴", ["亦"]="夜鵺迹跡亦弈奕帟腋掖焲液", ["役"]="椺役疫垼炈鈠豛坄", ["邑"]="唈浥裛俋挹邑悒", ["易"]="賜儩舓易敡鬄睗晹痬蜴埸逷剔踢惕錫裼緆", ["医"]="鷖翳嫛黳繄医嫕蘙瞖殹贀醫毉蠮", ["佾"]="洕佾屑榍糏", ["益"]="隘賹搤縊螠謚諡蠲溢鎰齸貖益嗌膉鷁艗", ["埶"]="褹勢藝囈埶蓺槸爇褻暬熱槷", ["異"]="禩異潩廙趩瀷翼熼", ["豙"]="豙藙顡毅", ["睪"]="斁籜蘀鐸凙襗擇澤鸅蠌檡釋繹睪譯嶧懌驛醳圛墿燡", ["意"]="噫譩醷意鷾憶億臆繶澺薏檍癔", ["因"]="欭烟胭咽恩煾因姻茵鞇氤洇駰絪裀", ["垔"]="黫甄薽籈煙湮堙禋闉垔陻諲歅鄄", ["音"]="諳腤嬜喑揞隌罯暗闇黯歆愔韾音瘖窨湆", ["殷"]="殷慇溵磤", ["冘"]="冘抌狖貁耽眈酖妉黕衴瓭馾髧紞鈂沈沉枕莐霃鴆訦忱邥魫", ["寅"]="寅蔩鏔演縯戭夤螾濥瞚", ["淫"]="淫霪婬", ["尹"]="芛伊咿蛜笋尹", ["引"]="紖矧訠弞引蚓鈏靷", ["隱"]="隱櫽嶾癮懚檼穩", ["印"]="印鮣", ["胤"]="胤酳", ["賏"]="瀴甖鸚櫻嚶罌鸎譻賏嬰瓔纓攖蘡癭廮巊", ["鷹"]="應鷹膺譍噟", ["盈"]="盈楹", ["熒"]="鶯罃嫈褮覮謍䁝嶸嵤榮瑩蠑禜醟檾煢焭縈營鎣塋濴熒螢滎濙瀅", ["贏"]="嬴瀛籝贏攍", ["邕"]="郺齆甕罋雍邕嗈灉癰廱雝壅饔噰澭擁臃", ["永"]="永栐泳詠咏", ["用"]="通俑蓪桶捅痛筩誦傭慵鱅滽墉鏞鄘槦銿甬勇涌踊蛹恿慂悀埇踴庸用佣", ["攸"]="絛窱蓧條鋚鞗樤鰷莜翛筱篠修脩樇滫悠攸浟蓨滌儵倐倏虪", ["麀"]="鏖𤏶麀", ["憂"]="憂優瀀櫌鄾嚘耰獶纋懮", ["尤"]="尤疣肬沋訧忧蚘", ["由"]="袖岫牰抽妯紬怞鮋菗宙胄冑伷駎油由蚰秞邮釉柚鼬苖笛迪頔軸舳", ["斿"]="游遊蝣斿", ["酉"]="楢逎遒蝤揂酒媨鞧緧趥酋崷鰌煪醜猶猷輶偤莤蕕庮槱梄丣酉", ["郵"]="郵腄", ["又"]="絠醢珛栯有友右宥囿侑酭姷又佑祐賄蛕烠倄鮪洧痏郁戫哊", ["幼"]="黝坳軪眑拗鴢靿狕袎怮窈苭泑呦蚴幼", ["于"]="侉夸姱胯跨誇垮銙骻咵釫摦鮬嶀扝刳郀挎袴絝褲恗洿瓠鄠污杇圬鴮盓汙樗摴荂雩吁盱訏扜旴冔紆陓迂虶于盂竽邘玗芋杅釪骬謣宇", ["予"]="野壄序抒芧杼墅舒紓妤伃予預忬豫蕷澦", ["余"]="斜茶荼梌搽塗佘賒畬舍捨騇涻稌悇庩捈途酴駼鵌涂嵞峹筡蒤徐俆敘漵除篨滁蒢蜍鵨瑹余餘艅狳雓悆", ["於"]="閼菸於淤箊唹扵瘀棜", ["臾"]="萸臾腴諛楰庾斞", ["俞"]="褕偷媮鍮緰牏揄窬歈俞隃毹輸鄃腧逾榆愉渝瑜蕍覦蝓踰崳羭堬瘉萮騟愈貐喻諭", ["舁"]="攑藇嶼鱮舉櫸舁與輿旟璵歟譽嬩擧鸒礜穥", ["禺"]="齵偶耦藕髃蕅愚隅禺湡堣嵎鰅鍝遇寓庽媀喁顒", ["魚"]="蘇穌魚漁䱷", ["羽"]="詡栩珝祤羽頨", ["禹"]="踽萭聥楀齲禹瑀鄅", ["玉"]="珏砡匤玉鳿頊", ["聿"]="筆潷硉律葎聿銉", ["育"]="育毓棛錥焴淯蜟堉逳蘛", ["昱"]="煜翊翌昱喅", ["矞"]="瞲璚劀鱊譎潏鐍憰噊驈橘繘獝燏遹鷸矞霱", ["獄"]="嶽鸑哭獄", ["𧶠"]="竇續覿黷讟殰讀櫝牘儥贕皾瓄瀆豄韇嬻犢匵藚襩贖𧶠", ["鬱"]="鬱欝灪爩", ["肙"]="絹狷蜎弲娟悁捐涓鵑睊焆鞙埍罥羂瓹梋鋗駽琄剈肙", ["冤"]="冤蒬", ["淵"]="婣鼘囦淵裫奫", ["元"]="冠莞脘筦梡岏刓园忨蚖黿抏玩貦翫妧完捖垸綄院皖晥浣頑睆鯇元沅芫杬邧阮俒", ["爰"]="暖煖喛緩鰀嵈鍰湲媛瑗援褑諼愋楥爰鶢蝯猨", ["原"]="羱豲謜縓原源厵嫄騵榞獂蒝願傆愿", ["員"]="員圓塤損縜隕殞溳磒霣愪勛鄖篔貟韻", ["袁"]="薳袁園轅猿榬溒遠", ["睘"]="癏擐還環鬟寰闤糫圜鐶轘澴繯檈儇翾蠉嬛譞懁獧噮彋睘", ["夗"]="涴埦豌剜眢蜿帵碗椀盌腕惋捥睕琬鴛鵷惌宛怨葾夗婉菀苑踠畹倇晼黦焥", ["曰"]="曰汩", ["𦚢"]="𦚢𩨭", ["月"]="刖枂月跀抈鈅玥蚏", ["戉"]="泧眓越狘戉鉞樾怴", ["岳"]="岳捳", ["龠"]="讑籲爚禴蘥鑰瀹龠籥鸙", ["云"]="魂沄忶囩夽雲芸耘妘紜云耺蕓澐橒抎", ["匀"]="枃笉郇絢眴盷訇迿姰畇荀詢洵恂峋珣槆筍箰旬殉徇侚均鈞袀汮呁筠荺匀韵輷揈鍧渹赹憌惸咰", ["允"]="唆梭葰誜朘捘荾酸狻痠鋑脧悛吮萒沇抁馻兖渷兗焌允狁玧俊晙餕畯駿竣皴逡踆夋埈陖鵕浚峻", ["帀"]="帀沞魳迊匝咂韴砸", ["災"]="灾災", ["𢦏"]="𢦏栽哉烖載渽睵溨裁酨蛓胾", ["宰"]="宰縡梓滓", ["再"]="再洅", ["贊"]="贊趲讚酇饡濽襸攢瓚禶穳囋鑽劗纘儧鄼欑籫巑攅", ["葬"]="髒葬", ["早"]="早草愺騲皁皂", ["蚤"]="蚤慅騷搔鰠溞颾瘙瑵糔鼜", ["喿"]="藻澡璪繰躁趮操幧懆鄵鐰臊鱢燥噪髞喿譟劋橾", ["則"]="廁則賊鰂鱡蠈側萴測惻崱", ["仄"]="仄昃", ["曾"]="潧繒增憎磳曾矰罾熷竲橧譄蹭層贈僧鬙甑鄫驓嶒噌鏳", ["乍"]="作鲊痄厏詐咋笮榨炸乍拃酢祚胙阼飵秨迮柞昨怍砟莋岝鈼筰葃舴窄蚱齚泎", ["占"]="頕煔炶詀站檆黏粘枮霑沾覘鉆占颭佔苫痁蛅阽敁掂點玷店坫黇扂拈鮎砧笘跕貼帖怗呫", ["詹"]="甔擔儋聸膽黵澹憺瞻詹蟾噡譫幨襜韂贍檐簷舚", ["展"]="碾輾展搌", ["斬"]="慚慙鏨槧暫蹔斬獑嶃覱摲漸塹壍嬱螹蔪", ["章"]="章樟彰漳鄣璋嫜獐慞墇障麞蔁暲嶂瘴", ["丈"]="丈杖仗", ["兆"]="挑洮桃逃咷鼗鞉駣𣂁脁晁兆旐狣鮡垗姚珧銚恌烑餆筄艞佻祧朓庣趒聎眺覜頫絩跳窕誂", ["肁"]="肁肇", ["乇"]="咤吒灹矺奼侘詫秅秺亳托託魠馲侂飥仛虴杔乇宅厇", ["折"]="晢狾誓逝銴折娎哳踅哲蜇悊嚞喆硩浙晣焎", ["者"]="觰諸者堵赭撦扯闍奢鍺都醏覩睹暏賭帾楮屠瘏廜鷵緒豬猪瀦藸櫫褚著箸儲躇櫧藷蠩煮渚煑陼翥署薯曙書暑鐯擆櫡", ["耴"]="踂輒耴鮿", ["貞"]="偵幀湞貞楨禎赬遉", ["真"]="寘䡩黰顛滇齻槙瘨傎蹎厧巔癲瑱填窴闐磌鷏嗔搷鎮縝真禛稹蒖鬒瞋謓慎", ["疹"]="沴趁紾跈殄抮駗珍診畛疹軫胗袗眕飻餮", ["朕"]="黱朕鰧螣栚眹騰滕縢儯幐藤謄膡籐勝蕂榺塍媵賸", ["爭"]="琤崢鬇爭箏猙埩諍凈錚棦竫睜淨", ["徵"]="徵癥澂懲", ["正"]="綻淀靛症竀征怔正鉦鴊眐佂整政証定顁錠掟", ["之"]="之芝志痣娡誌蚩妛嗤媸旹滍", ["支"]="支枝肢汥衼馶鳷忮伎豉翅翄妓庋跂蚑吱岐歧鬾技芰攱庪頍屐", ["巵"]="巵梔", ["戠"]="識幟織熾樴職軄戠膱蟙", ["直"]="置值植埴惪德稙淔直犆殖", ["執"]="騺摯贄鷙墊慹謺褺蓻縶漐蟄執瓡", ["止"]="祉址止趾芷沚阯齒紕", ["只"]="只胑疻軹咫枳抧伿齞", ["旨"]="稽詣栺榰脂鴲指旨恉嗜蓍鰭耆鮨鬐", ["至"]="致輊駤跮荎緻至鵄胵痓咥窒蛭垤耋姪絰恎挃庢銍秷螲侄桎郅晊室", ["制"]="制淛製掣痸猘", ["陟"]="陟騭", ["疐"]="啑疐嚏懥", ["質"]="質躓懫礩櫍劕鑕", ["中"]="中忠衷忡浺盅种沖翀仲", ["重"]="撞幢橦噇𩪘艟憧畽董蕫箽懂湩曈童僮瞳罿犝潼穜動慟堹諥蹱重緟蝩褈鐘鍾籦種腫踵歱喠偅衝揰尰", ["眾"]="潨眾", ["州"]="洲州喌酬詶", ["舟"]="鵃輈侜矪舟", ["周"]="裯啁禂綢翢錭雕凋琱鯛鵰彫奝調蜩惆婤稠椆周輖賙郮晭倜", ["粥"]="粥鬻", ["肘"]="肘疛紂葤酎", ["帚"]="婦帚箒鯞", ["朱"]="咮株誅邾鼄跦袾鴸蛛殊趎珠朱侏絑祩鮢硃姝銖茱洙陎", ["竹"]="竺篤竹筑築茿", ["逐"]="篴蓫逐鱁", ["主"]="飳妵黈蘣罜拄柱駐註鉒軴住跓嵀主麈宔炷注疰蛀霔", ["宁"]="貯詝柠宁佇竚苧紵羜眝", ["壴"]="壴廚躕櫥幮樹澍尌", ["祝"]="祝呪咒柷", ["爪"]="抓爪笊找", ["專"]="竱團摶篿慱剸鄟漙鷒轉傳囀縳專磚甎塼嫥膞鱄蓴", ["孨"]="孨孱", ["隹"]="蜼堆嵟碓推蓷陮魋嶊崔猚椎顀隹錐萑騅鵻誰脽", ["追"]="蘬磓塠頧鴭鎚搥縋膇槌追桘巋歸", ["卓"]="悼淖罩鵫趠踔棹鋽掉逴焯綽婥繛卓桌倬啅晫", ["叕"]="蝃欼綴醊畷啜餟腏錣輟娺窡鵽掇剟裰敠惙罬叕歠逫", ["甾"]="輜淄錙緇甾菑鶅椔鯔", ["兹"]="糍茲滋孳嵫嗞鎡鰦鶿稵螆慈鷀磁礠濨", ["子"]="孜仔孖子虸耔秄杍籽字茡芓牸李", ["秭"]="姊秭趀笫胏柹柿", ["自"]="郋自洎臮垍詯", ["宗"]="淙鬃漴粽宗倧綜錝賨琮悰孮誴崇崈踪", ["奏"]="奏凑腠輳楱湊", ["足"]="足莡捉齪娖浞鋜趗珿哫促", ["卒"]="晬祽綷淬啐倅焠碎誶濢噿臎醉翠悴萃瘁顇粹睟賥卒稡猝椊捽崪窣崒踤錊", ["族"]="蔟嗾鷟鏃瘯簇族", ["罪"]="罪辠𢶀", ["尊"]="尊樽罇嶟繜撙噂譐僔蹲鱒鐏遵鷷墫竴", ["左"]="左佐袏蹉瑳搓磋溠傞醝瘥鹺嵯嵳蒫艖齹縒褨嗟差鎈槎髊", ["坐"]="脞侳挫夎遳銼剉莝趖矬痤睉坐座髽", ["丵"]="鑿糳", ["翪"]="艐堫葼鬷嵕猣鯼椶騣蝬翪緵稯鬉糉", } p4hxgkd3nqdqsnmqv4fwdv8kun36g6f 모듈:och-pron 828 448053 4388254 2025-07-07T10:55:09Z CHK2605 33979 새 문서: local export = {} local m_string_utils = require("Module:string utilities") local codepoint = m_string_utils.codepoint local gsub = m_string_utils.gsub local len = m_string_utils.len local safe_require = require("Module:load").safe_require local u = m_string_utils.char local colour_1 = "var(--wikt-palette-lightblue, #d9ebff)" local colour_2 = "var(--wikt-palette-cyan, #eaffff)" local colour_3 = "var(--wikt-palette-paleblue, #f8f9fa)" local function zh_fmt(text) return text ~... 4388254 Scribunto text/plain local export = {} local m_string_utils = require("Module:string utilities") local codepoint = m_string_utils.codepoint local gsub = m_string_utils.gsub local len = m_string_utils.len local safe_require = require("Module:load").safe_require local u = m_string_utils.char local colour_1 = "var(--wikt-palette-lightblue, #d9ebff)" local colour_2 = "var(--wikt-palette-cyan, #eaffff)" local colour_3 = "var(--wikt-palette-paleblue, #f8f9fa)" local function zh_fmt(text) return text ~= "" and '<span class="Hani" lang="zh">' .. text .. '</span>' or "" end local function insert_pron(reading_temp, text, system, i, return_note, index) reading_temp = gsub(reading_temp, "([̥̊]) ", "%1") local part = mw.text.split(reading_temp, " ") local IPA = gsub(part[1], "^%*", "") table.remove(part, 1) return ((i == 1 and (len(text) == 1 or (index or 1) == 1)) and "/*" or "") .. IPA .. (len(text) == i and "/" or "") .. ((#part > 0 and return_note) and (" " .. table.concat(part, " ")) or "") end local function pron_table(titlechar, reading, system, reading_index, count, i) return system == "BS" and { nil, '<b>' .. zh_fmt(titlechar) .. '</b>', reading_index .. "/" .. count, reading[1], '‹ <i>' .. gsub(reading[2], '([XH])', '<sup>%1</sup>') .. '</i> ›', '<span class="IPAchar">' .. gsub(insert_pron(reading[3], titlechar, "BS", 1, true), "ˤ", "ˁ") .. '</span>', reading[4] } or { nil, '<b>'..zh_fmt(titlechar)..'</b>', reading_index .. "/" .. count, reading[1], zh_fmt("[["..reading[2].."]]"), zh_fmt("[["..reading[3].."]]"), reading[4], zh_fmt("[["..reading[5].."]]"), '<span class="IPAchar">/*' .. reading[6] .. '/</span>', gsub(gsub(gsub(reading[7], "([一-鿿㐀-䶿﨎﨏﨑﨓﨔﨟﨡﨣﨤﨧-﨩𠀀-𪛟𪜀-𮯯𰀀-𱍏,]+)", zh_fmt("%1")), "([^>,][^>,][^>,][^>,][^>,][^>,],)", "%1<br>"), "([一-鿿㐀-䶿﨎﨏﨑﨓﨔﨟﨡﨣﨤﨧-﨩𠀀-𪛟𪜀-𮯯𰀀-𱍏])", "[[%1]]") } end local function get_data(system, ch) return safe_require(("Module:zh/data/och-pron-%s/%s"):format(system, ch)) or nil end function export.ipa(index_text, preview) local titlechar = mw.title.getCurrentTitle().text local reading_index = mw.text.split(index_text, ";") local output_text = {} local systems = { "BS", "ZS" } local indiv_pronunciation = { ["BS"] = {}, ["ZS"] = {} } local rand = "" local fields = { ["BS"] = { "[[w:윌리엄 백스터|백스터]]–[[w:로랑 사가르|사가르]] 체계 1.1 " .. "([http://ocbaxtersagart.lsait.lsa.umich.edu/ 2014])", "<small>한자</small>", "<small>독음 번호</small>", "<small>표준 중국어<br/>(병음)</small>", "<small>중고음</small>", "<small>상고음</small>", "<small>영어 뜻</small>" }, ["ZS"] = { "[[w:정장상팡|정장상팡]] 체계 (2003)", "<small>한자</small>", "<small>독음 번호</small>", "<small>번호</small>", "<small>성부</small>", "<small>운부</small>", "<small>하위 운부</small>", "<small>대응<br>중고운</small>", "<small>상고음</small>", "<small>주석</small>" } } for system_seq, system in ipairs(systems) do for i, cp in ipairs { codepoint(titlechar, 1, -1) } do local ch = u(cp) local data_module = get_data(system, ch) if data_module then local count = 0 for index, value in ipairs(data_module) do count = count + 1 end local reading_number = reading_index[i] and (mw.text.split(reading_index[i], ',')[system_seq] or reading_index[i]) or "y" if reading_number == "y" then for reading_index, reading in ipairs(data_module) do table.insert(indiv_pronunciation[system], pron_table(ch, reading, system, reading_index, count, i)) end elseif reading_number == "n" then break else for indiv_number in mw.text.gsplit(reading_number, '%+') do table.insert(indiv_pronunciation[system], pron_table(ch, data_module[tonumber(indiv_number)], system, indiv_number, count, i)) end end end end if indiv_pronunciation[system][1] then local hash, results = {}, {} local value_eff for _, value in ipairs(indiv_pronunciation[system]) do local valeur = value table.remove(valeur, 1) value_eff = table.concat(valeur) if not hash[value_eff] then hash[value_eff] = true table.insert(value, 1, nil) results[#results + 1] = value end end rand = rand ~= "" and rand or gsub("oc-" .. value_eff, "[^A-Za-z0-9]", codepoint) local fmt = { header = '\n{| class="wikitable mw-collapsible mw-collapsed" id="mw-customcollapsible-oc' .. rand .. '" style="width:100%; margin:0; text-align:center; border-collapse: collapse; border-style: hidden; display: table;"', lv1 = '\n|-\n! style="background-color:' .. colour_1 .. '" colspan=' .. #results+1 .. '|', lv2 = '\n|-\n! style="background-color:' .. colour_2 .. '; width:8em"|', lv3 = '\n| style="background-color:' .. colour_3 .. '"|', closing = '\n|}', BS_note = '\n|-\n|colspan=' .. #results+1 .. [=[ style="text-align:left; font-size:90%"|<div class="standard-box mw-collapsible mw-collapsed"> '''백스터–사가르 표기법 범례:''' <div class="mw-collapsible-content"> * 소괄호 "()"는 해당 음의 존재가 불확실함을 나타냅니다.<br> * 대괄호 "[]"는 해당 음의 정체가 불확실함을 나타냅니다(예: 운미(coda) *[t]는 실제로는 *-t 또는 *-p일 수 있음).<br> * 꺾쇠괄호 "&lt;>"는 삽입 접사(infix)를 나타냅니다.<br> * 하이픈 "-"은 형태소 경계를 나타냅니다.<br> * 마침표 "."은 음절 경계를 나타냅니다.</div> </div>]=] } table.insert(output_text, fmt.header) for field_index, field in ipairs(fields[system]) do if field:find("small") then local field_set = {} for _, result in ipairs(results) do table.insert(field_set, result[field_index]) end if table.concat(field_set) ~= "" then table.insert(output_text, fmt.lv2 .. field .. fmt.lv3 .. table.concat(field_set, fmt.lv3)) end else table.insert(output_text, fmt.lv1 .. field) end end table.insert(output_text, (system == "BS" and fmt.BS_note or "") .. fmt.closing) end end local fold = '\n* <div title="expand" class="mw-customtoggle-oc' .. rand .. '"> ' .. '[[w:상고 한어|상고 한어]]<span style="float:right; border:1px solid #ccc; border-radius:1px;' .. ' padding:0 0; font-size:90%">▼</span>' .. preview .. '</div>' return output_text[1] and fold .. gsub(table.concat(output_text), "%[%[%]%]", "") or "" end function export.retrieve_pron(text, reconstruction, no_intro, index) if type(text) == "table" then text = text.args[1] end text = require("Module:links").remove_links(text) local retrieve_result = {} local intro = no_intro and "" or "<span style='font-style: normal'>[[w:상고 한어|OC]]</span> " if not reconstruction then local index_set if index and index ~= "y" then index_set = mw.text.split(index, ",") end for char_index, cp in ipairs { codepoint(text, 1, -1) } do local char_pronunciation = {} local ch = u(cp) local data_module = get_data("ZS", ch) if data_module then local reading_no = index_set and index_set[char_index] or "y" if reading_no ~= "y" then for number in mw.text.gsplit(reading_no, "+") do table.insert(char_pronunciation, data_module[tonumber(number)][6]) end else for _, reading in ipairs(data_module) do table.insert(char_pronunciation, reading[6]) end end else return nil end table.insert(retrieve_result, table.concat(char_pronunciation, len(text) == 1 and ", *" or "/")) end end return intro .. (reconstruction or "<span class=\"IPA\" lang=\"och-Latn-fonipa\">" .. "*" .. table.concat(retrieve_result, " ") .. "</span>") end function export.generate_show(text, index) local index_set = mw.text.split(index, ";") local extract_results = { ["BS"] = {}, ["ZS"] = {} } local result = {} local position = { ["BS"] = 3, ["ZS"] = 6 } local fmt = { beginning = { ["BS"] = "\n*: <small>(''[[w:윌리엄 백스터|백스터]]–[[w:로랑 사가르|사가르]]'')</small>: " .. '<span style="font-size:95%">', ["ZS"] = "\n*: <small>(''[[w:정장상팡|정장상팡]]'')</small>: " .. '<span style="font-size:95%">', }, ending = { ["BS"] = "</span>", ["ZS"] = "</span>" } } for system_seq, system in ipairs({ "BS", "ZS" }) do for i, cp in ipairs { codepoint(text, 1, -1) } do local char_pronunciation = {} local ch = u(cp) local data_module = get_data(system, ch) if data_module then local existing_pron = {} local reading_number = index_set[i] and (mw.text.split(index_set[i], ',')[system_seq] or index_set[i]) or "y" if reading_number == "y" then index = 0 for _, reading in ipairs(data_module) do index = index + 1 local reading_temp = reading[position[system]] if not existing_pron[reading_temp] then table.insert(char_pronunciation, insert_pron(reading_temp, text, system, i, false, index)) existing_pron[reading_temp] = true end end elseif reading_number == "n" then break else index = 0 for indiv_number in mw.text.gsplit(reading_number, '%+') do index = index + 1 local reading_temp = data_module[tonumber(indiv_number)][position[system]] if not existing_pron[reading_temp] then table.insert(char_pronunciation, insert_pron(reading_temp, text, system, i, false, index)) existing_pron[reading_temp] = true end end end table.insert(extract_results[system], table.concat(char_pronunciation, len(text) == 1 and ", " or "|")) else extract_results[system] = {} break end end if extract_results[system][1] then table.insert(result, fmt.beginning[system] .. '<span class="IPAchar">' .. table.concat(extract_results[system], "&nbsp; ") .. '</span>' .. fmt.ending[system]) end end text = result[1] and gsub(table.concat(result), "|%*", "|") or nil text = text and gsub(text, "/|", "|") or nil text = text and gsub(text, "|", '<span style="padding-left:2px; padding-right:2px">|</span>') return text end function export.link(frame, arg) local args = arg or frame:getParent().args local text, meaning, lit = args[1], args[2] or args['gloss'] or nil, args['lit'] or nil return require("Module:zh/link").link(frame, nil, { "*" .. text, tr = export.retrieve_pron(text, args["tr"] or false, args["no_intro"] or false, args["id"] or false), gloss = meaning, lit = lit }, mw.title.getCurrentTitle().subpageText) end return export hex6nowr58jg82mr063higwbm9doznu 모듈:load 828 448054 4388255 2025-07-07T10:56:24Z CHK2605 33979 새 문서: local export = {} local load_data = mw.loadData local loaded = package.loaded local main_loader = package.loaders[2] local require = require local setmetatable = setmetatable local loaders, loaded_data, mt local function get_mt() mt, get_mt = {__mode = "kv"}, nil return mt end -- main_loader returns a loader function if the module exists, or nil if it doesn't. local function get_loader(modname) if loaders == nil then local loader = main_loader(modname) loaders = setme... 4388255 Scribunto text/plain local export = {} local load_data = mw.loadData local loaded = package.loaded local main_loader = package.loaders[2] local require = require local setmetatable = setmetatable local loaders, loaded_data, mt local function get_mt() mt, get_mt = {__mode = "kv"}, nil return mt end -- main_loader returns a loader function if the module exists, or nil if it doesn't. local function get_loader(modname) if loaders == nil then local loader = main_loader(modname) loaders = setmetatable({[modname] = loader or false}, mt or get_mt()) return loader end local loader = loaders[modname] if loader == nil then loader = main_loader(modname) loaders[modname] = loader or false end return loader or nil end local function get_data(modname, loader) if loaded_data == nil then local data = load_data(modname) loaded_data = setmetatable({[loader] = data}, mt or get_mt()) return data end local data = loaded_data[loader] if data == nil then data = load_data(modname) loaded_data[loader] = data end return data end --[==[ Like `require`, but returns `nil` if a module does not exist, instead of throwing an error. Outputs are cached, which is faster for all modules, but much faster for nonexistent modules, since `require` will attempt to use the full loader each time because loading failures don't get cached.]==] function export.safe_require(modname) local mod = loaded[modname] if mod == nil and get_loader(modname) then -- Call with require instead of the loader directly, as it protects against infinite loading loops. return require(modname) end return mod end --[==[ Like `mw.loadData`, but it does not generate a new table each time the same module is loaded via this function. Instead, it caches the returned data so that the same table can be returned each time, which is more efficient.]==] function export.load_data(modname) return get_data(modname, get_loader(modname)) end --[==[ Like `export.load_data` (itself a variant of `mw.loadData`), but returns `nil` if a module does not exist, instead of throwing an error. Outputs are cached, which is faster for all modules, but much faster for nonexistent modules, since `mw.loadData` will attempt to use the full loader each time because loading failures don't get cached.]==] function export.safe_load_data(modname) local loader = get_loader(modname) if loader == nil then return nil end return get_data(modname, loader) end return export ane0ji5isx9pytu6xaiacn5a70oo2t2 모듈:zh-han 828 448055 4388258 2025-07-07T11:38:02Z CHK2605 33979 새 문서: local m_str_utils = require("Module:string utilities") local codepoint = m_str_utils.codepoint local find = m_str_utils.find local get_section = require("Module:pages").get_section local gsub = m_str_utils.gsub local sub = m_str_utils.sub local m_links = require("Module:links") local m_script_utils = require("Module:script utilities") local export = {} local PAGENAME = mw.loadData("Module:headword/data").pagename local cangjie = { A = "日", B = "月", C = "金", D = "木"... 4388258 Scribunto text/plain local m_str_utils = require("Module:string utilities") local codepoint = m_str_utils.codepoint local find = m_str_utils.find local get_section = require("Module:pages").get_section local gsub = m_str_utils.gsub local sub = m_str_utils.sub local m_links = require("Module:links") local m_script_utils = require("Module:script utilities") local export = {} local PAGENAME = mw.loadData("Module:headword/data").pagename local cangjie = { A = "日", B = "月", C = "金", D = "木", E = "水", F = "火", G = "土", H = "竹", I = "戈", J = "十", K = "大", L = "中", M = "一", N = "弓", O = "人", P = "心", Q = "手", R = "口", S = "尸", T = "廿", U = "山", V = "女", W = "田", X = "難", Y = "卜", Z = "重" } local radicals = { "一","丨","丶","丿","乙","亅", "二","亠","人","儿","入","八","冂","冖","冫","几","凵","刀","力","勹","匕","匚","匸","十","卜","卩","厂","厶","又", "口","囗","土","士","夂","夊","夕","大","女","子","宀","寸","小","尢","尸","屮","山","巛","工","己","巾","干","幺","广","廴","廾","弋","弓","彐","彡","彳", "心","戈","戶","手","支","攴","文","斗","斤","方","无","日","曰","月","木","欠","止","歹","殳","毋","比","毛","氏","气","水","火","爪","父","爻","爿","片","牙","牛","犬", "玄","玉","瓜","瓦","甘","生","用","田","疋","疒","癶","白","皮","皿","目","矛","矢","石","示","禸","禾","穴","立", "竹","米","糸","缶","网","羊","羽","老","而","耒","耳","聿","肉","臣","自","至","臼","舌","舛","舟","艮","色","艸","虍","虫","血","行","衣","襾", "見","角","言","谷","豆","豕","豸","貝","赤","走","足","身","車","辛","辰","辵","邑","酉","釆","里", "金","長","門","阜","隶","隹","雨","靑","非", "面","革","韋","韭","音","頁","風","飛","食","首","香", "馬","骨","高","髟","鬥","鬯","鬲","鬼", "魚","鳥","鹵","鹿","麥","麻", "黃","黍","黑","黹", "黽","鼎","鼓","鼠", "鼻","齊", "齒", "龍","龜", "龠" } local simplified_radical = { ['讠']='言',['门']='門',['饣']='食',['飞']='飛',['马']='馬',['见']='見',['贝']='貝',['纟']='糸',['车']='車',['长']='長',['韦']='韋',['风']='風',['钅']='金',['鸟']='鳥',['竜']='龍',['龙']='龍',['页']='頁',['斉']='齊',['齐']='齊',['麦']='麥',['亀']='龜',['龟']='龜',['鱼']='魚',['黾']='黽',['鼡']='鼠',['歯']='齒',['齿']='齒',['卤']='鹵',['𬺞']='龜',['丬']='爿',['黒']='黑',['黄']='黃', } local codes = { c = '중국어 간체', m = '중국 대륙', j = '일본어', k = '한국어' } -- "as" 또는 "sn" 매개변수 이름의 글자에 대한 기준 -- - 글자는 1개 또는 2개여야 합니다. -- - 글자는 c, m, j, k 중 하나여야 합니다. -- - 글자는 [cm]jk 순서여야 합니다. local function validate_letters(letters) local letter_count = #letters return letter_count == 3 and (letters == 'mjk' or letters == 'cjk') or letter_count == 2 and (letters == 'jk' or letters == 'cj' or letters == 'mj') or letter_count == 1 and codes[letters] end local function mul_link(term) return m_links.full_link({lang = require('Module:languages').getByCode('zh'), term = term.."//", tr="-"}) end -- 설명: -- 이 상자는 위키미디어 공용의 214개 부수 분류로 연결됩니다. -- -- 목적: -- 공용에서 각 한자 부수 분류는 해당 글자가 잘 설명된 위키낱말사전 항목으로 직접 연결됩니다. -- 위키낱말사전의 각 부수 항목에서 해당하는 공용 분류로 다시 연결하면 한자를 탐색하기가 더 쉬워집니다. local function radical(name,number,variant) number = number or 1 local padleft = ("%03d"):format(number) local text = '<div class="noprint standard-box nowrap" style="margin:0;font-size:90%;width:fit-content;text-align:left;float:right"><div style="float:left; margin-right:0.5em">[[Image:Commons-logo.svg|24px|none|link=Commons:Category:Radical ' .. padleft .. ']]</div>[[Commons:Category:Radical ' .. padleft .. "-0|See images of <br>'''Radical " .. number .. " <big>" .. ((name and name ~= '') and PAGENAME or '※') .. "</big>''']]</div>" if name == PAGENAME or (variant and variant ~= '') then text = text .. '[[분류:한자 부수| ]]' else text = text .. '[[분류:한자 기본형 부수| ]]' end return text end function export.simp(frame) local args = frame:getParent().args local trad = args[1] or '' if trad == '' then require('Module:debug').track("zh-han-simp-no-arg1") trad = mw.loadData("Module:zh/data/st")[PAGENAME] or PAGENAME end local nocap = args['nocap'] or '' local alt = args['a'] or '' local from = {args['f'] or '',args['f2'] or ''} local to = {args['t'] or '',args['t2'] or ''} if from[1] == '' and to[1] ~= '' then from[1] = trad end local text = {} local result = '' result = (nocap == '' and 'S' or 's') .. mul_link(trad) .. '의 간체자' if alt ~= '' then result = result .. ' 및 ' .. mul_link(alt) end for i=1,2 do if from[i] ~= '' then if to[i] == '' then table.insert(text,mul_link(from[i]) .. " → 독립적으로 표시할 수 없는 구성 요소") elseif to[i] == ' ' or to[i] == '&nbsp;' then table.insert(text,mul_link(from[i]) .. '의 생략') else table.insert(text,mul_link(from[i]) .. ' → ' .. mul_link(to[i])) end end end if #text > 0 then result = result .. ' (' .. table.concat(text,' 및 '):gsub('및 ' .. mul_link(from[i]) .. '의 생략',' 및') .. ')' end return result end function export.cp() return string.format('%.4X', codepoint(PAGENAME)) end do local function check_translingual_only() for _, sec in pairs(mw.loadData("Module:headword/data").page.L2_sections) do if sec ~= "한자" then return end end require('Module:debug').track('zh-han/translingual-only character') end function export.character(frame) local args = {} for arg, val in pairs(frame:getParent().args) do -- 빈 인수는 nil로 설정 if val ~= '' then args[arg] = val end end if radicals[tonumber(args['rn'])] ~= (simplified_radical[args['rad']] or args['rad']) then error('부수 번호(rn)와 부수(rad)가 일치하지 않습니다.') end local text = { insert = table.insert } local categories = { insert = table.insert } local as = tostring(tonumber(args['as'] or '-1')) if as == '0' then text:insert(radical(args['rad'], args['rn'], (args['var'] or ''))) end -- [[Module:headword]]로 표제어를 생성하여 페이지 제목이 Hani(일반 한자) 스크립트로 태그되도록 함. -- {{Han char}}는 Translingual 섹션에서만 사용된다고 가정. local mul = require("Module:languages").getByCode("mul") local Hani = require("Module:scripts").getByCode("Hani") local sort_key = args['rad'] .. args['as'] .. PAGENAME text:insert( require("Module:headword").full_headword{ lang = mul, sc = Hani, heads = { args['head'] }, categories = {}, pos_category = "symbols", sort_key = sort_key, } ) text:insert(" (''[[강희자전 부수]] " .. (args['rn'] or '') .. ", '' [[부록:한자 부수/" .. (args['rad'] or '') .. '|' .. (args['rad'] or ' ') .. ']]+' .. as) if args['asj'] then text:insert("''(중국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asj']) .. "''(일본어)''") end if args['asc'] then text:insert("''(정체자)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asc']) .. "''(간체자)''") end if args['ask'] then text:insert("''(중국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['ask']) .. "''(한국어)''") end if args['asjk'] then text:insert("''(중국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asjk']) .. "''(일본어 및 한국어)''") end if args['asj+'] then text:insert("''(중국어 및 한국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asj+']) .. "''(일본어)''") end if args['ask+'] then text:insert("''(중국어 및 일본어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['ask+']) .. "''(한국어)''") end if args['asc+'] then text:insert("''(정체자 및 일본어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asc+']) .. "''(간체자)''") end if args['asc++'] then text:insert("''(정체자, 일본어 및 한국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asc++']) .. "''(간체자)''") end if args['ascj'] then text:insert("''(정체자)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['ascj']) .. "''(간체자 및 일본어)''") end if args['ascj+'] then text:insert("''(정체자 및 한국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['ascj+']) .. "''(간체자 및 일본어)''") end if args['asm'] then text:insert("''(정체자)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asm']) .. "''(중국 대륙)''") end if args['asmj'] then text:insert("''(정체자)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asmj']) .. "''(중국 대륙 및 일본어)''") end if args['asmj+'] then text:insert("''(정체자 및 한국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asmj+']) .. "''(중국 대륙 및 일본어)''") end if args['asm+'] then text:insert("''(정체자 및 일본어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asm+']) .. "''(중국 대륙)''") end if args['asm++'] then text:insert("''(정체자, 일본어 및 한국어)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asm++']) .. "''(중국 대륙)''") end if args['ascjk'] then text:insert("''(정체자)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['ascjk']) .. "''(간체자, 일본어 및 한국어)''") end if args['asmjk'] then text:insert("''(정체자)'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asmjk']) .. "''(중국 대륙, 일본어 및 한국어)''") end if args['asmjk+'] then text:insert("''(정체자(대만))'', " .. (args['rad'] or '') .. '+' .. tonumber(args['asmjk+']) .. "''(중국(대륙, 홍콩), 일본어 및 한국어)''") end text:insert(", " .. (args['sn'] or '') .. " 획") if args['snj'] then text:insert("''(중국어)''") end if args['snc'] then text:insert("''(정체자)''") end if args['snk'] then text:insert("''(중국어)''") end if args['snjk'] then text:insert("''(중국어)''") end if args['snj+'] then text:insert("''(중국어 및 한국어)''") end if args['snk+'] then text:insert("''(중국어 및 일본어)''") end if args['snc+'] then text:insert("''(정체자 및 일본어)''") end if args['snc++'] then text:insert("''(정체자, 일본어 및 한국어)''") end if args['sncj'] then text:insert("''(정체자)''") end if args['sncj+'] then text:insert("''(정체자 및 한국어)''") end if args['snm'] then text:insert("''(정체자)''") end if args['snmj'] then text:insert("''(정체자)''") end if args['snmj+'] then text:insert("''(정체자 및 한국어)''") end if args['snm+'] then text:insert("''(정체자 및 일본어)''") end if args['snm++'] then text:insert("''(정체자, 일본어 및 한국어)''") end if args['sncjk'] then text:insert("''(정체자)''") end if args['snmjk'] then text:insert("''(정체자)''") end if args['snmjk+'] then text:insert("''(정체자(대만))''") end -- Find parameters specifying additional stroke numbers and add notes for -- them. for param_name, value in pairs(args) do if type(param_name) == "string" then local letters = param_name:match("^sn(%l+)%+*$") if letters then if validate_letters(letters) then if value and value ~= '' then local label = {} for letter in letters:gmatch(".") do table.insert(label, codes[letter]) end label = table.concat(label, " 및 ") text:insert(", " .. value .. "획") text:insert("''(" .. label .. ")''") end else require("Module:debug").track('zh-han/incorrect stroke number parameter') -- return error("알 수 없는 획수 매개변수 이름 " .. param_name .. "입니다.") end end end end if args['canj'] then local canj = args['canj'] local canj_split = mw.text.split(canj,',') for i = 1, #canj_split do if canj_split[i]:match('^%u+$') then canj_split[i] = canj_split[i]:gsub('[%(%)]','') canj_split[i] = m_script_utils.tag_text(canj_split[i]:gsub('%u',cangjie), mul, Hani) .. ' ([[부록:창힐수입법/' .. canj_split[i]:sub(1,1):lower() .. '|' .. canj_split[i] .. ']])' else return error('"canj" 매개변수 값이 유효하지 않습니다.') end end text:insert(", ''[[부록:창힐수입법|창힐 입력]]'' " .. table.concat(canj_split,' or ')) if #canj_split > 1 then categories:insert("[[분류:창힐 코드가 여러 개인 한자]]") end end if args['four'] then local four = args['four'] local four_split = mw.text.split(four,',') for i=1,#four_split do if not four_split[i]:match('[<>]') then four_split[i] = four_split[i]:gsub('(%d)(%d%d%d)%.?(%d?)','[[부록:사각호마/%1|%1%2<sub>%3</sub>]]') else return error('"four" 매개변수 값이 유효하지 않습니다.') end end text:insert(", ''[[부록:사각호마|사각호마]]'' " .. table.concat(four_split,' or ')) if #four_split > 1 then categories:insert("[[분류:사각호마 코드가 여러 개인 한자]]") end end if args['ids'] then local ids = args['ids'] local ids_split = mw.text.split(ids,',') for i=1, #ids_split do if not ids_split[i]:match('[%[%]]') then if find(ids_split[i], '^[⿲⿳](.)%1%1$') then categories:insert('[[분류:같은 글자를 세 개 합친 한자]]') end if find(ids_split[i], '^[⿰⿱](.)%1$') then categories:insert('[[분류:같은 글자를 두 개 합친 한자]]') end local before = {} ids_split[i] = gsub(ids_split[i], "([⺀-⻳ -〿アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン㇀-㇣〇一-鿿㐀-䶿﨎﨏﨑﨓﨔﨟﨡﨣﨤﨧-﨩𠀀-𪛟𪜀-𮯠𰀀-𲎯])", function (character) if not before[character] then before[character] = true return "[[" .. character .. "]]" else return character end end) ids_split[i] = ids_split[i]:gsub("^(.-)%f[%(%z](.*)", function(m1, m2) local m1 = m_links.embedded_language_links{term = m1, lang = mul, sc = Hani} m1 = m_script_utils.tag_text(m1, mul, Hani) local letters = { G = '<span class="explain" title="중국 대륙">G</span>', H = '<span class="explain" title="홍콩">H</span>', T = '<span class="explain" title="대만">T</span>', J = '<span class="explain" title="일본">J</span>', K = '<span class="explain" title="한국">K</span>', V = '<span class="explain" title="베트남">V</span>' } return m1 .. m2:gsub(".", letters) end) end end text:insert(", ''[[w:en:Chinese character description languages#Ideographic Description Sequences|자형 구조]]'' " .. table.concat(ids_split,' 또는 ')) if #ids_split > 1 then categories:insert("[[분류:자형 구조가 여러 개인 한자]]") end end text:insert(')') if args['rad'] then if mw.title.getCurrentTitle().nsText == '' then categories:insert("[[분류:한자|" .. sort_key .. "]]") end else if mw.title.getCurrentTitle().nsText == '' then categories:insert("[[분류:부수 정보가 없는 한자]]") end end local params_to_check = { "as", "rn", "sn", "ids", "four", "canj" } local sortkey = args['rad'] and "|" .. args['rad'] or "" for _, param in pairs(params_to_check) do if not args[param] or args[param] == '' then categories:insert("[[분류:한자 정보(" .. param .. ") 없음" .. sortkey .. "]]") end end if type(args['sn']) == "string" and sub(args['sn'],1,1) == '0' then return error('"sn" 매개변수에서 맨 앞의 0을 제거해주세요.') end check_translingual_only() if (get_section(mw.title.getCurrentTitle():getContent(), "한자", 2) or ""):match("%f[^%z\n\r]#[ \t]*%S") then categories:insert("[[분류:한자 문단에 뜻풀이가 있는 한자" .. sortkey .. "]]") end return table.concat(text) .. table.concat(categories) end end return export l52cw2v4aoaw0aod19r08icjazoq158 틀:Han char 10 448056 4388259 2025-07-07T11:40:13Z CHK2605 33979 새 문서: <includeonly>{{#invoke:zh-han|character}}</includeonly><noinclude> {{설명문서}} </noinclude> 4388259 wikitext text/x-wiki <includeonly>{{#invoke:zh-han|character}}</includeonly><noinclude> {{설명문서}} </noinclude> 2a1f9f8o6l8mbs11vze0i3rm4i35run 모듈:pages 828 448057 4388260 2025-07-07T11:42:31Z CHK2605 33979 새 문서: local export = {} local string_utilities_module = "Module:string utilities" local concat = table.concat local find = string.find local format = string.format local getmetatable = getmetatable local get_current_section -- defined below local get_namespace_shortcut -- defined below local get_pagetype -- defined below local gsub = string.gsub local insert = table.insert local is_internal_title -- defined below local is_title -- defined below local lower = string.lower local match... 4388260 Scribunto text/plain local export = {} local string_utilities_module = "Module:string utilities" local concat = table.concat local find = string.find local format = string.format local getmetatable = getmetatable local get_current_section -- defined below local get_namespace_shortcut -- defined below local get_pagetype -- defined below local gsub = string.gsub local insert = table.insert local is_internal_title -- defined below local is_title -- defined below local lower = string.lower local match = string.match local new_title = mw.title.new local require = require local sub = string.sub local title_equals = mw.title.equals local tonumber = tonumber local type = type local ufind = mw.ustring.find local unstrip_nowiki = mw.text.unstripNoWiki --[==[ Loaders for functions in other modules, which overwrite themselves with the target function when called. This ensures modules are only loaded when needed, retains the speed/convenience of locally-declared pre-loaded functions, and has no overhead after the first call, since the target functions are called directly in any subsequent calls.]==] local function decode_entities(...) decode_entities = require(string_utilities_module).decode_entities return decode_entities(...) end local function ulower(...) ulower = require(string_utilities_module).lower return ulower(...) end local function trim(...) trim = require(string_utilities_module).trim return trim(...) end --[==[ Loaders for objects, which load data (or some other object) into some variable, which can then be accessed as "foo or get_foo()", where the function get_foo sets the object to "foo" and then returns it. This ensures they are only loaded when needed, and avoids the need to check for the existence of the object each time, since once "foo" has been set, "get_foo" will not be called again.]==] local current_frame local function get_current_frame() current_frame, get_current_frame = mw.getCurrentFrame(), nil return current_frame end local parent_frame local function get_parent_frame() parent_frame, get_parent_frame = (current_frame or get_current_frame()):getParent(), nil return parent_frame end local namespace_shortcuts local function get_namespace_shortcuts() namespace_shortcuts, get_namespace_shortcuts = { [4] = "WT", [10] = "T", [14] = "CAT", [100] = "AP", [110] = "WS", [118] = "RC", [828] = "MOD", }, nil return namespace_shortcuts end do local transcluded --[==[ Returns {true} if the current {{tl|#invoke:}} is being transcluded, or {false} if not. If the current {{tl|#invoke:}} is part of a template, for instance, this template will therefore return {true}. Note that if a template containing an {{tl|#invoke:}} is used on its own page (e.g. to display a demonstration), this function is still able to detect that this is transclusion. This is an improvement over the other method for detecting transclusion, which is to check the parent frame title against the current page title, which fails to detect transclusion in that instance.]==] function export.is_transcluded() if transcluded == nil then transcluded = (parent_frame or get_parent_frame()) and parent_frame:preprocess("<includeonly>1</includeonly>") == "1" or false end return transcluded end end do local preview --[==[ Returns {true} if the page is currently being viewed in preview, or {false} if not.]==] function export.is_preview() if preview == nil then preview = (current_frame or get_current_frame()):preprocess("{{REVISIONID}}") == "" end return preview end end --[==[ Returns {true} if the input is a title object, or {false} if not. This therefore '''includes''' external title objects (i.e. those for pages on other wikis), such as [[w:Example]], unlike `is_internal_title` below.]==] function export.is_title(val) if not (val and type(val) == "table") then return false end local mt = getmetatable(val) -- There's no foolproof method for checking for a title object, but the -- __eq metamethod should be mw.title.equals unless the object has been -- seriously messed around with. return mt and type(mt) == "table" and getmetatable(mt) == nil and mt.__eq == title_equals and true or false end is_title = export.is_title --[==[ Returns {true} if the input is an internal title object, or {false} if not. An internal title object is a title object for a page on this wiki, such as [[example]]. This therefore '''excludes''' external title objects (i.e. those for pages on other wikis), such as [[w:Example]], unlike `is_title` above.]==] function export.is_internal_title(title) -- Note: Mainspace titles starting with "#" should be invalid, but a bug in mw.title.new and mw.title.makeTitle means a title object is returned that has the empty string for prefixedText, so they need to be filtered out. return is_title(title) and #title.prefixedText > 0 and #title.interwiki == 0 end is_internal_title = export.is_internal_title --[==[ Returns {true} if the input string is a valid link target, or {false} if not. This therefore '''includes''' link targets to other wikis, such as [[w:Example]], unlike `is_valid_page_name` below.]==] function export.is_valid_link_target(target) local target_type = type(target) if target_type == "string" then return is_title(new_title(target)) end error(format("bad argument #1 to 'is_valid_link_target' (string expected, got %s)", target_type), 2) end --[==[ Returns {true} if the input string is a valid page name on this wiki, or {false} if not. This therefore '''excludes''' page names on other wikis, such as [[w:Example]], unlike `is_valid_link_target` above.]==] function export.is_valid_page_name(name) local name_type = type(name) if name_type == "string" then return is_internal_title(new_title(name)) end error(format("bad argument #1 to 'is_valid_page_name' (string expected, got %s)", name_type), 2) end --[==[ Given a title object, returns a full link target which will always unambiguously link to it. For instance, the input {"foo"} (for the page [[foo]]) returns {":foo"}, as a leading colon always refers to mainspace, even when other namespaces might be assumed (e.g. when transcluding using `{{ }}` syntax). If `shortcut` is set, then the returned target will use the namespace shortcut, if any; for example, the title for `Template:foo` would return {"T:foo"} instead of {"Template:foo"}.]==] function export.get_link_target(title, shortcut) if not is_title(title) then error(format("bad argument #1 to 'is_valid_link_target' (title object expected, got %s)", type(title))) elseif title.interwiki ~= "" then return title.fullText elseif shortcut then local fragment = title.fragment if fragment == "" then return get_namespace_shortcut(title) .. ":" .. title.text end return get_namespace_shortcut(title) .. ":" .. title.text .. "#" .. fragment elseif title.namespace == 0 then return ":" .. title.fullText end return title.fullText end do local function find_sandbox(text) return find(text, "^User:.") or find(lower(text), "sandbox", 1, true) end local function get_transclusion_subtypes(title, main_type, documentation, page_suffix) local text, subtypes = title.text, {main_type} -- Any template/module with "sandbox" in the title. These are impossible -- to screen for more accurately, as there's no consistent pattern. Also -- any user sandboxes in the form (e.g.) "Template:User:...". local sandbox = find_sandbox(text) if sandbox then insert(subtypes, "sandbox") end -- Any template/module testcases (which can be labelled and/or followed -- by further subpages). local testcase = find(text, "./[Tt]estcases?%f[%L]") if testcase then -- Order "testcase" and "sandbox" based on where the patterns occur -- in the title. local n = sandbox and sandbox < testcase and 3 or 2 insert(subtypes, n, "testcase") end -- Any template/module documentation pages. if documentation then insert(subtypes, "documentation") end local final = subtypes[#subtypes] if not (final == main_type and not page_suffix or final == "sandbox") then insert(subtypes, "page") end return concat(subtypes, " ") end local function get_snippet_subtypes(title, main_type, documentation) local ns = title.namespace return get_transclusion_subtypes(title, ( ns == 2 and "user " or ns == 8 and match(title.text, "^Gadget-.") and "gadget " or "" ) .. main_type, documentation) end --[==[ Returns the page type of the input title object in a format which can be used in running text.]==] function export.get_pagetype(title) if not is_internal_title(title) then error(mw.dumpObject(title.fullText) .. " is not a valid page name.") end -- If possibly a documentation page, get the base title and set the -- `documentation` flag. local content_model, text, documentation = title.contentModel if content_model == "wikitext" then text = title.text if title.isSubpage and title.subpageText == "documentation" then local base_title = title.basePageTitle if base_title then title, content_model, text, documentation = base_title, base_title.contentModel, base_title.text, true end end end -- Content models have overriding priority, as they can appear in -- nonstandard places due to page content model changes. if content_model == "css" or content_model == "sanitized-css" then return get_snippet_subtypes(title, "stylesheet", documentation) elseif content_model == "javascript" then return get_snippet_subtypes(title, "script", documentation) elseif content_model == "json" then return get_snippet_subtypes(title, "JSON data", documentation) elseif content_model == "MassMessageListContent" then return get_snippet_subtypes(title, "mass message delivery list", documentation) -- Modules. elseif content_model == "Scribunto" then return get_transclusion_subtypes(title, "module", documentation, false) elseif content_model == "text" then return "page" -- ??? -- Otherwise, the content model is "wikitext", so check namespaces. elseif title.isTalkPage then return "talk page" end local ns = title.namespace -- Main namespace. if ns == 0 then return "entry" -- Wiktionary: elseif ns == 4 then return find_sandbox(title.text) and "sandbox" or "project page" -- Template: elseif ns == 10 then return get_transclusion_subtypes(title, "template", documentation, false) end -- Convert the namespace to lowercase, unless it contains a capital -- letter after the initial letter (e.g. MediaWiki, TimedText). Also -- normalize any underscores. local ns_text = gsub(title.nsText, "_", " ") if ufind(ns_text, "^%U*$", 2) then ns_text = ulower(ns_text) end -- User: if ns == 2 then return ns_text .. " " .. (title.isSubpage and "subpage" or "page") -- Category: and Appendix: elseif ns == 14 or ns == 100 then return ns_text -- Thesaurus: and Reconstruction: elseif ns == 110 or ns == 118 then return ns_text .. " entry" end return ns_text .. " page" end get_pagetype = export.get_pagetype end --[==[ Returns {true} if the input title object is for a content page, or {false} if not. A content page is a page that is considered part of the dictionary itself, and excludes pages for discussion, administration, maintenance etc.]==] function export.is_content_page(title) if not is_internal_title(title) then error(mw.dumpObject(title.fullText) .. " is not a valid page name.") end local ns = title.namespace -- (main), Appendix, Thesaurus, Citations, Reconstruction. return (ns == 0 or ns == 100 or ns == 110 or ns == 114 or ns == 118) and title.contentModel == "wikitext" end --[==[ Returns {true} if the input title object is for a documentation page, or {false} if not.]==] function export.is_documentation(title) return match(get_pagetype(title), "%f[%w]documentation%f[%W]") and true or false end --[==[ Returns {true} if the input title object is for a sandbox, or {false} if not. By default, sandbox documentation pages are excluded, but this can be overridden with the `include_documentation` parameter.]==] function export.is_sandbox(title, include_documentation) local pagetype = get_pagetype(title) return match(pagetype, "%f[%w]sandbox%f[%W]") and ( include_documentation or not match(pagetype, "%f[%w]documentation%f[%W]") ) and true or false end --[==[ Returns {true} if the input title object is for a testcase page, or {false} if not. By default, testcase documentation pages are excluded, but this can be overridden with the `include_documentation` parameter.]==] function export.is_testcase_page(title, include_documentation) local pagetype = get_pagetype(title) return match(pagetype, "%f[%w]testcase%f[%W]") and ( include_documentation or not match(pagetype, "%f[%w]documentation%f[%W]") ) and true or false end --[==[ Returns the namespace shortcut for the input title object, or else the namespace text. For example, a `Template:` title returns {"T"}, a `Module:` title returns {"MOD"}, and a `User:` title returns {"User"}.]==] function export.get_namespace_shortcut(title) return (namespace_shortcuts or get_namespace_shortcuts())[title.namespace] or title.nsText end get_namespace_shortcut = export.get_namespace_shortcut do local function check_level(lvl) if type(lvl) ~= "number" then error("Heading levels must be numbers.") elseif lvl < 1 or lvl > 6 or lvl % 1 ~= 0 then error("Heading levels must be integers between 1 and 6.") end return lvl end --[==[ A helper function which iterates over the headings in `text`, which should be the content of a page or (main) section. Each iteration returns three values: `sec` (the section title), `lvl` (the section level) and `loc` (the index of the section in the given text, from the first equals sign). The section title will be automatically trimmed, and any HTML entities will be resolved. The optional parameter `a` (which should be an integer between 1 and 6) can be used to ensure that only headings of the specified level are iterated over. If `b` is also given, then they are treated as a range. The optional parameters `a` and `b` can be used to specify a range, so that only headings with levels in that range are returned.]==] local function find_headings(text, a, b) a = a and check_level(a) or nil b = b and check_level(b) or a or nil local start, loc, lvl, sec = 1 return function() repeat loc, lvl, sec, start = match(text, "()%f[^%z\n](==?=?=?=?=?)([^\n]+)%2[\t ]*%f[%z\n]()", start) lvl = lvl and #lvl until not (sec and a) or (lvl >= a and lvl <= b) return sec and trim(decode_entities(sec)) or nil, lvl, loc end end local function _get_section(content, name, level) if not (content and name) then return nil elseif find(name, "\n", 1, true) then error("Heading name cannot contain a newline.") end level = level and check_level(level) or nil name = trim(decode_entities(name)) local start for sec, lvl, loc in find_headings(content, level and 1 or nil, level) do if start and lvl <= level then return sub(content, start, loc - 1) elseif not start and (not level or lvl == level) and sec == name then start, level = loc, lvl end end return start and sub(content, start) end --[==[ A helper function to return the content of a page section. `content` is raw wikitext, `name` is the requested section, and `level` is an optional parameter that specifies the required section heading level. If `level` is not supplied, then the first section called `name` is returned. `name` can either be a string or table of section names. If a table, each name represents a section that has the next as a subsection. For example, { {"Spanish", "Noun"}} will return the first matching section called "Noun" under a section called "Spanish". These do not have to be at adjacent levels ("Noun" might be L4, while "Spanish" is L2). If `level` is given, it refers to the last name in the table (i.e. the name of the section to be returned). The returned section includes all of its subsections. If no matching section is found, return {nil}.]==] function export.get_section(content, names, level) if type(names) ~= "table" then return _get_section(content, names, level) end local i = 1 local name = names[i] if not name then error("Must specify at least 1 section.") end while true do local nxt_i = i + 1 local nxt = names[nxt_i] if nxt == nil then return _get_section(content, name, level) end content = _get_section(content, name) if content == nil then return nil elseif i == 6 then error("Not possible specify more than 6 sections: headings only go up to level 6.") end i = nxt_i name = names[i] end return content end end do local current_section --[==[ A function which returns the number of the page section which contains the current {#invoke}.]==] function export.get_current_section() if current_section ~= nil then return current_section end local extension_tag = (current_frame or get_current_frame()).extensionTag -- We determine the section via the heading strip marker count, since they're numbered sequentially, but the only way to do this is to generate a fake heading via frame:preprocess(). The native parser assigns each heading a unique marker, but frame:preprocess() will return copies of older markers if the heading is identical to one further up the page, so the fake heading has to be unique to the page. The best way to do this is to feed it a heading containing a nowiki marker (which we will need later), since those are always unique. local nowiki_marker = extension_tag(current_frame, "nowiki") -- Note: heading strip markers have a different syntax to the ones used for tags. local h = tonumber(match( current_frame:preprocess("=" .. nowiki_marker .. "="), "\127'\"`UNIQ%-%-h%-(%d+)%-%-QINU`\"'\127" )) -- For some reason, [[Special:ExpandTemplates]] doesn't generate a heading strip marker, so if that happens we simply abort early. if not h then return 0 end -- The only way to get the section number is to increment the heading count, so we store the offset in nowiki strip markers which can be retrieved by procedurally unstripping nowiki markers, counting backwards until we find a match. local n, offset = tonumber(match( nowiki_marker, "\127'\"`UNIQ%-%-nowiki%-([%dA-F]+)%-QINU`\"'\127" ), 16) while not offset and n > 0 do n = n - 1 offset = match( unstrip_nowiki(format("\127'\"`UNIQ--nowiki-%08X-QINU`\"'\127", n)), "^HEADING\1(%d+)" -- Prefix "HEADING\1" prevents collisions. ) end offset = offset and (offset + 1) or 0 extension_tag(current_frame, "nowiki", "HEADING\1" .. offset) current_section = h - offset return current_section end get_current_section = export.get_current_section end do local L2_sections local function get_L2_sections() L2_sections, get_L2_sections = mw.loadData("Module:headword/data").page.L2_sections, nil return L2_sections end --[==[ A function which returns the name of the L2 language section which contains the current {#invoke}.]==] function export.get_current_L2() local section = get_current_section() if section == 0 then return end while section > 0 do local L2 = (L2_sections or get_L2_sections())[section] if L2 then return L2 end section = section - 1 end end end return export fahzb5v4u71j961eqb048ciy8nk4h06