From f118066b9bcb4f67ffa3781a21fd48cce6d87163 Mon Sep 17 00:00:00 2001 From: Yuriy Evdokimov Date: Tue, 17 Oct 2023 22:59:47 +0500 Subject: [PATCH] multiple changes in states, useEffect for chaining --- src/App.css | 17 +- src/App.tsx | 93 +- src/Data.ts | 2530 ++++++++++++++++++++++++------------------------ src/Strings.ts | 5 +- src/Types.ts | 5 +- src/reducer.ts | 94 +- src/store.tsx | 8 +- 7 files changed, 1394 insertions(+), 1358 deletions(-) diff --git a/src/App.css b/src/App.css index 5d0bc48..bdf1524 100644 --- a/src/App.css +++ b/src/App.css @@ -42,6 +42,21 @@ } .btn { + margin-top: 5px; margin-bottom: 5px; margin-right: 5px; -} \ No newline at end of file +} + +.syllable { + font-weight: bold; + font-size: xx-large; +} +.syllable:hover { + cursor:pointer +} + +.tone1 { color: rgb(255, 0, 0) } +.tone2 { color: rgb(255, 170, 0) } +.tone3 { color: rgb(85, 170, 0) } +.tone4 { color: rgb(0, 0, 255) } +.tone5 { color: rgb(50, 50, 50) } \ No newline at end of file diff --git a/src/App.tsx b/src/App.tsx index 129eb71..c021a6f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,33 +1,44 @@ -import { useState } from 'react' +import { useEffect, useState } from 'react' import './App.css' -import { Badge, Button, ListGroup } from 'react-bootstrap'; +import { Button, ListGroup } from 'react-bootstrap'; import { initials, finales } from './data'; -import { BtnColor, Status } from './types'; +import { BtnColor, Status, Tone } from './types'; import { strings } from './strings'; import { useStateContext } from './store'; import { Params } from './params'; -import { ActionType, ToggleType } from './reducer'; +import { ToggleType } from './reducer'; import { ButtonSet } from './buttons'; function App() { const { state, dispatch } = useStateContext(); - const [plaingNo, setPlaingNo ] = useState(0) + const [ plaingNo, setPlaingNo ] = useState(0) + const [ status, setStatus ] = useState(Status.params) + const [ playlist, setPlaylist ] = useState( [] as HTMLAudioElement[] ) -const setStatus = (status: Status) => { dispatch({ type: ActionType.setStatus, payload: status}) } + useEffect( () => { + if (status===Status.prepare) { + console.log('effect for preparing') + preparePlayList(state.randomTones!) + } + if (status===Status.playing) { + console.log('effect for playing') + playPlayList() + } + }, [status]) -const beginDictation = (): void => { - dispatch({ type: ActionType.prepare }) - playDictation2() -} + useEffect( () => { + console.log('effect for playList') + setStatus(Status.playing) + } , [playlist] ) -const playDictation2 = () => { +const preparePlayList = (tones: Tone[]) => { console.log('tones for playing') - state.randomTones!.forEach(element => console.log(element)) - if ( state.randomTones!.length == 0 ) return + tones!.forEach(element => console.log(element)) + if ( tones!.length == 0 ) return let audios:HTMLAudioElement[] = [] - state.randomTones!.forEach(element => { + tones!.forEach(element => { audios = [...audios, new Audio(`/assets/audio/${element.tone}.mp3`) ] }); console.debug(audios) @@ -41,14 +52,30 @@ const playDictation2 = () => { }, 1000*state.sylPause! ) ; } audios[audios.length-1].onended = () => setStatus(Status.plaied) - setStatus(Status.plaing) - setPlaingNo(1) - audios[0].play() + setPlaylist(audios) } -const renderRandomTones2 = () => { - return state.randomTones!.map( - (ton, i) => { return {ton.caption}{' '} } +const playPlayList = () => { + if (playlist.length===0) return; + setStatus(Status.playing) + setPlaingNo(1) + playlist[0].play() +} + +const playTone = (index: string) => { + let audio:HTMLAudioElement = new Audio(`/assets/audio/${index}.mp3`) + audio.play() +} + +const renderPlayList = () => { + + return state.randomTones!.map( + (ton, i) => { return playTone(ton.tone)} + > + {i+1}{'. '}{ton.caption}{' '} + } ) } @@ -57,49 +84,53 @@ const renderRandomTones2 = () => {

{strings.mainHeader}

- +

{strings.selectInitiales}

- +

{strings.selectFinales}

- +

{strings.params}

- { state.status == Status.params && + { status == Status.params && <> Выбрано {state.initiales!.length} инициалей, {state.finales!.length} финалей, найдено {state.foundSyllables!.length} слогов, { state.foundTones!.length } тонов ,
} { - state.status == Status.plaing && + status == Status.playing &&

Воспроизводится...{plaingNo}

} { - state.status == Status.plaied && - + status == Status.plaied && + <> + + + } { - state.status == Status.showlist && + status == Status.showlist && <> -
{renderRandomTones2()}
+
{renderPlayList()}

- + // here add effect to new randomTones + }
diff --git a/src/Data.ts b/src/Data.ts index 74798b0..b776093 100644 --- a/src/Data.ts +++ b/src/Data.ts @@ -474,1269 +474,1269 @@ export const finales: SylPart[] = [ ] export const tones: Tone[] = [ - { tone: 'a1' , caption: 'ā' }, - { tone: 'ai1' , caption: 'āi' }, - { tone: 'ai2' , caption: 'ái' }, - { tone: 'ai3' , caption: 'ǎi' }, - { tone: 'ai4' , caption: 'ài' }, - { tone: 'an1' , caption: 'ān' }, - { tone: 'an3' , caption: 'ǎn' }, - { tone: 'an4' , caption: 'àn' }, - { tone: 'ang1' , caption: 'āng' }, - { tone: 'ang2' , caption: 'áng' }, - { tone: 'ang4' , caption: 'àng' }, - { tone: 'ao1' , caption: 'āo' }, - { tone: 'ao2' , caption: 'áo' }, - { tone: 'ao3' , caption: 'ǎo' }, - { tone: 'ao4' , caption: 'ào' }, - { tone: 'ba1' , caption: 'bā' }, - { tone: 'ba2' , caption: 'bá' }, - { tone: 'ba3' , caption: 'bǎ' }, - { tone: 'ba4' , caption: 'bà' }, - { tone: 'bai1' , caption: 'bāi' }, - { tone: 'bai2' , caption: 'bái' }, - { tone: 'bai3' , caption: 'bǎi' }, - { tone: 'bai4' , caption: 'bài' }, - { tone: 'ban1' , caption: 'bān' }, - { tone: 'ban3' , caption: 'bǎn' }, - { tone: 'ban4' , caption: 'bàn' }, - { tone: 'bang1' , caption: 'bāng' }, - { tone: 'bang3' , caption: 'bǎng' }, - { tone: 'bang4' , caption: 'bàng' }, - { tone: 'bao1' , caption: 'bāo' }, - { tone: 'bao2' , caption: 'báo' }, - { tone: 'bao3' , caption: 'bǎo' }, - { tone: 'bao4' , caption: 'bào' }, - { tone: 'bei1' , caption: 'bēi' }, - { tone: 'bei3' , caption: 'běi' }, - { tone: 'bei4' , caption: 'bèi' }, - { tone: 'ben1' , caption: 'bēn' }, - { tone: 'ben3' , caption: 'běn' }, - { tone: 'ben4' , caption: 'bèn' }, - { tone: 'beng1' , caption: 'bēng' }, - { tone: 'beng2' , caption: 'béng' }, - { tone: 'beng3' , caption: 'běng' }, - { tone: 'beng4' , caption: 'bèng' }, - { tone: 'bi1' , caption: 'bī' }, - { tone: 'bi2' , caption: 'bí' }, - { tone: 'bi3' , caption: 'bǐ' }, - { tone: 'bi4' , caption: 'bì' }, - { tone: 'bian1' , caption: 'biān' }, - { tone: 'bian3' , caption: 'biǎn' }, - { tone: 'bian4' , caption: 'biàn' }, - { tone: 'biao1' , caption: 'biāo' }, - { tone: 'biao3' , caption: 'biǎo' }, - { tone: 'biao4' , caption: 'biào' }, - { tone: 'bie1' , caption: 'biē' }, - { tone: 'bie2' , caption: 'bié' }, - { tone: 'bie3' , caption: 'biě' }, - { tone: 'bie4' , caption: 'biè' }, - { tone: 'bin1' , caption: 'bīn' }, - { tone: 'bin4' , caption: 'bìn' }, - { tone: 'bing1' , caption: 'bīng' }, - { tone: 'bing3' , caption: 'bǐng' }, - { tone: 'bing4' , caption: 'bìng' }, - { tone: 'bo1' , caption: 'bō' }, - { tone: 'bo2' , caption: 'bó' }, - { tone: 'bo3' , caption: 'bǒ' }, - { tone: 'bo4' , caption: 'bò' }, - { tone: 'bu1' , caption: 'bū' }, - { tone: 'bu2' , caption: 'bú' }, - { tone: 'bu3' , caption: 'bǔ' }, - { tone: 'bu4' , caption: 'bù' }, - { tone: 'ca1' , caption: 'cā' }, - { tone: 'cai1' , caption: 'cāi' }, - { tone: 'cai2' , caption: 'cái' }, - { tone: 'cai3' , caption: 'cǎi' }, - { tone: 'cai4' , caption: 'cài' }, - { tone: 'can1' , caption: 'cān' }, - { tone: 'can2' , caption: 'cán' }, - { tone: 'can3' , caption: 'cǎn' }, - { tone: 'can4' , caption: 'càn' }, - { tone: 'cang1' , caption: 'cāng' }, - { tone: 'cang2' , caption: 'cáng' }, - { tone: 'cao1' , caption: 'cāo' }, - { tone: 'cao2' , caption: 'cáo' }, - { tone: 'cao3' , caption: 'cǎo' }, - { tone: 'cao4' , caption: 'cào' }, - { tone: 'ce4' , caption: 'cè' }, - { tone: 'cen1' , caption: 'cēn' }, - { tone: 'cen2' , caption: 'cén' }, - { tone: 'ceng1' , caption: 'cēng' }, - { tone: 'ceng2' , caption: 'céng' }, - { tone: 'ceng4' , caption: 'cèng' }, - { tone: 'cha1' , caption: 'chā' }, - { tone: 'cha2' , caption: 'chá' }, - { tone: 'cha4' , caption: 'chà' }, - { tone: 'chai1' , caption: 'chāi' }, - { tone: 'chai2' , caption: 'chái' }, - { tone: 'chan1' , caption: 'chān' }, - { tone: 'chan2' , caption: 'chán' }, - { tone: 'chan3' , caption: 'chǎn' }, - { tone: 'chan4' , caption: 'chàn' }, - { tone: 'chang1' , caption: 'chāng' }, - { tone: 'chang2' , caption: 'cháng' }, - { tone: 'chang3' , caption: 'chǎng' }, - { tone: 'chang4' , caption: 'chàng' }, - { tone: 'chao1' , caption: 'chāo' }, - { tone: 'chao2' , caption: 'cháo' }, - { tone: 'chao3' , caption: 'chǎo' }, - { tone: 'chao4' , caption: 'chào' }, - { tone: 'che1' , caption: 'chē' }, - { tone: 'che3' , caption: 'chě' }, - { tone: 'che4' , caption: 'chè' }, - { tone: 'chen1' , caption: 'chēn' }, - { tone: 'chen2' , caption: 'chén' }, - { tone: 'chen3' , caption: 'chěn' }, - { tone: 'chen4' , caption: 'chèn' }, - { tone: 'cheng1' , caption: 'chēng' }, - { tone: 'cheng2' , caption: 'chéng' }, - { tone: 'cheng3' , caption: 'chěng' }, - { tone: 'cheng4' , caption: 'chèng' }, - { tone: 'chi1' , caption: 'chī' }, - { tone: 'chi2' , caption: 'chí' }, - { tone: 'chi3' , caption: 'chǐ' }, - { tone: 'chi4' , caption: 'chì' }, - { tone: 'chong1' , caption: 'chōng' }, - { tone: 'chong2' , caption: 'chóng' }, - { tone: 'chong3' , caption: 'chǒng' }, - { tone: 'chong4' , caption: 'chòng' }, - { tone: 'chou1' , caption: 'chōu' }, - { tone: 'chou2' , caption: 'chóu' }, - { tone: 'chou3' , caption: 'chǒu' }, - { tone: 'chou4' , caption: 'chòu' }, - { tone: 'chu1' , caption: 'chū' }, - { tone: 'chu2' , caption: 'chú' }, - { tone: 'chu3' , caption: 'chǔ' }, - { tone: 'chu4' , caption: 'chù' }, - { tone: 'chuai1' , caption: 'chuāi' }, - { tone: 'chuai3' , caption: 'chuǎi' }, - { tone: 'chuai4' , caption: 'chuài' }, - { tone: 'chuan1' , caption: 'chuān' }, - { tone: 'chuan2' , caption: 'chuán' }, - { tone: 'chuan3' , caption: 'chuǎn' }, - { tone: 'chuan4' , caption: 'chuàn' }, - { tone: 'chuang1' , caption: 'chuāng' }, - { tone: 'chuang2' , caption: 'chuáng' }, - { tone: 'chuang3' , caption: 'chuǎng' }, - { tone: 'chuang4' , caption: 'chuàng' }, - { tone: 'chui1' , caption: 'chuī' }, - { tone: 'chui2' , caption: 'chuí' }, - { tone: 'chun1' , caption: 'chūn' }, - { tone: 'chun2' , caption: 'chún' }, - { tone: 'chun3' , caption: 'chǔn' }, - { tone: 'chuo1' , caption: 'chuō' }, - { tone: 'chuo4' , caption: 'chuò' }, - { tone: 'ci1' , caption: 'cī' }, - { tone: 'ci2' , caption: 'cí' }, - { tone: 'ci3' , caption: 'cǐ' }, - { tone: 'ci4' , caption: 'cì' }, - { tone: 'cong1' , caption: 'cōng' }, - { tone: 'cong2' , caption: 'cóng' }, - { tone: 'cou4' , caption: 'còu' }, - { tone: 'cu1' , caption: 'cū' }, - { tone: 'cu2' , caption: 'cú' }, - { tone: 'cu4' , caption: 'cù' }, - { tone: 'cuan1' , caption: 'cuān' }, - { tone: 'cuan2' , caption: 'cuán' }, - { tone: 'cuan4' , caption: 'cuàn' }, - { tone: 'cui1' , caption: 'cuī' }, - { tone: 'cui3' , caption: 'cuǐ' }, - { tone: 'cui4' , caption: 'cuì' }, - { tone: 'cun1' , caption: 'cūn' }, - { tone: 'cun2' , caption: 'cún' }, - { tone: 'cun3' , caption: 'cǔn' }, - { tone: 'cun4' , caption: 'cùn' }, - { tone: 'cuo1' , caption: 'cuō' }, - { tone: 'cuo2' , caption: 'cuó' }, - { tone: 'cuo4' , caption: 'cuò' }, - { tone: 'da1' , caption: 'dā' }, - { tone: 'da2' , caption: 'dá' }, - { tone: 'da3' , caption: 'dǎ' }, - { tone: 'da4' , caption: 'dà' }, - { tone: 'dai1' , caption: 'dāi' }, - { tone: 'dai3' , caption: 'dǎi' }, - { tone: 'dai4' , caption: 'dài' }, - { tone: 'dan1' , caption: 'dān' }, - { tone: 'dan3' , caption: 'dǎn' }, - { tone: 'dan4' , caption: 'dàn' }, - { tone: 'dang1' , caption: 'dāng' }, - { tone: 'dang3' , caption: 'dǎng' }, - { tone: 'dang4' , caption: 'dàng' }, - { tone: 'dao1' , caption: 'dāo' }, - { tone: 'dao3' , caption: 'dǎo' }, - { tone: 'dao4' , caption: 'dào' }, - { tone: 'de1' , caption: 'dē' }, - { tone: 'de2' , caption: 'dé' }, - { tone: 'de5' , caption: 'de' }, - { tone: 'dei1' , caption: 'dēi' }, - { tone: 'dei3' , caption: 'děi' }, - { tone: 'den4' , caption: 'dèn' }, - { tone: 'deng1' , caption: 'dēng' }, - { tone: 'deng3' , caption: 'děng' }, - { tone: 'deng4' , caption: 'dèng' }, - { tone: 'di1' , caption: 'dī' }, - { tone: 'di2' , caption: 'dí' }, - { tone: 'di3' , caption: 'dǐ' }, - { tone: 'di4' , caption: 'dì' }, - { tone: 'dia3' , caption: 'diǎ' }, - { tone: 'dian1' , caption: 'diān' }, - { tone: 'dian3' , caption: 'diǎn' }, - { tone: 'dian4' , caption: 'diàn' }, - { tone: 'diao1' , caption: 'diāo' }, - { tone: 'diao3' , caption: 'diǎo' }, - { tone: 'diao4' , caption: 'diào' }, - { tone: 'die1' , caption: 'diē' }, - { tone: 'die2' , caption: 'dié' }, - { tone: 'ding1' , caption: 'dīng' }, - { tone: 'ding3' , caption: 'dǐng' }, - { tone: 'ding4' , caption: 'dìng' }, - { tone: 'diu1' , caption: 'diū' }, - { tone: 'dong1' , caption: 'dōng' }, - { tone: 'dong3' , caption: 'dǒng' }, - { tone: 'dong4' , caption: 'dòng' }, - { tone: 'dou1' , caption: 'dōu' }, - { tone: 'dou3' , caption: 'dǒu' }, - { tone: 'dou4' , caption: 'dòu' }, - { tone: 'du1' , caption: 'dū' }, - { tone: 'du2' , caption: 'dú' }, - { tone: 'du3' , caption: 'dǔ' }, - { tone: 'du4' , caption: 'dù' }, - { tone: 'duan1' , caption: 'duān' }, - { tone: 'duan3' , caption: 'duǎn' }, - { tone: 'duan4' , caption: 'duàn' }, - { tone: 'dui1' , caption: 'duī' }, - { tone: 'dui4' , caption: 'duì' }, - { tone: 'dun1' , caption: 'dūn' }, - { tone: 'dun3' , caption: 'dǔn' }, - { tone: 'dun4' , caption: 'dùn' }, - { tone: 'duo1' , caption: 'duō' }, - { tone: 'duo2' , caption: 'duó' }, - { tone: 'duo3' , caption: 'duǒ' }, - { tone: 'duo4' , caption: 'duò' }, - { tone: 'e1' , caption: 'ē' }, - { tone: 'e2' , caption: 'é' }, - { tone: 'e3' , caption: 'ě' }, - { tone: 'e4' , caption: 'è' }, - { tone: 'ei1' , caption: 'ēi' }, - { tone: 'en1' , caption: 'ēn' }, - { tone: 'en4' , caption: 'èn' }, - { tone: 'er2' , caption: 'ér' }, - { tone: 'er3' , caption: 'ěr' }, - { tone: 'er4' , caption: 'èr' }, - { tone: 'fa1' , caption: 'fā' }, - { tone: 'fa2' , caption: 'fá' }, - { tone: 'fa3' , caption: 'fǎ' }, - { tone: 'fa4' , caption: 'fà' }, - { tone: 'fan1' , caption: 'fān' }, - { tone: 'fan2' , caption: 'fán' }, - { tone: 'fan3' , caption: 'fǎn' }, - { tone: 'fan4' , caption: 'fàn' }, - { tone: 'fang1' , caption: 'fāng' }, - { tone: 'fang2' , caption: 'fáng' }, - { tone: 'fang3' , caption: 'fǎng' }, - { tone: 'fang4' , caption: 'fàng' }, - { tone: 'fei1' , caption: 'fēi' }, - { tone: 'fei2' , caption: 'féi' }, - { tone: 'fei3' , caption: 'fěi' }, - { tone: 'fei4' , caption: 'fèi' }, - { tone: 'fen1' , caption: 'fēn' }, - { tone: 'fen2' , caption: 'fén' }, - { tone: 'fen3' , caption: 'fěn' }, - { tone: 'fen4' , caption: 'fèn' }, - { tone: 'feng1' , caption: 'fēng' }, - { tone: 'feng2' , caption: 'féng' }, - { tone: 'feng3' , caption: 'fěng' }, - { tone: 'feng4' , caption: 'fèng' }, - { tone: 'fo2' , caption: 'fó' }, - { tone: 'fou2' , caption: 'fóu' }, - { tone: 'fou3' , caption: 'fǒu' }, - { tone: 'fu1' , caption: 'fū' }, - { tone: 'fu2' , caption: 'fú' }, - { tone: 'fu3' , caption: 'fǔ' }, - { tone: 'fu4' , caption: 'fù' }, - { tone: 'ga1' , caption: 'gā' }, - { tone: 'ga2' , caption: 'gá' }, - { tone: 'ga4' , caption: 'gà' }, - { tone: 'gai1' , caption: 'gāi' }, - { tone: 'gai3' , caption: 'gǎi' }, - { tone: 'gai4' , caption: 'gài' }, - { tone: 'gan1' , caption: 'gān' }, - { tone: 'gan3' , caption: 'gǎn' }, - { tone: 'gan4' , caption: 'gàn' }, - { tone: 'gang1' , caption: 'gāng' }, - { tone: 'gang3' , caption: 'gǎng' }, - { tone: 'gang4' , caption: 'gàng' }, - { tone: 'gao1' , caption: 'gāo' }, - { tone: 'gao3' , caption: 'gǎo' }, - { tone: 'gao4' , caption: 'gào' }, - { tone: 'ge1' , caption: 'gē' }, - { tone: 'ge2' , caption: 'gé' }, - { tone: 'ge3' , caption: 'gě' }, - { tone: 'ge4' , caption: 'gè' }, - { tone: 'gei3' , caption: 'gěi' }, - { tone: 'gen1' , caption: 'gēn' }, - { tone: 'gen2' , caption: 'gén' }, - { tone: 'gen3' , caption: 'gěn' }, - { tone: 'gen4' , caption: 'gèn' }, - { tone: 'geng1' , caption: 'gēng' }, - { tone: 'geng3' , caption: 'gěng' }, - { tone: 'geng4' , caption: 'gèng' }, - { tone: 'gong1' , caption: 'gōng' }, - { tone: 'gong3' , caption: 'gǒng' }, - { tone: 'gong4' , caption: 'gòng' }, - { tone: 'gou1' , caption: 'gōu' }, - { tone: 'gou3' , caption: 'gǒu' }, - { tone: 'gou4' , caption: 'gòu' }, - { tone: 'gu1' , caption: 'gū' }, - { tone: 'gu2' , caption: 'gú' }, - { tone: 'gu3' , caption: 'gǔ' }, - { tone: 'gu4' , caption: 'gù' }, - { tone: 'gua1' , caption: 'guā' }, - { tone: 'gua3' , caption: 'guǎ' }, - { tone: 'gua4' , caption: 'guà' }, - { tone: 'guai1' , caption: 'guāi' }, - { tone: 'guai3' , caption: 'guǎi' }, - { tone: 'guai4' , caption: 'guài' }, - { tone: 'guan1' , caption: 'guān' }, - { tone: 'guan2' , caption: 'guán' }, - { tone: 'guan3' , caption: 'guǎn' }, - { tone: 'guan4' , caption: 'guàn' }, - { tone: 'guang1' , caption: 'guāng' }, - { tone: 'guang3' , caption: 'guǎng' }, - { tone: 'guang4' , caption: 'guàng' }, - { tone: 'gui1' , caption: 'guī' }, - { tone: 'gui3' , caption: 'guǐ' }, - { tone: 'gui4' , caption: 'guì' }, - { tone: 'gun1' , caption: 'gūn' }, - { tone: 'gun3' , caption: 'gǔn' }, - { tone: 'gun4' , caption: 'gùn' }, - { tone: 'guo1' , caption: 'guō' }, - { tone: 'guo2' , caption: 'guó' }, - { tone: 'guo3' , caption: 'guǒ' }, - { tone: 'guo4' , caption: 'guò' }, - { tone: 'guo5' , caption: 'guo' }, - { tone: 'ha1' , caption: 'hā' }, - { tone: 'ha2' , caption: 'há' }, - { tone: 'hai1' , caption: 'hāi' }, - { tone: 'hai2' , caption: 'hái' }, - { tone: 'hai3' , caption: 'hǎi' }, - { tone: 'hai4' , caption: 'hài' }, - { tone: 'han1' , caption: 'hān' }, - { tone: 'han2' , caption: 'hán' }, - { tone: 'han3' , caption: 'hǎn' }, - { tone: 'han4' , caption: 'hàn' }, - { tone: 'hang1' , caption: 'hāng' }, - { tone: 'hang2' , caption: 'háng' }, - { tone: 'hang3' , caption: 'hǎng' }, - { tone: 'hang4' , caption: 'hàng' }, - { tone: 'hao1' , caption: 'hāo' }, - { tone: 'hao2' , caption: 'háo' }, - { tone: 'hao3' , caption: 'hǎo' }, - { tone: 'hao4' , caption: 'hào' }, - { tone: 'hao5' , caption: 'hao' }, - { tone: 'he1' , caption: 'hē' }, - { tone: 'he2' , caption: 'hé' }, - { tone: 'he4' , caption: 'hè' }, - { tone: 'hei1' , caption: 'hēi' }, - { tone: 'hen1' , caption: 'hēn' }, - { tone: 'hen2' , caption: 'hén' }, - { tone: 'hen3' , caption: 'hěn' }, - { tone: 'hen4' , caption: 'hèn' }, - { tone: 'heng1' , caption: 'hēng' }, - { tone: 'heng2' , caption: 'héng' }, - { tone: 'heng4' , caption: 'hèng' }, - { tone: 'hong1' , caption: 'hōng' }, - { tone: 'hong2' , caption: 'hóng' }, - { tone: 'hong3' , caption: 'hǒng' }, - { tone: 'hong4' , caption: 'hòng' }, - { tone: 'hou1' , caption: 'hōu' }, - { tone: 'hou2' , caption: 'hóu' }, - { tone: 'hou3' , caption: 'hǒu' }, - { tone: 'hou4' , caption: 'hòu' }, - { tone: 'hu1' , caption: 'hū' }, - { tone: 'hu2' , caption: 'hú' }, - { tone: 'hu3' , caption: 'hǔ' }, - { tone: 'hu4' , caption: 'hù' }, - { tone: 'hua1' , caption: 'huā' }, - { tone: 'hua2' , caption: 'huá' }, - { tone: 'hua4' , caption: 'huà' }, - { tone: 'huai2' , caption: 'huái' }, - { tone: 'huai4' , caption: 'huài' }, - { tone: 'huan1' , caption: 'huān' }, - { tone: 'huan2' , caption: 'huán' }, - { tone: 'huan3' , caption: 'huǎn' }, - { tone: 'huan4' , caption: 'huàn' }, - { tone: 'huang1' , caption: 'huāng' }, - { tone: 'huang2' , caption: 'huáng' }, - { tone: 'huang3' , caption: 'huǎng' }, - { tone: 'huang4' , caption: 'huàng' }, - { tone: 'hui1' , caption: 'huī' }, - { tone: 'hui2' , caption: 'huí' }, - { tone: 'hui3' , caption: 'huǐ' }, - { tone: 'hui4' , caption: 'huì' }, - { tone: 'hun1' , caption: 'hūn' }, - { tone: 'hun2' , caption: 'hún' }, - { tone: 'hun3' , caption: 'hǔn' }, - { tone: 'hun4' , caption: 'hùn' }, - { tone: 'huo1' , caption: 'huō' }, - { tone: 'huo2' , caption: 'huó' }, - { tone: 'huo3' , caption: 'huǒ' }, - { tone: 'huo4' , caption: 'huò' }, - { tone: 'ji1' , caption: 'jī' }, - { tone: 'ji2' , caption: 'jí' }, - { tone: 'ji3' , caption: 'jǐ' }, - { tone: 'ji4' , caption: 'jì' }, - { tone: 'jia1' , caption: 'jiā' }, - { tone: 'jia2' , caption: 'jiá' }, - { tone: 'jia3' , caption: 'jiǎ' }, - { tone: 'jia4' , caption: 'jià' }, - { tone: 'jian1' , caption: 'jiān' }, - { tone: 'jian3' , caption: 'jiǎn' }, - { tone: 'jian4' , caption: 'jiàn' }, - { tone: 'jiang1' , caption: 'jiāng' }, - { tone: 'jiang3' , caption: 'jiǎng' }, - { tone: 'jiang4' , caption: 'jiàng' }, - { tone: 'jiao1' , caption: 'jiāo' }, - { tone: 'jiao2' , caption: 'jiáo' }, - { tone: 'jiao3' , caption: 'jiǎo' }, - { tone: 'jiao4' , caption: 'jiào' }, - { tone: 'jie1' , caption: 'jiē' }, - { tone: 'jie2' , caption: 'jié' }, - { tone: 'jie3' , caption: 'jiě' }, - { tone: 'jie4' , caption: 'jiè' }, - { tone: 'jin1' , caption: 'jīn' }, - { tone: 'jin3' , caption: 'jǐn' }, - { tone: 'jin4' , caption: 'jìn' }, - { tone: 'jing1' , caption: 'jīng' }, - { tone: 'jing3' , caption: 'jǐng' }, - { tone: 'jing4' , caption: 'jìng' }, - { tone: 'jing5' , caption: 'jing' }, - { tone: 'jiong1' , caption: 'jiōng' }, - { tone: 'jiong3' , caption: 'jiǒng' }, - { tone: 'jiu1' , caption: 'jiū' }, - { tone: 'jiu3' , caption: 'jiǔ' }, - { tone: 'jiu4' , caption: 'jiù' }, - { tone: 'ju1' , caption: 'jū' }, - { tone: 'ju2' , caption: 'jú' }, - { tone: 'ju3' , caption: 'jǔ' }, - { tone: 'ju4' , caption: 'jù' }, - { tone: 'juan1' , caption: 'juān' }, - { tone: 'juan3' , caption: 'juǎn' }, - { tone: 'juan4' , caption: 'juàn' }, - { tone: 'jue1' , caption: 'juē' }, - { tone: 'jue2' , caption: 'jué' }, - { tone: 'jue4' , caption: 'juè' }, - { tone: 'jun1' , caption: 'jūn' }, - { tone: 'jun3' , caption: 'jǔn' }, - { tone: 'jun4' , caption: 'jùn' }, - { tone: 'ka1' , caption: 'kā' }, - { tone: 'ka3' , caption: 'kǎ' }, - { tone: 'ka4' , caption: 'kà' }, - { tone: 'kai1' , caption: 'kāi' }, - { tone: 'kai3' , caption: 'kǎi' }, - { tone: 'kai4' , caption: 'kài' }, - { tone: 'kan1' , caption: 'kān' }, - { tone: 'kan3' , caption: 'kǎn' }, - { tone: 'kan4' , caption: 'kàn' }, - { tone: 'kang1' , caption: 'kāng' }, - { tone: 'kang2' , caption: 'káng' }, - { tone: 'kang3' , caption: 'kǎng' }, - { tone: 'kang4' , caption: 'kàng' }, - { tone: 'kao1' , caption: 'kāo' }, - { tone: 'kao3' , caption: 'kǎo' }, - { tone: 'kao4' , caption: 'kào' }, - { tone: 'ke1' , caption: 'kē' }, - { tone: 'ke2' , caption: 'ké' }, - { tone: 'ke3' , caption: 'kě' }, - { tone: 'ke4' , caption: 'kè' }, - { tone: 'ken3' , caption: 'kěn' }, - { tone: 'ken4' , caption: 'kèn' }, - { tone: 'keng1' , caption: 'kēng' }, - { tone: 'keng3' , caption: 'kěng' }, - { tone: 'kong1' , caption: 'kōng' }, - { tone: 'kong3' , caption: 'kǒng' }, - { tone: 'kong4' , caption: 'kòng' }, - { tone: 'kou1' , caption: 'kōu' }, - { tone: 'kou3' , caption: 'kǒu' }, - { tone: 'kou4' , caption: 'kòu' }, - { tone: 'ku1' , caption: 'kū' }, - { tone: 'ku3' , caption: 'kǔ' }, - { tone: 'ku4' , caption: 'kù' }, - { tone: 'kua1' , caption: 'kuā' }, - { tone: 'kua3' , caption: 'kuǎ' }, - { tone: 'kua4' , caption: 'kuà' }, - { tone: 'kuai1' , caption: 'kuāi' }, - { tone: 'kuai3' , caption: 'kuǎi' }, - { tone: 'kuai4' , caption: 'kuài' }, - { tone: 'kuan1' , caption: 'kuān' }, - { tone: 'kuan3' , caption: 'kuǎn' }, - { tone: 'kuang1' , caption: 'kuāng' }, - { tone: 'kuang2' , caption: 'kuáng' }, - { tone: 'kuang3' , caption: 'kuǎng' }, - { tone: 'kuang4' , caption: 'kuàng' }, - { tone: 'kui1' , caption: 'kuī' }, - { tone: 'kui2' , caption: 'kuí' }, - { tone: 'kui3' , caption: 'kuǐ' }, - { tone: 'kui4' , caption: 'kuì' }, - { tone: 'kun1' , caption: 'kūn' }, - { tone: 'kun3' , caption: 'kǔn' }, - { tone: 'kun4' , caption: 'kùn' }, - { tone: 'kuo3' , caption: 'kuǒ' }, - { tone: 'kuo4' , caption: 'kuò' }, - { tone: 'la1' , caption: 'lā' }, - { tone: 'la2' , caption: 'lá' }, - { tone: 'la3' , caption: 'lǎ' }, - { tone: 'la4' , caption: 'là' }, - { tone: 'lai1' , caption: 'lāi' }, - { tone: 'lai2' , caption: 'lái' }, - { tone: 'lai4' , caption: 'lài' }, - { tone: 'lan1' , caption: 'lān' }, - { tone: 'lan2' , caption: 'lán' }, - { tone: 'lan3' , caption: 'lǎn' }, - { tone: 'lan4' , caption: 'làn' }, - { tone: 'lang1' , caption: 'lāng' }, - { tone: 'lang2' , caption: 'láng' }, - { tone: 'lang3' , caption: 'lǎng' }, - { tone: 'lang4' , caption: 'làng' }, - { tone: 'lao1' , caption: 'lāo' }, - { tone: 'lao2' , caption: 'láo' }, - { tone: 'lao3' , caption: 'lǎo' }, - { tone: 'lao4' , caption: 'lào' }, - { tone: 'le1' , caption: 'lē' }, - { tone: 'le4' , caption: 'lè' }, - { tone: 'le5' , caption: 'le' }, - { tone: 'lei1' , caption: 'lēi' }, - { tone: 'lei2' , caption: 'léi' }, - { tone: 'lei3' , caption: 'lěi' }, - { tone: 'lei4' , caption: 'lèi' }, - { tone: 'leng2' , caption: 'léng' }, - { tone: 'leng3' , caption: 'lěng' }, - { tone: 'leng4' , caption: 'lèng' }, - { tone: 'li1' , caption: 'lī' }, - { tone: 'li2' , caption: 'lí' }, - { tone: 'li3' , caption: 'lǐ' }, - { tone: 'li4' , caption: 'lì' }, - { tone: 'lia3' , caption: 'liǎ' }, - { tone: 'lian2' , caption: 'lián' }, - { tone: 'lian3' , caption: 'liǎn' }, - { tone: 'lian4' , caption: 'liàn' }, - { tone: 'liang1' , caption: 'liāng' }, - { tone: 'liang2' , caption: 'liáng' }, - { tone: 'liang3' , caption: 'liǎng' }, - { tone: 'liang4' , caption: 'liàng' }, - { tone: 'liao1' , caption: 'liāo' }, - { tone: 'liao2' , caption: 'liáo' }, - { tone: 'liao3' , caption: 'liǎo' }, - { tone: 'liao4' , caption: 'liào' }, - { tone: 'lie1' , caption: 'liē' }, - { tone: 'lie3' , caption: 'liě' }, - { tone: 'lie4' , caption: 'liè' }, - { tone: 'lin2' , caption: 'lín' }, - { tone: 'lin3' , caption: 'lǐn' }, - { tone: 'lin4' , caption: 'lìn' }, - { tone: 'ling1' , caption: 'līng' }, - { tone: 'ling2' , caption: 'líng' }, - { tone: 'ling3' , caption: 'lǐng' }, - { tone: 'ling4' , caption: 'lìng' }, - { tone: 'liu1' , caption: 'liū' }, - { tone: 'liu2' , caption: 'liú' }, - { tone: 'liu3' , caption: 'liǔ' }, - { tone: 'liu4' , caption: 'liù' }, - { tone: 'lo1' , caption: 'lō' }, - { tone: 'long2' , caption: 'lóng' }, - { tone: 'long3' , caption: 'lǒng' }, - { tone: 'long4' , caption: 'lòng' }, - { tone: 'lou1' , caption: 'lōu' }, - { tone: 'lou2' , caption: 'lóu' }, - { tone: 'lou3' , caption: 'lǒu' }, - { tone: 'lou4' , caption: 'lòu' }, - { tone: 'lu1' , caption: 'lū' }, - { tone: 'lu2' , caption: 'lú' }, - { tone: 'lu3' , caption: 'lǔ' }, - { tone: 'lu4' , caption: 'lù' }, - { tone: 'luan2' , caption: 'luán' }, - { tone: 'luan3' , caption: 'luǎn' }, - { tone: 'luan4' , caption: 'luàn' }, - { tone: 'lun1' , caption: 'lūn' }, - { tone: 'lun2' , caption: 'lún' }, - { tone: 'lun3' , caption: 'lǔn' }, - { tone: 'lun4' , caption: 'lùn' }, - { tone: 'luo1' , caption: 'luō' }, - { tone: 'luo2' , caption: 'luó' }, - { tone: 'luo3' , caption: 'luǒ' }, - { tone: 'luo4' , caption: 'luò' }, - { tone: 'lv2' , caption: 'lǘ' }, - { tone: 'lv3' , caption: 'lǚ' }, - { tone: 'lv4' , caption: 'lǜ' }, - { tone: 'lve1' , caption: 'lüē' }, - { tone: 'lve4' , caption: 'lüè' }, - { tone: 'ma1' , caption: 'mā' }, - { tone: 'ma2' , caption: 'má' }, - { tone: 'ma3' , caption: 'mǎ' }, - { tone: 'ma4' , caption: 'mà' }, - { tone: 'ma5' , caption: 'ma' }, - { tone: 'mai2' , caption: 'mái' }, - { tone: 'mai3' , caption: 'mǎi' }, - { tone: 'mai4' , caption: 'mài' }, - { tone: 'man2' , caption: 'mán' }, - { tone: 'man3' , caption: 'mǎn' }, - { tone: 'man4' , caption: 'màn' }, - { tone: 'mang2' , caption: 'máng' }, - { tone: 'mang3' , caption: 'mǎng' }, - { tone: 'mao1' , caption: 'māo' }, - { tone: 'mao2' , caption: 'máo' }, - { tone: 'mao3' , caption: 'mǎo' }, - { tone: 'mao4' , caption: 'mào' }, - { tone: 'me1' , caption: 'mē' }, - { tone: 'me5' , caption: 'me' }, - { tone: 'mei1' , caption: 'mēi' }, - { tone: 'mei2' , caption: 'méi' }, - { tone: 'mei3' , caption: 'měi' }, - { tone: 'mei4' , caption: 'mèi' }, - { tone: 'men1' , caption: 'mēn' }, - { tone: 'men2' , caption: 'mén' }, - { tone: 'men3' , caption: 'měn' }, - { tone: 'men4' , caption: 'mèn' }, - { tone: 'men5' , caption: 'men' }, - { tone: 'meng1' , caption: 'mēng' }, - { tone: 'meng2' , caption: 'méng' }, - { tone: 'meng3' , caption: 'měng' }, - { tone: 'meng4' , caption: 'mèng' }, - { tone: 'mi1' , caption: 'mī' }, - { tone: 'mi2' , caption: 'mí' }, - { tone: 'mi3' , caption: 'mǐ' }, - { tone: 'mi4' , caption: 'mì' }, - { tone: 'mian1' , caption: 'miān' }, - { tone: 'mian2' , caption: 'mián' }, - { tone: 'mian3' , caption: 'miǎn' }, - { tone: 'mian4' , caption: 'miàn' }, - { tone: 'mian5' , caption: 'mian' }, - { tone: 'miao1' , caption: 'miāo' }, - { tone: 'miao2' , caption: 'miáo' }, - { tone: 'miao3' , caption: 'miǎo' }, - { tone: 'miao4' , caption: 'miào' }, - { tone: 'mie1' , caption: 'miē' }, - { tone: 'mie4' , caption: 'miè' }, - { tone: 'min2' , caption: 'mín' }, - { tone: 'min3' , caption: 'mǐn' }, - { tone: 'ming1' , caption: 'mīng' }, - { tone: 'ming2' , caption: 'míng' }, - { tone: 'ming3' , caption: 'mǐng' }, - { tone: 'ming4' , caption: 'mìng' }, - { tone: 'miu1' , caption: 'miū' }, - { tone: 'miu4' , caption: 'miù' }, - { tone: 'mo1' , caption: 'mō' }, - { tone: 'mo2' , caption: 'mó' }, - { tone: 'mo3' , caption: 'mǒ' }, - { tone: 'mo4' , caption: 'mò' }, - { tone: 'mou1' , caption: 'mōu' }, - { tone: 'mou2' , caption: 'móu' }, - { tone: 'mou3' , caption: 'mǒu' }, - { tone: 'mu2' , caption: 'mú' }, - { tone: 'mu3' , caption: 'mǔ' }, - { tone: 'mu4' , caption: 'mù' }, - { tone: 'na1' , caption: 'nā' }, - { tone: 'na2' , caption: 'ná' }, - { tone: 'na3' , caption: 'nǎ' }, - { tone: 'na4' , caption: 'nà' }, - { tone: 'nai1' , caption: 'nāi' }, - { tone: 'nai2' , caption: 'nái' }, - { tone: 'nai3' , caption: 'nǎi' }, - { tone: 'nai4' , caption: 'nài' }, - { tone: 'nan1' , caption: 'nān' }, - { tone: 'nan2' , caption: 'nán' }, - { tone: 'nan3' , caption: 'nǎn' }, - { tone: 'nan4' , caption: 'nàn' }, - { tone: 'nang1' , caption: 'nāng' }, - { tone: 'nang2' , caption: 'náng' }, - { tone: 'nang3' , caption: 'nǎng' }, - { tone: 'nang4' , caption: 'nàng' }, - { tone: 'nao1' , caption: 'nāo' }, - { tone: 'nao2' , caption: 'náo' }, - { tone: 'nao3' , caption: 'nǎo' }, - { tone: 'nao4' , caption: 'nào' }, - { tone: 'ne1' , caption: 'nē' }, - { tone: 'ne2' , caption: 'né' }, - { tone: 'ne4' , caption: 'nè' }, - { tone: 'ne5' , caption: 'ne' }, - { tone: 'nei1' , caption: 'nēi' }, - { tone: 'nei3' , caption: 'něi' }, - { tone: 'nei4' , caption: 'nèi' }, - { tone: 'nen4' , caption: 'nèn' }, - { tone: 'neng2' , caption: 'néng' }, - { tone: 'ni1' , caption: 'nī' }, - { tone: 'ni2' , caption: 'ní' }, - { tone: 'ni3' , caption: 'nǐ' }, - { tone: 'ni4' , caption: 'nì' }, - { tone: 'nian1' , caption: 'niān' }, - { tone: 'nian2' , caption: 'nián' }, - { tone: 'nian3' , caption: 'niǎn' }, - { tone: 'nian4' , caption: 'niàn' }, - { tone: 'niang1' , caption: 'niāng' }, - { tone: 'niang2' , caption: 'niáng' }, - { tone: 'niang4' , caption: 'niàng' }, - { tone: 'niao3' , caption: 'niǎo' }, - { tone: 'niao4' , caption: 'niào' }, - { tone: 'nie1' , caption: 'niē' }, - { tone: 'nie2' , caption: 'nié' }, - { tone: 'nie4' , caption: 'niè' }, - { tone: 'nin2' , caption: 'nín' }, - { tone: 'nin3' , caption: 'nǐn' }, - { tone: 'ning2' , caption: 'níng' }, - { tone: 'ning3' , caption: 'nǐng' }, - { tone: 'ning4' , caption: 'nìng' }, - { tone: 'niu1' , caption: 'niū' }, - { tone: 'niu2' , caption: 'niú' }, - { tone: 'niu3' , caption: 'niǔ' }, - { tone: 'niu4' , caption: 'niù' }, - { tone: 'nong2' , caption: 'nóng' }, - { tone: 'nong4' , caption: 'nòng' }, - { tone: 'nou4' , caption: 'nòu' }, - { tone: 'nu2' , caption: 'nú' }, - { tone: 'nu3' , caption: 'nǔ' }, - { tone: 'nu4' , caption: 'nù' }, - { tone: 'nuan3' , caption: 'nuǎn' }, - { tone: 'nuo2' , caption: 'nuó' }, - { tone: 'nuo3' , caption: 'nuǒ' }, - { tone: 'nuo4' , caption: 'nuò' }, - { tone: 'nv3' , caption: 'nǚ' }, - { tone: 'nv4' , caption: 'nǜ' }, - { tone: 'nve1' , caption: 'nüē' }, - { tone: 'nve4' , caption: 'nüè' }, - { tone: 'o1' , caption: 'ō' }, - { tone: 'o4' , caption: 'ò' }, - { tone: 'ou1' , caption: 'ōu' }, - { tone: 'ou3' , caption: 'ǒu' }, - { tone: 'ou4' , caption: 'òu' }, - { tone: 'pa1' , caption: 'pā' }, - { tone: 'pa2' , caption: 'pá' }, - { tone: 'pa4' , caption: 'pà' }, - { tone: 'pai1' , caption: 'pāi' }, - { tone: 'pai2' , caption: 'pái' }, - { tone: 'pai3' , caption: 'pǎi' }, - { tone: 'pai4' , caption: 'pài' }, - { tone: 'pan1' , caption: 'pān' }, - { tone: 'pan2' , caption: 'pán' }, - { tone: 'pan4' , caption: 'pàn' }, - { tone: 'pang1' , caption: 'pāng' }, - { tone: 'pang2' , caption: 'páng' }, - { tone: 'pang4' , caption: 'pàng' }, - { tone: 'pao1' , caption: 'pāo' }, - { tone: 'pao2' , caption: 'páo' }, - { tone: 'pao3' , caption: 'pǎo' }, - { tone: 'pao4' , caption: 'pào' }, - { tone: 'pei1' , caption: 'pēi' }, - { tone: 'pei2' , caption: 'péi' }, - { tone: 'pei4' , caption: 'pèi' }, - { tone: 'pen1' , caption: 'pēn' }, - { tone: 'pen2' , caption: 'pén' }, - { tone: 'pen3' , caption: 'pěn' }, - { tone: 'peng1' , caption: 'pēng' }, - { tone: 'peng2' , caption: 'péng' }, - { tone: 'peng3' , caption: 'pěng' }, - { tone: 'peng4' , caption: 'pèng' }, - { tone: 'pi1' , caption: 'pī' }, - { tone: 'pi2' , caption: 'pí' }, - { tone: 'pi3' , caption: 'pǐ' }, - { tone: 'pi4' , caption: 'pì' }, - { tone: 'pian1' , caption: 'piān' }, - { tone: 'pian2' , caption: 'pián' }, - { tone: 'pian3' , caption: 'piǎn' }, - { tone: 'pian4' , caption: 'piàn' }, - { tone: 'piao1' , caption: 'piāo' }, - { tone: 'piao2' , caption: 'piáo' }, - { tone: 'piao3' , caption: 'piǎo' }, - { tone: 'piao4' , caption: 'piào' }, - { tone: 'pie1' , caption: 'piē' }, - { tone: 'pie3' , caption: 'piě' }, - { tone: 'pin1' , caption: 'pīn' }, - { tone: 'pin2' , caption: 'pín' }, - { tone: 'pin3' , caption: 'pǐn' }, - { tone: 'pin4' , caption: 'pìn' }, - { tone: 'ping1' , caption: 'pīng' }, - { tone: 'ping2' , caption: 'píng' }, - { tone: 'po1' , caption: 'pō' }, - { tone: 'po2' , caption: 'pó' }, - { tone: 'po3' , caption: 'pǒ' }, - { tone: 'po4' , caption: 'pò' }, - { tone: 'pou1' , caption: 'pōu' }, - { tone: 'pou2' , caption: 'póu' }, - { tone: 'pou3' , caption: 'pǒu' }, - { tone: 'pu1' , caption: 'pū' }, - { tone: 'pu2' , caption: 'pú' }, - { tone: 'pu3' , caption: 'pǔ' }, - { tone: 'pu4' , caption: 'pù' }, - { tone: 'qi1' , caption: 'qī' }, - { tone: 'qi2' , caption: 'qí' }, - { tone: 'qi3' , caption: 'qǐ' }, - { tone: 'qi4' , caption: 'qì' }, - { tone: 'qia1' , caption: 'qiā' }, - { tone: 'qia3' , caption: 'qiǎ' }, - { tone: 'qia4' , caption: 'qià' }, - { tone: 'qian1' , caption: 'qiān' }, - { tone: 'qian2' , caption: 'qián' }, - { tone: 'qian3' , caption: 'qiǎn' }, - { tone: 'qian4' , caption: 'qiàn' }, - { tone: 'qiang1' , caption: 'qiāng' }, - { tone: 'qiang2' , caption: 'qiáng' }, - { tone: 'qiang3' , caption: 'qiǎng' }, - { tone: 'qiang4' , caption: 'qiàng' }, - { tone: 'qiao1' , caption: 'qiāo' }, - { tone: 'qiao2' , caption: 'qiáo' }, - { tone: 'qiao3' , caption: 'qiǎo' }, - { tone: 'qiao4' , caption: 'qiào' }, - { tone: 'qie1' , caption: 'qiē' }, - { tone: 'qie2' , caption: 'qié' }, - { tone: 'qie3' , caption: 'qiě' }, - { tone: 'qie4' , caption: 'qiè' }, - { tone: 'qin1' , caption: 'qīn' }, - { tone: 'qin2' , caption: 'qín' }, - { tone: 'qin3' , caption: 'qǐn' }, - { tone: 'qin4' , caption: 'qìn' }, - { tone: 'qing1' , caption: 'qīng' }, - { tone: 'qing2' , caption: 'qíng' }, - { tone: 'qing3' , caption: 'qǐng' }, - { tone: 'qing4' , caption: 'qìng' }, - { tone: 'qiong2' , caption: 'qióng' }, - { tone: 'qiu1' , caption: 'qiū' }, - { tone: 'qiu2' , caption: 'qiú' }, - { tone: 'qiu3' , caption: 'qiǔ' }, - { tone: 'qu1' , caption: 'qū' }, - { tone: 'qu2' , caption: 'qú' }, - { tone: 'qu3' , caption: 'qǔ' }, - { tone: 'qu4' , caption: 'qù' }, - { tone: 'quan1' , caption: 'quān' }, - { tone: 'quan2' , caption: 'quán' }, - { tone: 'quan3' , caption: 'quǎn' }, - { tone: 'quan4' , caption: 'quàn' }, - { tone: 'que1' , caption: 'quē' }, - { tone: 'que2' , caption: 'qué' }, - { tone: 'que4' , caption: 'què' }, - { tone: 'qun2' , caption: 'qún' }, - { tone: 'ran2' , caption: 'rán' }, - { tone: 'ran3' , caption: 'rǎn' }, - { tone: 'rang2' , caption: 'ráng' }, - { tone: 'rang3' , caption: 'rǎng' }, - { tone: 'rang4' , caption: 'ràng' }, - { tone: 'rao2' , caption: 'ráo' }, - { tone: 'rao3' , caption: 'rǎo' }, - { tone: 'rao4' , caption: 'rào' }, - { tone: 're3' , caption: 'rě' }, - { tone: 're4' , caption: 'rè' }, - { tone: 'ren2' , caption: 'rén' }, - { tone: 'ren3' , caption: 'rěn' }, - { tone: 'ren4' , caption: 'rèn' }, - { tone: 'reng1' , caption: 'rēng' }, - { tone: 'reng2' , caption: 'réng' }, - { tone: 'ri4' , caption: 'rì' }, - { tone: 'rong2' , caption: 'róng' }, - { tone: 'rong3' , caption: 'rǒng' }, - { tone: 'rou2' , caption: 'róu' }, - { tone: 'rou4' , caption: 'ròu' }, - { tone: 'ru2' , caption: 'rú' }, - { tone: 'ru3' , caption: 'rǔ' }, - { tone: 'ru4' , caption: 'rù' }, - { tone: 'ruan3' , caption: 'ruǎn' }, - { tone: 'rui4' , caption: 'ruì' }, - { tone: 'run4' , caption: 'rùn' }, - { tone: 'ruo2' , caption: 'ruó' }, - { tone: 'ruo4' , caption: 'ruò' }, - { tone: 'sa1' , caption: 'sā' }, - { tone: 'sa3' , caption: 'sǎ' }, - { tone: 'sa4' , caption: 'sà' }, - { tone: 'sai1' , caption: 'sāi' }, - { tone: 'sai4' , caption: 'sài' }, - { tone: 'san1' , caption: 'sān' }, - { tone: 'san3' , caption: 'sǎn' }, - { tone: 'san4' , caption: 'sàn' }, - { tone: 'sang1' , caption: 'sāng' }, - { tone: 'sang3' , caption: 'sǎng' }, - { tone: 'sang4' , caption: 'sàng' }, - { tone: 'sao1' , caption: 'sāo' }, - { tone: 'sao3' , caption: 'sǎo' }, - { tone: 'sao4' , caption: 'sào' }, - { tone: 'se4' , caption: 'sè' }, - { tone: 'sen1' , caption: 'sēn' }, - { tone: 'seng1' , caption: 'sēng' }, - { tone: 'sha1' , caption: 'shā' }, - { tone: 'sha3' , caption: 'shǎ' }, - { tone: 'sha4' , caption: 'shà' }, - { tone: 'shai1' , caption: 'shāi' }, - { tone: 'shai4' , caption: 'shài' }, - { tone: 'shan1' , caption: 'shān' }, - { tone: 'shan3' , caption: 'shǎn' }, - { tone: 'shan4' , caption: 'shàn' }, - { tone: 'shang1' , caption: 'shāng' }, - { tone: 'shang3' , caption: 'shǎng' }, - { tone: 'shang4' , caption: 'shàng' }, - { tone: 'shao1' , caption: 'shāo' }, - { tone: 'shao2' , caption: 'sháo' }, - { tone: 'shao3' , caption: 'shǎo' }, - { tone: 'shao4' , caption: 'shào' }, - { tone: 'she1' , caption: 'shē' }, - { tone: 'she2' , caption: 'shé' }, - { tone: 'she3' , caption: 'shě' }, - { tone: 'she4' , caption: 'shè' }, - { tone: 'shei2' , caption: 'shéi' }, - { tone: 'shen1' , caption: 'shēn' }, - { tone: 'shen2' , caption: 'shén' }, - { tone: 'shen3' , caption: 'shěn' }, - { tone: 'shen4' , caption: 'shèn' }, - { tone: 'sheng1' , caption: 'shēng' }, - { tone: 'sheng2' , caption: 'shéng' }, - { tone: 'sheng3' , caption: 'shěng' }, - { tone: 'sheng4' , caption: 'shèng' }, - { tone: 'shi1' , caption: 'shī' }, - { tone: 'shi2' , caption: 'shí' }, - { tone: 'shi3' , caption: 'shǐ' }, - { tone: 'shi4' , caption: 'shì' }, - { tone: 'shou1' , caption: 'shōu' }, - { tone: 'shou2' , caption: 'shóu' }, - { tone: 'shou3' , caption: 'shǒu' }, - { tone: 'shou4' , caption: 'shòu' }, - { tone: 'shu1' , caption: 'shū' }, - { tone: 'shu2' , caption: 'shú' }, - { tone: 'shu3' , caption: 'shǔ' }, - { tone: 'shu4' , caption: 'shù' }, - { tone: 'shua1' , caption: 'shuā' }, - { tone: 'shua3' , caption: 'shuǎ' }, - { tone: 'shuai1' , caption: 'shuāi' }, - { tone: 'shuai3' , caption: 'shuǎi' }, - { tone: 'shuai4' , caption: 'shuài' }, - { tone: 'shuan1' , caption: 'shuān' }, - { tone: 'shuan4' , caption: 'shuàn' }, - { tone: 'shuang1' , caption: 'shuāng' }, - { tone: 'shuang3' , caption: 'shuǎng' }, - { tone: 'shui2' , caption: 'shuí' }, - { tone: 'shui3' , caption: 'shuǐ' }, - { tone: 'shui4' , caption: 'shuì' }, - { tone: 'shun3' , caption: 'shǔn' }, - { tone: 'shun4' , caption: 'shùn' }, - { tone: 'shuo1' , caption: 'shuō' }, - { tone: 'shuo4' , caption: 'shuò' }, - { tone: 'si1' , caption: 'sī' }, - { tone: 'si3' , caption: 'sǐ' }, - { tone: 'si4' , caption: 'sì' }, - { tone: 'song1' , caption: 'sōng' }, - { tone: 'song3' , caption: 'sǒng' }, - { tone: 'song4' , caption: 'sòng' }, - { tone: 'sou1' , caption: 'sōu' }, - { tone: 'sou3' , caption: 'sǒu' }, - { tone: 'sou4' , caption: 'sòu' }, - { tone: 'su1' , caption: 'sū' }, - { tone: 'su2' , caption: 'sú' }, - { tone: 'su4' , caption: 'sù' }, - { tone: 'suan1' , caption: 'suān' }, - { tone: 'suan4' , caption: 'suàn' }, - { tone: 'sui1' , caption: 'suī' }, - { tone: 'sui2' , caption: 'suí' }, - { tone: 'sui3' , caption: 'suǐ' }, - { tone: 'sui4' , caption: 'suì' }, - { tone: 'sun1' , caption: 'sūn' }, - { tone: 'sun3' , caption: 'sǔn' }, - { tone: 'suo1' , caption: 'suō' }, - { tone: 'suo3' , caption: 'suǒ' }, - { tone: 'ta1' , caption: 'tā' }, - { tone: 'ta3' , caption: 'tǎ' }, - { tone: 'ta4' , caption: 'tà' }, - { tone: 'tai1' , caption: 'tāi' }, - { tone: 'tai2' , caption: 'tái' }, - { tone: 'tai4' , caption: 'tài' }, - { tone: 'tan1' , caption: 'tān' }, - { tone: 'tan2' , caption: 'tán' }, - { tone: 'tan3' , caption: 'tǎn' }, - { tone: 'tan4' , caption: 'tàn' }, - { tone: 'tang1' , caption: 'tāng' }, - { tone: 'tang2' , caption: 'táng' }, - { tone: 'tang3' , caption: 'tǎng' }, - { tone: 'tang4' , caption: 'tàng' }, - { tone: 'tao1' , caption: 'tāo' }, - { tone: 'tao2' , caption: 'táo' }, - { tone: 'tao3' , caption: 'tǎo' }, - { tone: 'tao4' , caption: 'tào' }, - { tone: 'te4' , caption: 'tè' }, - { tone: 'teng2' , caption: 'téng' }, - { tone: 'ti1' , caption: 'tī' }, - { tone: 'ti2' , caption: 'tí' }, - { tone: 'ti3' , caption: 'tǐ' }, - { tone: 'ti4' , caption: 'tì' }, - { tone: 'tian1' , caption: 'tiān' }, - { tone: 'tian2' , caption: 'tián' }, - { tone: 'tian3' , caption: 'tiǎn' }, - { tone: 'tian4' , caption: 'tiàn' }, - { tone: 'tiao1' , caption: 'tiāo' }, - { tone: 'tiao2' , caption: 'tiáo' }, - { tone: 'tiao3' , caption: 'tiǎo' }, - { tone: 'tiao4' , caption: 'tiào' }, - { tone: 'tie1' , caption: 'tiē' }, - { tone: 'tie3' , caption: 'tiě' }, - { tone: 'tie4' , caption: 'tiè' }, - { tone: 'ting1' , caption: 'tīng' }, - { tone: 'ting2' , caption: 'tíng' }, - { tone: 'ting3' , caption: 'tǐng' }, - { tone: 'tong1' , caption: 'tōng' }, - { tone: 'tong2' , caption: 'tóng' }, - { tone: 'tong3' , caption: 'tǒng' }, - { tone: 'tong4' , caption: 'tòng' }, - { tone: 'tou1' , caption: 'tōu' }, - { tone: 'tou2' , caption: 'tóu' }, - { tone: 'tou4' , caption: 'tòu' }, - { tone: 'tu1' , caption: 'tū' }, - { tone: 'tu2' , caption: 'tú' }, - { tone: 'tu3' , caption: 'tǔ' }, - { tone: 'tu4' , caption: 'tù' }, - { tone: 'tuan1' , caption: 'tuān' }, - { tone: 'tuan2' , caption: 'tuán' }, - { tone: 'tui1' , caption: 'tuī' }, - { tone: 'tui2' , caption: 'tuí' }, - { tone: 'tui3' , caption: 'tuǐ' }, - { tone: 'tui4' , caption: 'tuì' }, - { tone: 'tun1' , caption: 'tūn' }, - { tone: 'tun2' , caption: 'tún' }, - { tone: 'tun3' , caption: 'tǔn' }, - { tone: 'tun4' , caption: 'tùn' }, - { tone: 'tuo1' , caption: 'tuō' }, - { tone: 'tuo2' , caption: 'tuó' }, - { tone: 'tuo3' , caption: 'tuǒ' }, - { tone: 'tuo4' , caption: 'tuò' }, - { tone: 'wa1' , caption: 'wā' }, - { tone: 'wa2' , caption: 'wá' }, - { tone: 'wa3' , caption: 'wǎ' }, - { tone: 'wa4' , caption: 'wà' }, - { tone: 'wai1' , caption: 'wāi' }, - { tone: 'wai3' , caption: 'wǎi' }, - { tone: 'wai4' , caption: 'wài' }, - { tone: 'wan1' , caption: 'wān' }, - { tone: 'wan2' , caption: 'wán' }, - { tone: 'wan3' , caption: 'wǎn' }, - { tone: 'wan4' , caption: 'wàn' }, - { tone: 'wang1' , caption: 'wāng' }, - { tone: 'wang2' , caption: 'wáng' }, - { tone: 'wang3' , caption: 'wǎng' }, - { tone: 'wang4' , caption: 'wàng' }, - { tone: 'wei1' , caption: 'wēi' }, - { tone: 'wei2' , caption: 'wéi' }, - { tone: 'wei3' , caption: 'wěi' }, - { tone: 'wei4' , caption: 'wèi' }, - { tone: 'wen1' , caption: 'wēn' }, - { tone: 'wen2' , caption: 'wén' }, - { tone: 'wen3' , caption: 'wěn' }, - { tone: 'wen4' , caption: 'wèn' }, - { tone: 'weng1' , caption: 'wēng' }, - { tone: 'weng3' , caption: 'wěng' }, - { tone: 'weng4' , caption: 'wèng' }, - { tone: 'wo1' , caption: 'wō' }, - { tone: 'wo3' , caption: 'wǒ' }, - { tone: 'wo4' , caption: 'wò' }, - { tone: 'wu1' , caption: 'wū' }, - { tone: 'wu2' , caption: 'wú' }, - { tone: 'wu3' , caption: 'wǔ' }, - { tone: 'wu4' , caption: 'wù' }, - { tone: 'xi1' , caption: 'xī' }, - { tone: 'xi2' , caption: 'xí' }, - { tone: 'xi3' , caption: 'xǐ' }, - { tone: 'xi4' , caption: 'xì' }, - { tone: 'xia1' , caption: 'xiā' }, - { tone: 'xia2' , caption: 'xiá' }, - { tone: 'xia4' , caption: 'xià' }, - { tone: 'xian1' , caption: 'xiān' }, - { tone: 'xian2' , caption: 'xián' }, - { tone: 'xian3' , caption: 'xiǎn' }, - { tone: 'xian4' , caption: 'xiàn' }, - { tone: 'xiang1' , caption: 'xiāng' }, - { tone: 'xiang2' , caption: 'xiáng' }, - { tone: 'xiang3' , caption: 'xiǎng' }, - { tone: 'xiang4' , caption: 'xiàng' }, - { tone: 'xiao1' , caption: 'xiāo' }, - { tone: 'xiao2' , caption: 'xiáo' }, - { tone: 'xiao3' , caption: 'xiǎo' }, - { tone: 'xiao4' , caption: 'xiào' }, - { tone: 'xie1' , caption: 'xiē' }, - { tone: 'xie2' , caption: 'xié' }, - { tone: 'xie3' , caption: 'xiě' }, - { tone: 'xie4' , caption: 'xiè' }, - { tone: 'xin1' , caption: 'xīn' }, - { tone: 'xin4' , caption: 'xìn' }, - { tone: 'xing1' , caption: 'xīng' }, - { tone: 'xing2' , caption: 'xíng' }, - { tone: 'xing3' , caption: 'xǐng' }, - { tone: 'xing4' , caption: 'xìng' }, - { tone: 'xiong1' , caption: 'xiōng' }, - { tone: 'xiong2' , caption: 'xióng' }, - { tone: 'xiu1' , caption: 'xiū' }, - { tone: 'xiu3' , caption: 'xiǔ' }, - { tone: 'xiu4' , caption: 'xiù' }, - { tone: 'xu1' , caption: 'xū' }, - { tone: 'xu2' , caption: 'xú' }, - { tone: 'xu3' , caption: 'xǔ' }, - { tone: 'xu4' , caption: 'xù' }, - { tone: 'xuan1' , caption: 'xuān' }, - { tone: 'xuan2' , caption: 'xuán' }, - { tone: 'xuan3' , caption: 'xuǎn' }, - { tone: 'xuan4' , caption: 'xuàn' }, - { tone: 'xue1' , caption: 'xuē' }, - { tone: 'xue2' , caption: 'xué' }, - { tone: 'xue3' , caption: 'xuě' }, - { tone: 'xue4' , caption: 'xuè' }, - { tone: 'xun1' , caption: 'xūn' }, - { tone: 'xun2' , caption: 'xún' }, - { tone: 'xun4' , caption: 'xùn' }, - { tone: 'ya1' , caption: 'yā' }, - { tone: 'ya2' , caption: 'yá' }, - { tone: 'ya3' , caption: 'yǎ' }, - { tone: 'ya4' , caption: 'yà' }, - { tone: 'ya5' , caption: 'ya' }, - { tone: 'yan1' , caption: 'yān' }, - { tone: 'yan2' , caption: 'yán' }, - { tone: 'yan3' , caption: 'yǎn' }, - { tone: 'yan4' , caption: 'yàn' }, - { tone: 'yang1' , caption: 'yāng' }, - { tone: 'yang2' , caption: 'yáng' }, - { tone: 'yang3' , caption: 'yǎng' }, - { tone: 'yang4' , caption: 'yàng' }, - { tone: 'yao1' , caption: 'yāo' }, - { tone: 'yao2' , caption: 'yáo' }, - { tone: 'yao3' , caption: 'yǎo' }, - { tone: 'yao4' , caption: 'yào' }, - { tone: 'ye1' , caption: 'yē' }, - { tone: 'ye2' , caption: 'yé' }, - { tone: 'ye3' , caption: 'yě' }, - { tone: 'ye4' , caption: 'yè' }, - { tone: 'yi1' , caption: 'yī' }, - { tone: 'yi2' , caption: 'yí' }, - { tone: 'yi3' , caption: 'yǐ' }, - { tone: 'yi4' , caption: 'yì' }, - { tone: 'yin1' , caption: 'yīn' }, - { tone: 'yin2' , caption: 'yín' }, - { tone: 'yin3' , caption: 'yǐn' }, - { tone: 'yin4' , caption: 'yìn' }, - { tone: 'ying1' , caption: 'yīng' }, - { tone: 'ying2' , caption: 'yíng' }, - { tone: 'ying3' , caption: 'yǐng' }, - { tone: 'ying4' , caption: 'yìng' }, - { tone: 'yo1' , caption: 'yō' }, - { tone: 'yong1' , caption: 'yōng' }, - { tone: 'yong2' , caption: 'yóng' }, - { tone: 'yong3' , caption: 'yǒng' }, - { tone: 'yong4' , caption: 'yòng' }, - { tone: 'you1' , caption: 'yōu' }, - { tone: 'you2' , caption: 'yóu' }, - { tone: 'you3' , caption: 'yǒu' }, - { tone: 'you4' , caption: 'yòu' }, - { tone: 'yu1' , caption: 'yū' }, - { tone: 'yu2' , caption: 'yú' }, - { tone: 'yu3' , caption: 'yǔ' }, - { tone: 'yu4' , caption: 'yù' }, - { tone: 'yuan1' , caption: 'yuān' }, - { tone: 'yuan2' , caption: 'yuán' }, - { tone: 'yuan3' , caption: 'yuǎn' }, - { tone: 'yuan4' , caption: 'yuàn' }, - { tone: 'yue1' , caption: 'yuē' }, - { tone: 'yue4' , caption: 'yuè' }, - { tone: 'yun1' , caption: 'yūn' }, - { tone: 'yun2' , caption: 'yún' }, - { tone: 'yun3' , caption: 'yǔn' }, - { tone: 'yun4' , caption: 'yùn' }, - { tone: 'za1' , caption: 'zā' }, - { tone: 'za2' , caption: 'zá' }, - { tone: 'za3' , caption: 'zǎ' }, - { tone: 'zai1' , caption: 'zāi' }, - { tone: 'zai3' , caption: 'zǎi' }, - { tone: 'zai4' , caption: 'zài' }, - { tone: 'zan1' , caption: 'zān' }, - { tone: 'zan2' , caption: 'zán' }, - { tone: 'zan4' , caption: 'zàn' }, - { tone: 'zang1' , caption: 'zāng' }, - { tone: 'zang4' , caption: 'zàng' }, - { tone: 'zao1' , caption: 'zāo' }, - { tone: 'zao2' , caption: 'záo' }, - { tone: 'zao3' , caption: 'zǎo' }, - { tone: 'zao4' , caption: 'zào' }, - { tone: 'ze2' , caption: 'zé' }, - { tone: 'ze4' , caption: 'zè' }, - { tone: 'zei2' , caption: 'zéi' }, - { tone: 'zen3' , caption: 'zěn' }, - { tone: 'zeng1' , caption: 'zēng' }, - { tone: 'zeng4' , caption: 'zèng' }, - { tone: 'zha1' , caption: 'zhā' }, - { tone: 'zha2' , caption: 'zhá' }, - { tone: 'zha3' , caption: 'zhǎ' }, - { tone: 'zha4' , caption: 'zhà' }, - { tone: 'zhai1' , caption: 'zhāi' }, - { tone: 'zhai2' , caption: 'zhái' }, - { tone: 'zhai3' , caption: 'zhǎi' }, - { tone: 'zhai4' , caption: 'zhài' }, - { tone: 'zhan1' , caption: 'zhān' }, - { tone: 'zhan3' , caption: 'zhǎn' }, - { tone: 'zhan4' , caption: 'zhàn' }, - { tone: 'zhang1' , caption: 'zhāng' }, - { tone: 'zhang3' , caption: 'zhǎng' }, - { tone: 'zhang4' , caption: 'zhàng' }, - { tone: 'zhao1' , caption: 'zhāo' }, - { tone: 'zhao2' , caption: 'zháo' }, - { tone: 'zhao3' , caption: 'zhǎo' }, - { tone: 'zhao4' , caption: 'zhào' }, - { tone: 'zhe1' , caption: 'zhē' }, - { tone: 'zhe2' , caption: 'zhé' }, - { tone: 'zhe3' , caption: 'zhě' }, - { tone: 'zhe4' , caption: 'zhè' }, - { tone: 'zhen1' , caption: 'zhēn' }, - { tone: 'zhen2' , caption: 'zhén' }, - { tone: 'zhen3' , caption: 'zhěn' }, - { tone: 'zhen4' , caption: 'zhèn' }, - { tone: 'zheng1' , caption: 'zhēng' }, - { tone: 'zheng3' , caption: 'zhěng' }, - { tone: 'zheng4' , caption: 'zhèng' }, - { tone: 'zhi1' , caption: 'zhī' }, - { tone: 'zhi2' , caption: 'zhí' }, - { tone: 'zhi3' , caption: 'zhǐ' }, - { tone: 'zhi4' , caption: 'zhì' }, - { tone: 'zhong1' , caption: 'zhōng' }, - { tone: 'zhong3' , caption: 'zhǒng' }, - { tone: 'zhong4' , caption: 'zhòng' }, - { tone: 'zhou1' , caption: 'zhōu' }, - { tone: 'zhou2' , caption: 'zhóu' }, - { tone: 'zhou3' , caption: 'zhǒu' }, - { tone: 'zhou4' , caption: 'zhòu' }, - { tone: 'zhu1' , caption: 'zhū' }, - { tone: 'zhu2' , caption: 'zhú' }, - { tone: 'zhu3' , caption: 'zhǔ' }, - { tone: 'zhu4' , caption: 'zhù' }, - { tone: 'zhua1' , caption: 'zhuā' }, - { tone: 'zhua3' , caption: 'zhuǎ' }, - { tone: 'zhuan1' , caption: 'zhuān' }, - { tone: 'zhuan3' , caption: 'zhuǎn' }, - { tone: 'zhuan4' , caption: 'zhuàn' }, - { tone: 'zhuang1' , caption: 'zhuāng' }, - { tone: 'zhuang4' , caption: 'zhuàng' }, - { tone: 'zhui1' , caption: 'zhuī' }, - { tone: 'zhui4' , caption: 'zhuì' }, - { tone: 'zhun1' , caption: 'zhūn' }, - { tone: 'zhun3' , caption: 'zhǔn' }, - { tone: 'zhuo1' , caption: 'zhuō' }, - { tone: 'zhuo2' , caption: 'zhuó' }, - { tone: 'zi1' , caption: 'zī' }, - { tone: 'zi3' , caption: 'zǐ' }, - { tone: 'zi4' , caption: 'zì' }, - { tone: 'zong1' , caption: 'zōng' }, - { tone: 'zong3' , caption: 'zǒng' }, - { tone: 'zong4' , caption: 'zòng' }, - { tone: 'zou3' , caption: 'zǒu' }, - { tone: 'zou4' , caption: 'zòu' }, - { tone: 'zu1' , caption: 'zū' }, - { tone: 'zu2' , caption: 'zú' }, - { tone: 'zu3' , caption: 'zǔ' }, - { tone: 'zu4' , caption: 'zù' }, - { tone: 'zuan1' , caption: 'zuān' }, - { tone: 'zuan3' , caption: 'zuǎn' }, - { tone: 'zuan4' , caption: 'zuàn' }, - { tone: 'zui3' , caption: 'zuǐ' }, - { tone: 'zui4' , caption: 'zuì' }, - { tone: 'zun1' , caption: 'zūn' }, - { tone: 'zun3' , caption: 'zǔn' }, - { tone: 'zuo1' , caption: 'zuō' }, - { tone: 'zuo2' , caption: 'zuó' }, - { tone: 'zuo3' , caption: 'zuǒ' }, - { tone: 'zuo4' , caption: 'zuò' } + { tone: 'a1' , caption: 'ā' , num: 1}, + { tone: 'ai1' , caption: 'āi' , num: 1}, + { tone: 'ai2' , caption: 'ái' , num: 2}, + { tone: 'ai3' , caption: 'ǎi' , num: 3}, + { tone: 'ai4' , caption: 'ài' , num: 4}, + { tone: 'an1' , caption: 'ān' , num: 1}, + { tone: 'an3' , caption: 'ǎn' , num: 3}, + { tone: 'an4' , caption: 'àn' , num: 4}, + { tone: 'ang1' , caption: 'āng' , num: 1}, + { tone: 'ang2' , caption: 'áng' , num: 2}, + { tone: 'ang4' , caption: 'àng' , num: 4}, + { tone: 'ao1' , caption: 'āo' , num: 1}, + { tone: 'ao2' , caption: 'áo' , num: 2}, + { tone: 'ao3' , caption: 'ǎo' , num: 3}, + { tone: 'ao4' , caption: 'ào' , num: 4}, + { tone: 'ba1' , caption: 'bā' , num: 1}, + { tone: 'ba2' , caption: 'bá' , num: 2}, + { tone: 'ba3' , caption: 'bǎ' , num: 3}, + { tone: 'ba4' , caption: 'bà' , num: 4}, + { tone: 'bai1' , caption: 'bāi' , num: 1}, + { tone: 'bai2' , caption: 'bái' , num: 2}, + { tone: 'bai3' , caption: 'bǎi' , num: 3}, + { tone: 'bai4' , caption: 'bài' , num: 4}, + { tone: 'ban1' , caption: 'bān' , num: 1}, + { tone: 'ban3' , caption: 'bǎn' , num: 3}, + { tone: 'ban4' , caption: 'bàn' , num: 4}, + { tone: 'bang1' , caption: 'bāng' , num: 1}, + { tone: 'bang3' , caption: 'bǎng' , num: 3}, + { tone: 'bang4' , caption: 'bàng' , num: 4}, + { tone: 'bao1' , caption: 'bāo' , num: 1}, + { tone: 'bao2' , caption: 'báo' , num: 2}, + { tone: 'bao3' , caption: 'bǎo' , num: 3}, + { tone: 'bao4' , caption: 'bào' , num: 4}, + { tone: 'bei1' , caption: 'bēi' , num: 1}, + { tone: 'bei3' , caption: 'běi' , num: 3}, + { tone: 'bei4' , caption: 'bèi' , num: 4}, + { tone: 'ben1' , caption: 'bēn' , num: 1}, + { tone: 'ben3' , caption: 'běn' , num: 3}, + { tone: 'ben4' , caption: 'bèn' , num: 4}, + { tone: 'beng1' , caption: 'bēng' , num: 1}, + { tone: 'beng2' , caption: 'béng' , num: 2}, + { tone: 'beng3' , caption: 'běng' , num: 3}, + { tone: 'beng4' , caption: 'bèng' , num: 4}, + { tone: 'bi1' , caption: 'bī' , num: 1}, + { tone: 'bi2' , caption: 'bí' , num: 2}, + { tone: 'bi3' , caption: 'bǐ' , num: 3}, + { tone: 'bi4' , caption: 'bì' , num: 4}, + { tone: 'bian1' , caption: 'biān' , num: 1}, + { tone: 'bian3' , caption: 'biǎn' , num: 3}, + { tone: 'bian4' , caption: 'biàn' , num: 4}, + { tone: 'biao1' , caption: 'biāo' , num: 1}, + { tone: 'biao3' , caption: 'biǎo' , num: 3}, + { tone: 'biao4' , caption: 'biào' , num: 4}, + { tone: 'bie1' , caption: 'biē' , num: 1}, + { tone: 'bie2' , caption: 'bié' , num: 2}, + { tone: 'bie3' , caption: 'biě' , num: 3}, + { tone: 'bie4' , caption: 'biè' , num: 4}, + { tone: 'bin1' , caption: 'bīn' , num: 1}, + { tone: 'bin4' , caption: 'bìn' , num: 4}, + { tone: 'bing1' , caption: 'bīng' , num: 1}, + { tone: 'bing3' , caption: 'bǐng' , num: 3}, + { tone: 'bing4' , caption: 'bìng' , num: 4}, + { tone: 'bo1' , caption: 'bō' , num: 1}, + { tone: 'bo2' , caption: 'bó' , num: 2}, + { tone: 'bo3' , caption: 'bǒ' , num: 3}, + { tone: 'bo4' , caption: 'bò' , num: 4}, + { tone: 'bu1' , caption: 'bū' , num: 1}, + { tone: 'bu2' , caption: 'bú' , num: 2}, + { tone: 'bu3' , caption: 'bǔ' , num: 3}, + { tone: 'bu4' , caption: 'bù' , num: 4}, + { tone: 'ca1' , caption: 'cā' , num: 1}, + { tone: 'cai1' , caption: 'cāi' , num: 1}, + { tone: 'cai2' , caption: 'cái' , num: 2}, + { tone: 'cai3' , caption: 'cǎi' , num: 3}, + { tone: 'cai4' , caption: 'cài' , num: 4}, + { tone: 'can1' , caption: 'cān' , num: 1}, + { tone: 'can2' , caption: 'cán' , num: 2}, + { tone: 'can3' , caption: 'cǎn' , num: 3}, + { tone: 'can4' , caption: 'càn' , num: 4}, + { tone: 'cang1' , caption: 'cāng' , num: 1}, + { tone: 'cang2' , caption: 'cáng' , num: 2}, + { tone: 'cao1' , caption: 'cāo' , num: 1}, + { tone: 'cao2' , caption: 'cáo' , num: 2}, + { tone: 'cao3' , caption: 'cǎo' , num: 3}, + { tone: 'cao4' , caption: 'cào' , num: 4}, + { tone: 'ce4' , caption: 'cè' , num: 4}, + { tone: 'cen1' , caption: 'cēn' , num: 1}, + { tone: 'cen2' , caption: 'cén' , num: 2}, + { tone: 'ceng1' , caption: 'cēng' , num: 1}, + { tone: 'ceng2' , caption: 'céng' , num: 2}, + { tone: 'ceng4' , caption: 'cèng' , num: 4}, + { tone: 'cha1' , caption: 'chā' , num: 1}, + { tone: 'cha2' , caption: 'chá' , num: 2}, + { tone: 'cha4' , caption: 'chà' , num: 4}, + { tone: 'chai1' , caption: 'chāi' , num: 1}, + { tone: 'chai2' , caption: 'chái' , num: 2}, + { tone: 'chan1' , caption: 'chān' , num: 1}, + { tone: 'chan2' , caption: 'chán' , num: 2}, + { tone: 'chan3' , caption: 'chǎn' , num: 3}, + { tone: 'chan4' , caption: 'chàn' , num: 4}, + { tone: 'chang1' , caption: 'chāng' , num: 1}, + { tone: 'chang2' , caption: 'cháng' , num: 2}, + { tone: 'chang3' , caption: 'chǎng' , num: 3}, + { tone: 'chang4' , caption: 'chàng' , num: 4}, + { tone: 'chao1' , caption: 'chāo' , num: 1}, + { tone: 'chao2' , caption: 'cháo' , num: 2}, + { tone: 'chao3' , caption: 'chǎo' , num: 3}, + { tone: 'chao4' , caption: 'chào' , num: 4}, + { tone: 'che1' , caption: 'chē' , num: 1}, + { tone: 'che3' , caption: 'chě' , num: 3}, + { tone: 'che4' , caption: 'chè' , num: 4}, + { tone: 'chen1' , caption: 'chēn' , num: 1}, + { tone: 'chen2' , caption: 'chén' , num: 2}, + { tone: 'chen3' , caption: 'chěn' , num: 3}, + { tone: 'chen4' , caption: 'chèn' , num: 4}, + { tone: 'cheng1' , caption: 'chēng' , num: 1}, + { tone: 'cheng2' , caption: 'chéng' , num: 2}, + { tone: 'cheng3' , caption: 'chěng' , num: 3}, + { tone: 'cheng4' , caption: 'chèng' , num: 4}, + { tone: 'chi1' , caption: 'chī' , num: 1}, + { tone: 'chi2' , caption: 'chí' , num: 2}, + { tone: 'chi3' , caption: 'chǐ' , num: 3}, + { tone: 'chi4' , caption: 'chì' , num: 4}, + { tone: 'chong1' , caption: 'chōng' , num: 1}, + { tone: 'chong2' , caption: 'chóng' , num: 2}, + { tone: 'chong3' , caption: 'chǒng' , num: 3}, + { tone: 'chong4' , caption: 'chòng' , num: 4}, + { tone: 'chou1' , caption: 'chōu' , num: 1}, + { tone: 'chou2' , caption: 'chóu' , num: 2}, + { tone: 'chou3' , caption: 'chǒu' , num: 3}, + { tone: 'chou4' , caption: 'chòu' , num: 4}, + { tone: 'chu1' , caption: 'chū' , num: 1}, + { tone: 'chu2' , caption: 'chú' , num: 2}, + { tone: 'chu3' , caption: 'chǔ' , num: 3}, + { tone: 'chu4' , caption: 'chù' , num: 4}, + { tone: 'chuai1' , caption: 'chuāi' , num: 1}, + { tone: 'chuai3' , caption: 'chuǎi' , num: 3}, + { tone: 'chuai4' , caption: 'chuài' , num: 4}, + { tone: 'chuan1' , caption: 'chuān' , num: 1}, + { tone: 'chuan2' , caption: 'chuán' , num: 2}, + { tone: 'chuan3' , caption: 'chuǎn' , num: 3}, + { tone: 'chuan4' , caption: 'chuàn' , num: 4}, + { tone: 'chuang1' , caption: 'chuāng' , num: 1}, + { tone: 'chuang2' , caption: 'chuáng' , num: 2}, + { tone: 'chuang3' , caption: 'chuǎng' , num: 3}, + { tone: 'chuang4' , caption: 'chuàng' , num: 4}, + { tone: 'chui1' , caption: 'chuī' , num: 1}, + { tone: 'chui2' , caption: 'chuí' , num: 2}, + { tone: 'chun1' , caption: 'chūn' , num: 1}, + { tone: 'chun2' , caption: 'chún' , num: 2}, + { tone: 'chun3' , caption: 'chǔn' , num: 3}, + { tone: 'chuo1' , caption: 'chuō' , num: 1}, + { tone: 'chuo4' , caption: 'chuò' , num: 4}, + { tone: 'ci1' , caption: 'cī' , num: 1}, + { tone: 'ci2' , caption: 'cí' , num: 2}, + { tone: 'ci3' , caption: 'cǐ' , num: 3}, + { tone: 'ci4' , caption: 'cì' , num: 4}, + { tone: 'cong1' , caption: 'cōng' , num: 1}, + { tone: 'cong2' , caption: 'cóng' , num: 2}, + { tone: 'cou4' , caption: 'còu' , num: 4}, + { tone: 'cu1' , caption: 'cū' , num: 1}, + { tone: 'cu2' , caption: 'cú' , num: 2}, + { tone: 'cu4' , caption: 'cù' , num: 4}, + { tone: 'cuan1' , caption: 'cuān' , num: 1}, + { tone: 'cuan2' , caption: 'cuán' , num: 2}, + { tone: 'cuan4' , caption: 'cuàn' , num: 4}, + { tone: 'cui1' , caption: 'cuī' , num: 1}, + { tone: 'cui3' , caption: 'cuǐ' , num: 3}, + { tone: 'cui4' , caption: 'cuì' , num: 4}, + { tone: 'cun1' , caption: 'cūn' , num: 1}, + { tone: 'cun2' , caption: 'cún' , num: 2}, + { tone: 'cun3' , caption: 'cǔn' , num: 3}, + { tone: 'cun4' , caption: 'cùn' , num: 4}, + { tone: 'cuo1' , caption: 'cuō' , num: 1}, + { tone: 'cuo2' , caption: 'cuó' , num: 2}, + { tone: 'cuo4' , caption: 'cuò' , num: 4}, + { tone: 'da1' , caption: 'dā' , num: 1}, + { tone: 'da2' , caption: 'dá' , num: 2}, + { tone: 'da3' , caption: 'dǎ' , num: 3}, + { tone: 'da4' , caption: 'dà' , num: 4}, + { tone: 'dai1' , caption: 'dāi' , num: 1}, + { tone: 'dai3' , caption: 'dǎi' , num: 3}, + { tone: 'dai4' , caption: 'dài' , num: 4}, + { tone: 'dan1' , caption: 'dān' , num: 1}, + { tone: 'dan3' , caption: 'dǎn' , num: 3}, + { tone: 'dan4' , caption: 'dàn' , num: 4}, + { tone: 'dang1' , caption: 'dāng' , num: 1}, + { tone: 'dang3' , caption: 'dǎng' , num: 3}, + { tone: 'dang4' , caption: 'dàng' , num: 4}, + { tone: 'dao1' , caption: 'dāo' , num: 1}, + { tone: 'dao3' , caption: 'dǎo' , num: 3}, + { tone: 'dao4' , caption: 'dào' , num: 4}, + { tone: 'de1' , caption: 'dē' , num: 1}, + { tone: 'de2' , caption: 'dé' , num: 2}, + { tone: 'de5' , caption: 'de' , num: 5}, + { tone: 'dei1' , caption: 'dēi' , num: 1}, + { tone: 'dei3' , caption: 'děi' , num: 3}, + { tone: 'den4' , caption: 'dèn' , num: 4}, + { tone: 'deng1' , caption: 'dēng' , num: 1}, + { tone: 'deng3' , caption: 'děng' , num: 3}, + { tone: 'deng4' , caption: 'dèng' , num: 4}, + { tone: 'di1' , caption: 'dī' , num: 1}, + { tone: 'di2' , caption: 'dí' , num: 2}, + { tone: 'di3' , caption: 'dǐ' , num: 3}, + { tone: 'di4' , caption: 'dì' , num: 4}, + { tone: 'dia3' , caption: 'diǎ' , num: 3}, + { tone: 'dian1' , caption: 'diān' , num: 1}, + { tone: 'dian3' , caption: 'diǎn' , num: 3}, + { tone: 'dian4' , caption: 'diàn' , num: 4}, + { tone: 'diao1' , caption: 'diāo' , num: 1}, + { tone: 'diao3' , caption: 'diǎo' , num: 3}, + { tone: 'diao4' , caption: 'diào' , num: 4}, + { tone: 'die1' , caption: 'diē' , num: 1}, + { tone: 'die2' , caption: 'dié' , num: 2}, + { tone: 'ding1' , caption: 'dīng' , num: 1}, + { tone: 'ding3' , caption: 'dǐng' , num: 3}, + { tone: 'ding4' , caption: 'dìng' , num: 4}, + { tone: 'diu1' , caption: 'diū' , num: 1}, + { tone: 'dong1' , caption: 'dōng' , num: 1}, + { tone: 'dong3' , caption: 'dǒng' , num: 3}, + { tone: 'dong4' , caption: 'dòng' , num: 4}, + { tone: 'dou1' , caption: 'dōu' , num: 1}, + { tone: 'dou3' , caption: 'dǒu' , num: 3}, + { tone: 'dou4' , caption: 'dòu' , num: 4}, + { tone: 'du1' , caption: 'dū' , num: 1}, + { tone: 'du2' , caption: 'dú' , num: 2}, + { tone: 'du3' , caption: 'dǔ' , num: 3}, + { tone: 'du4' , caption: 'dù' , num: 4}, + { tone: 'duan1' , caption: 'duān' , num: 1}, + { tone: 'duan3' , caption: 'duǎn' , num: 3}, + { tone: 'duan4' , caption: 'duàn' , num: 4}, + { tone: 'dui1' , caption: 'duī' , num: 1}, + { tone: 'dui4' , caption: 'duì' , num: 4}, + { tone: 'dun1' , caption: 'dūn' , num: 1}, + { tone: 'dun3' , caption: 'dǔn' , num: 3}, + { tone: 'dun4' , caption: 'dùn' , num: 4}, + { tone: 'duo1' , caption: 'duō' , num: 1}, + { tone: 'duo2' , caption: 'duó' , num: 2}, + { tone: 'duo3' , caption: 'duǒ' , num: 3}, + { tone: 'duo4' , caption: 'duò' , num: 4}, + { tone: 'e1' , caption: 'ē' , num: 1}, + { tone: 'e2' , caption: 'é' , num: 2}, + { tone: 'e3' , caption: 'ě' , num: 3}, + { tone: 'e4' , caption: 'è' , num: 4}, + { tone: 'ei1' , caption: 'ēi' , num: 1}, + { tone: 'en1' , caption: 'ēn' , num: 1}, + { tone: 'en4' , caption: 'èn' , num: 4}, + { tone: 'er2' , caption: 'ér' , num: 2}, + { tone: 'er3' , caption: 'ěr' , num: 3}, + { tone: 'er4' , caption: 'èr' , num: 4}, + { tone: 'fa1' , caption: 'fā' , num: 1}, + { tone: 'fa2' , caption: 'fá' , num: 2}, + { tone: 'fa3' , caption: 'fǎ' , num: 3}, + { tone: 'fa4' , caption: 'fà' , num: 4}, + { tone: 'fan1' , caption: 'fān' , num: 1}, + { tone: 'fan2' , caption: 'fán' , num: 2}, + { tone: 'fan3' , caption: 'fǎn' , num: 3}, + { tone: 'fan4' , caption: 'fàn' , num: 4}, + { tone: 'fang1' , caption: 'fāng' , num: 1}, + { tone: 'fang2' , caption: 'fáng' , num: 2}, + { tone: 'fang3' , caption: 'fǎng' , num: 3}, + { tone: 'fang4' , caption: 'fàng' , num: 4}, + { tone: 'fei1' , caption: 'fēi' , num: 1}, + { tone: 'fei2' , caption: 'féi' , num: 2}, + { tone: 'fei3' , caption: 'fěi' , num: 3}, + { tone: 'fei4' , caption: 'fèi' , num: 4}, + { tone: 'fen1' , caption: 'fēn' , num: 1}, + { tone: 'fen2' , caption: 'fén' , num: 2}, + { tone: 'fen3' , caption: 'fěn' , num: 3}, + { tone: 'fen4' , caption: 'fèn' , num: 4}, + { tone: 'feng1' , caption: 'fēng' , num: 1}, + { tone: 'feng2' , caption: 'féng' , num: 2}, + { tone: 'feng3' , caption: 'fěng' , num: 3}, + { tone: 'feng4' , caption: 'fèng' , num: 4}, + { tone: 'fo2' , caption: 'fó' , num: 2}, + { tone: 'fou2' , caption: 'fóu' , num: 2}, + { tone: 'fou3' , caption: 'fǒu' , num: 3}, + { tone: 'fu1' , caption: 'fū' , num: 1}, + { tone: 'fu2' , caption: 'fú' , num: 2}, + { tone: 'fu3' , caption: 'fǔ' , num: 3}, + { tone: 'fu4' , caption: 'fù' , num: 4}, + { tone: 'ga1' , caption: 'gā' , num: 1}, + { tone: 'ga2' , caption: 'gá' , num: 2}, + { tone: 'ga4' , caption: 'gà' , num: 4}, + { tone: 'gai1' , caption: 'gāi' , num: 1}, + { tone: 'gai3' , caption: 'gǎi' , num: 3}, + { tone: 'gai4' , caption: 'gài' , num: 4}, + { tone: 'gan1' , caption: 'gān' , num: 1}, + { tone: 'gan3' , caption: 'gǎn' , num: 3}, + { tone: 'gan4' , caption: 'gàn' , num: 4}, + { tone: 'gang1' , caption: 'gāng' , num: 1}, + { tone: 'gang3' , caption: 'gǎng' , num: 3}, + { tone: 'gang4' , caption: 'gàng' , num: 4}, + { tone: 'gao1' , caption: 'gāo' , num: 1}, + { tone: 'gao3' , caption: 'gǎo' , num: 3}, + { tone: 'gao4' , caption: 'gào' , num: 4}, + { tone: 'ge1' , caption: 'gē' , num: 1}, + { tone: 'ge2' , caption: 'gé' , num: 2}, + { tone: 'ge3' , caption: 'gě' , num: 3}, + { tone: 'ge4' , caption: 'gè' , num: 4}, + { tone: 'gei3' , caption: 'gěi' , num: 3}, + { tone: 'gen1' , caption: 'gēn' , num: 1}, + { tone: 'gen2' , caption: 'gén' , num: 2}, + { tone: 'gen3' , caption: 'gěn' , num: 3}, + { tone: 'gen4' , caption: 'gèn' , num: 4}, + { tone: 'geng1' , caption: 'gēng' , num: 1}, + { tone: 'geng3' , caption: 'gěng' , num: 3}, + { tone: 'geng4' , caption: 'gèng' , num: 4}, + { tone: 'gong1' , caption: 'gōng' , num: 1}, + { tone: 'gong3' , caption: 'gǒng' , num: 3}, + { tone: 'gong4' , caption: 'gòng' , num: 4}, + { tone: 'gou1' , caption: 'gōu' , num: 1}, + { tone: 'gou3' , caption: 'gǒu' , num: 3}, + { tone: 'gou4' , caption: 'gòu' , num: 4}, + { tone: 'gu1' , caption: 'gū' , num: 1}, + { tone: 'gu2' , caption: 'gú' , num: 2}, + { tone: 'gu3' , caption: 'gǔ' , num: 3}, + { tone: 'gu4' , caption: 'gù' , num: 4}, + { tone: 'gua1' , caption: 'guā' , num: 1}, + { tone: 'gua3' , caption: 'guǎ' , num: 3}, + { tone: 'gua4' , caption: 'guà' , num: 4}, + { tone: 'guai1' , caption: 'guāi' , num: 1}, + { tone: 'guai3' , caption: 'guǎi' , num: 3}, + { tone: 'guai4' , caption: 'guài' , num: 4}, + { tone: 'guan1' , caption: 'guān' , num: 1}, + { tone: 'guan2' , caption: 'guán' , num: 2}, + { tone: 'guan3' , caption: 'guǎn' , num: 3}, + { tone: 'guan4' , caption: 'guàn' , num: 4}, + { tone: 'guang1' , caption: 'guāng' , num: 1}, + { tone: 'guang3' , caption: 'guǎng' , num: 3}, + { tone: 'guang4' , caption: 'guàng' , num: 4}, + { tone: 'gui1' , caption: 'guī' , num: 1}, + { tone: 'gui3' , caption: 'guǐ' , num: 3}, + { tone: 'gui4' , caption: 'guì' , num: 4}, + { tone: 'gun1' , caption: 'gūn' , num: 1}, + { tone: 'gun3' , caption: 'gǔn' , num: 3}, + { tone: 'gun4' , caption: 'gùn' , num: 4}, + { tone: 'guo1' , caption: 'guō' , num: 1}, + { tone: 'guo2' , caption: 'guó' , num: 2}, + { tone: 'guo3' , caption: 'guǒ' , num: 3}, + { tone: 'guo4' , caption: 'guò' , num: 4}, + { tone: 'guo5' , caption: 'guo' , num: 5}, + { tone: 'ha1' , caption: 'hā' , num: 1}, + { tone: 'ha2' , caption: 'há' , num: 2}, + { tone: 'hai1' , caption: 'hāi' , num: 1}, + { tone: 'hai2' , caption: 'hái' , num: 2}, + { tone: 'hai3' , caption: 'hǎi' , num: 3}, + { tone: 'hai4' , caption: 'hài' , num: 4}, + { tone: 'han1' , caption: 'hān' , num: 1}, + { tone: 'han2' , caption: 'hán' , num: 2}, + { tone: 'han3' , caption: 'hǎn' , num: 3}, + { tone: 'han4' , caption: 'hàn' , num: 4}, + { tone: 'hang1' , caption: 'hāng' , num: 1}, + { tone: 'hang2' , caption: 'háng' , num: 2}, + { tone: 'hang3' , caption: 'hǎng' , num: 3}, + { tone: 'hang4' , caption: 'hàng' , num: 4}, + { tone: 'hao1' , caption: 'hāo' , num: 1}, + { tone: 'hao2' , caption: 'háo' , num: 2}, + { tone: 'hao3' , caption: 'hǎo' , num: 3}, + { tone: 'hao4' , caption: 'hào' , num: 4}, + { tone: 'hao5' , caption: 'hao' , num: 5}, + { tone: 'he1' , caption: 'hē' , num: 1}, + { tone: 'he2' , caption: 'hé' , num: 2}, + { tone: 'he4' , caption: 'hè' , num: 4}, + { tone: 'hei1' , caption: 'hēi' , num: 1}, + { tone: 'hen1' , caption: 'hēn' , num: 1}, + { tone: 'hen2' , caption: 'hén' , num: 2}, + { tone: 'hen3' , caption: 'hěn' , num: 3}, + { tone: 'hen4' , caption: 'hèn' , num: 4}, + { tone: 'heng1' , caption: 'hēng' , num: 1}, + { tone: 'heng2' , caption: 'héng' , num: 2}, + { tone: 'heng4' , caption: 'hèng' , num: 4}, + { tone: 'hong1' , caption: 'hōng' , num: 1}, + { tone: 'hong2' , caption: 'hóng' , num: 2}, + { tone: 'hong3' , caption: 'hǒng' , num: 3}, + { tone: 'hong4' , caption: 'hòng' , num: 4}, + { tone: 'hou1' , caption: 'hōu' , num: 1}, + { tone: 'hou2' , caption: 'hóu' , num: 2}, + { tone: 'hou3' , caption: 'hǒu' , num: 3}, + { tone: 'hou4' , caption: 'hòu' , num: 4}, + { tone: 'hu1' , caption: 'hū' , num: 1}, + { tone: 'hu2' , caption: 'hú' , num: 2}, + { tone: 'hu3' , caption: 'hǔ' , num: 3}, + { tone: 'hu4' , caption: 'hù' , num: 4}, + { tone: 'hua1' , caption: 'huā' , num: 1}, + { tone: 'hua2' , caption: 'huá' , num: 2}, + { tone: 'hua4' , caption: 'huà' , num: 4}, + { tone: 'huai2' , caption: 'huái' , num: 2}, + { tone: 'huai4' , caption: 'huài' , num: 4}, + { tone: 'huan1' , caption: 'huān' , num: 1}, + { tone: 'huan2' , caption: 'huán' , num: 2}, + { tone: 'huan3' , caption: 'huǎn' , num: 3}, + { tone: 'huan4' , caption: 'huàn' , num: 4}, + { tone: 'huang1' , caption: 'huāng' , num: 1}, + { tone: 'huang2' , caption: 'huáng' , num: 2}, + { tone: 'huang3' , caption: 'huǎng' , num: 3}, + { tone: 'huang4' , caption: 'huàng' , num: 4}, + { tone: 'hui1' , caption: 'huī' , num: 1}, + { tone: 'hui2' , caption: 'huí' , num: 2}, + { tone: 'hui3' , caption: 'huǐ' , num: 3}, + { tone: 'hui4' , caption: 'huì' , num: 4}, + { tone: 'hun1' , caption: 'hūn' , num: 1}, + { tone: 'hun2' , caption: 'hún' , num: 2}, + { tone: 'hun3' , caption: 'hǔn' , num: 3}, + { tone: 'hun4' , caption: 'hùn' , num: 4}, + { tone: 'huo1' , caption: 'huō' , num: 1}, + { tone: 'huo2' , caption: 'huó' , num: 2}, + { tone: 'huo3' , caption: 'huǒ' , num: 3}, + { tone: 'huo4' , caption: 'huò' , num: 4}, + { tone: 'ji1' , caption: 'jī' , num: 1}, + { tone: 'ji2' , caption: 'jí' , num: 2}, + { tone: 'ji3' , caption: 'jǐ' , num: 3}, + { tone: 'ji4' , caption: 'jì' , num: 4}, + { tone: 'jia1' , caption: 'jiā' , num: 1}, + { tone: 'jia2' , caption: 'jiá' , num: 2}, + { tone: 'jia3' , caption: 'jiǎ' , num: 3}, + { tone: 'jia4' , caption: 'jià' , num: 4}, + { tone: 'jian1' , caption: 'jiān' , num: 1}, + { tone: 'jian3' , caption: 'jiǎn' , num: 3}, + { tone: 'jian4' , caption: 'jiàn' , num: 4}, + { tone: 'jiang1' , caption: 'jiāng' , num: 1}, + { tone: 'jiang3' , caption: 'jiǎng' , num: 3}, + { tone: 'jiang4' , caption: 'jiàng' , num: 4}, + { tone: 'jiao1' , caption: 'jiāo' , num: 1}, + { tone: 'jiao2' , caption: 'jiáo' , num: 2}, + { tone: 'jiao3' , caption: 'jiǎo' , num: 3}, + { tone: 'jiao4' , caption: 'jiào' , num: 4}, + { tone: 'jie1' , caption: 'jiē' , num: 1}, + { tone: 'jie2' , caption: 'jié' , num: 2}, + { tone: 'jie3' , caption: 'jiě' , num: 3}, + { tone: 'jie4' , caption: 'jiè' , num: 4}, + { tone: 'jin1' , caption: 'jīn' , num: 1}, + { tone: 'jin3' , caption: 'jǐn' , num: 3}, + { tone: 'jin4' , caption: 'jìn' , num: 4}, + { tone: 'jing1' , caption: 'jīng' , num: 1}, + { tone: 'jing3' , caption: 'jǐng' , num: 3}, + { tone: 'jing4' , caption: 'jìng' , num: 4}, + { tone: 'jing5' , caption: 'jing' , num: 5}, + { tone: 'jiong1' , caption: 'jiōng' , num: 1}, + { tone: 'jiong3' , caption: 'jiǒng' , num: 3}, + { tone: 'jiu1' , caption: 'jiū' , num: 1}, + { tone: 'jiu3' , caption: 'jiǔ' , num: 3}, + { tone: 'jiu4' , caption: 'jiù' , num: 4}, + { tone: 'ju1' , caption: 'jū' , num: 1}, + { tone: 'ju2' , caption: 'jú' , num: 2}, + { tone: 'ju3' , caption: 'jǔ' , num: 3}, + { tone: 'ju4' , caption: 'jù' , num: 4}, + { tone: 'juan1' , caption: 'juān' , num: 1}, + { tone: 'juan3' , caption: 'juǎn' , num: 3}, + { tone: 'juan4' , caption: 'juàn' , num: 4}, + { tone: 'jue1' , caption: 'juē' , num: 1}, + { tone: 'jue2' , caption: 'jué' , num: 2}, + { tone: 'jue4' , caption: 'juè' , num: 4}, + { tone: 'jun1' , caption: 'jūn' , num: 1}, + { tone: 'jun3' , caption: 'jǔn' , num: 3}, + { tone: 'jun4' , caption: 'jùn' , num: 4}, + { tone: 'ka1' , caption: 'kā' , num: 1}, + { tone: 'ka3' , caption: 'kǎ' , num: 3}, + { tone: 'ka4' , caption: 'kà' , num: 4}, + { tone: 'kai1' , caption: 'kāi' , num: 1}, + { tone: 'kai3' , caption: 'kǎi' , num: 3}, + { tone: 'kai4' , caption: 'kài' , num: 4}, + { tone: 'kan1' , caption: 'kān' , num: 1}, + { tone: 'kan3' , caption: 'kǎn' , num: 3}, + { tone: 'kan4' , caption: 'kàn' , num: 4}, + { tone: 'kang1' , caption: 'kāng' , num: 1}, + { tone: 'kang2' , caption: 'káng' , num: 2}, + { tone: 'kang3' , caption: 'kǎng' , num: 3}, + { tone: 'kang4' , caption: 'kàng' , num: 4}, + { tone: 'kao1' , caption: 'kāo' , num: 1}, + { tone: 'kao3' , caption: 'kǎo' , num: 3}, + { tone: 'kao4' , caption: 'kào' , num: 4}, + { tone: 'ke1' , caption: 'kē' , num: 1}, + { tone: 'ke2' , caption: 'ké' , num: 2}, + { tone: 'ke3' , caption: 'kě' , num: 3}, + { tone: 'ke4' , caption: 'kè' , num: 4}, + { tone: 'ken3' , caption: 'kěn' , num: 3}, + { tone: 'ken4' , caption: 'kèn' , num: 4}, + { tone: 'keng1' , caption: 'kēng' , num: 1}, + { tone: 'keng3' , caption: 'kěng' , num: 3}, + { tone: 'kong1' , caption: 'kōng' , num: 1}, + { tone: 'kong3' , caption: 'kǒng' , num: 3}, + { tone: 'kong4' , caption: 'kòng' , num: 4}, + { tone: 'kou1' , caption: 'kōu' , num: 1}, + { tone: 'kou3' , caption: 'kǒu' , num: 3}, + { tone: 'kou4' , caption: 'kòu' , num: 4}, + { tone: 'ku1' , caption: 'kū' , num: 1}, + { tone: 'ku3' , caption: 'kǔ' , num: 3}, + { tone: 'ku4' , caption: 'kù' , num: 4}, + { tone: 'kua1' , caption: 'kuā' , num: 1}, + { tone: 'kua3' , caption: 'kuǎ' , num: 3}, + { tone: 'kua4' , caption: 'kuà' , num: 4}, + { tone: 'kuai1' , caption: 'kuāi' , num: 1}, + { tone: 'kuai3' , caption: 'kuǎi' , num: 3}, + { tone: 'kuai4' , caption: 'kuài' , num: 4}, + { tone: 'kuan1' , caption: 'kuān' , num: 1}, + { tone: 'kuan3' , caption: 'kuǎn' , num: 3}, + { tone: 'kuang1' , caption: 'kuāng' , num: 1}, + { tone: 'kuang2' , caption: 'kuáng' , num: 2}, + { tone: 'kuang3' , caption: 'kuǎng' , num: 3}, + { tone: 'kuang4' , caption: 'kuàng' , num: 4}, + { tone: 'kui1' , caption: 'kuī' , num: 1}, + { tone: 'kui2' , caption: 'kuí' , num: 2}, + { tone: 'kui3' , caption: 'kuǐ' , num: 3}, + { tone: 'kui4' , caption: 'kuì' , num: 4}, + { tone: 'kun1' , caption: 'kūn' , num: 1}, + { tone: 'kun3' , caption: 'kǔn' , num: 3}, + { tone: 'kun4' , caption: 'kùn' , num: 4}, + { tone: 'kuo3' , caption: 'kuǒ' , num: 3}, + { tone: 'kuo4' , caption: 'kuò' , num: 4}, + { tone: 'la1' , caption: 'lā' , num: 1}, + { tone: 'la2' , caption: 'lá' , num: 2}, + { tone: 'la3' , caption: 'lǎ' , num: 3}, + { tone: 'la4' , caption: 'là' , num: 4}, + { tone: 'lai1' , caption: 'lāi' , num: 1}, + { tone: 'lai2' , caption: 'lái' , num: 2}, + { tone: 'lai4' , caption: 'lài' , num: 4}, + { tone: 'lan1' , caption: 'lān' , num: 1}, + { tone: 'lan2' , caption: 'lán' , num: 2}, + { tone: 'lan3' , caption: 'lǎn' , num: 3}, + { tone: 'lan4' , caption: 'làn' , num: 4}, + { tone: 'lang1' , caption: 'lāng' , num: 1}, + { tone: 'lang2' , caption: 'láng' , num: 2}, + { tone: 'lang3' , caption: 'lǎng' , num: 3}, + { tone: 'lang4' , caption: 'làng' , num: 4}, + { tone: 'lao1' , caption: 'lāo' , num: 1}, + { tone: 'lao2' , caption: 'láo' , num: 2}, + { tone: 'lao3' , caption: 'lǎo' , num: 3}, + { tone: 'lao4' , caption: 'lào' , num: 4}, + { tone: 'le1' , caption: 'lē' , num: 1}, + { tone: 'le4' , caption: 'lè' , num: 4}, + { tone: 'le5' , caption: 'le' , num: 5}, + { tone: 'lei1' , caption: 'lēi' , num: 1}, + { tone: 'lei2' , caption: 'léi' , num: 2}, + { tone: 'lei3' , caption: 'lěi' , num: 3}, + { tone: 'lei4' , caption: 'lèi' , num: 4}, + { tone: 'leng2' , caption: 'léng' , num: 2}, + { tone: 'leng3' , caption: 'lěng' , num: 3}, + { tone: 'leng4' , caption: 'lèng' , num: 4}, + { tone: 'li1' , caption: 'lī' , num: 1}, + { tone: 'li2' , caption: 'lí' , num: 2}, + { tone: 'li3' , caption: 'lǐ' , num: 3}, + { tone: 'li4' , caption: 'lì' , num: 4}, + { tone: 'lia3' , caption: 'liǎ' , num: 3}, + { tone: 'lian2' , caption: 'lián' , num: 2}, + { tone: 'lian3' , caption: 'liǎn' , num: 3}, + { tone: 'lian4' , caption: 'liàn' , num: 4}, + { tone: 'liang1' , caption: 'liāng' , num: 1}, + { tone: 'liang2' , caption: 'liáng' , num: 2}, + { tone: 'liang3' , caption: 'liǎng' , num: 3}, + { tone: 'liang4' , caption: 'liàng' , num: 4}, + { tone: 'liao1' , caption: 'liāo' , num: 1}, + { tone: 'liao2' , caption: 'liáo' , num: 2}, + { tone: 'liao3' , caption: 'liǎo' , num: 3}, + { tone: 'liao4' , caption: 'liào' , num: 4}, + { tone: 'lie1' , caption: 'liē' , num: 1}, + { tone: 'lie3' , caption: 'liě' , num: 3}, + { tone: 'lie4' , caption: 'liè' , num: 4}, + { tone: 'lin2' , caption: 'lín' , num: 2}, + { tone: 'lin3' , caption: 'lǐn' , num: 3}, + { tone: 'lin4' , caption: 'lìn' , num: 4}, + { tone: 'ling1' , caption: 'līng' , num: 1}, + { tone: 'ling2' , caption: 'líng' , num: 2}, + { tone: 'ling3' , caption: 'lǐng' , num: 3}, + { tone: 'ling4' , caption: 'lìng' , num: 4}, + { tone: 'liu1' , caption: 'liū' , num: 1}, + { tone: 'liu2' , caption: 'liú' , num: 2}, + { tone: 'liu3' , caption: 'liǔ' , num: 3}, + { tone: 'liu4' , caption: 'liù' , num: 4}, + { tone: 'lo1' , caption: 'lō' , num: 1}, + { tone: 'long2' , caption: 'lóng' , num: 2}, + { tone: 'long3' , caption: 'lǒng' , num: 3}, + { tone: 'long4' , caption: 'lòng' , num: 4}, + { tone: 'lou1' , caption: 'lōu' , num: 1}, + { tone: 'lou2' , caption: 'lóu' , num: 2}, + { tone: 'lou3' , caption: 'lǒu' , num: 3}, + { tone: 'lou4' , caption: 'lòu' , num: 4}, + { tone: 'lu1' , caption: 'lū' , num: 1}, + { tone: 'lu2' , caption: 'lú' , num: 2}, + { tone: 'lu3' , caption: 'lǔ' , num: 3}, + { tone: 'lu4' , caption: 'lù' , num: 4}, + { tone: 'luan2' , caption: 'luán' , num: 2}, + { tone: 'luan3' , caption: 'luǎn' , num: 3}, + { tone: 'luan4' , caption: 'luàn' , num: 4}, + { tone: 'lun1' , caption: 'lūn' , num: 1}, + { tone: 'lun2' , caption: 'lún' , num: 2}, + { tone: 'lun3' , caption: 'lǔn' , num: 3}, + { tone: 'lun4' , caption: 'lùn' , num: 4}, + { tone: 'luo1' , caption: 'luō' , num: 1}, + { tone: 'luo2' , caption: 'luó' , num: 2}, + { tone: 'luo3' , caption: 'luǒ' , num: 3}, + { tone: 'luo4' , caption: 'luò' , num: 4}, + { tone: 'lv2' , caption: 'lǘ' , num: 2}, + { tone: 'lv3' , caption: 'lǚ' , num: 3}, + { tone: 'lv4' , caption: 'lǜ' , num: 4}, + { tone: 'lve1' , caption: 'lüē' , num: 1}, + { tone: 'lve4' , caption: 'lüè' , num: 4}, + { tone: 'ma1' , caption: 'mā' , num: 1}, + { tone: 'ma2' , caption: 'má' , num: 2}, + { tone: 'ma3' , caption: 'mǎ' , num: 3}, + { tone: 'ma4' , caption: 'mà' , num: 4}, + { tone: 'ma5' , caption: 'ma' , num: 5}, + { tone: 'mai2' , caption: 'mái' , num: 2}, + { tone: 'mai3' , caption: 'mǎi' , num: 3}, + { tone: 'mai4' , caption: 'mài' , num: 4}, + { tone: 'man2' , caption: 'mán' , num: 2}, + { tone: 'man3' , caption: 'mǎn' , num: 3}, + { tone: 'man4' , caption: 'màn' , num: 4}, + { tone: 'mang2' , caption: 'máng' , num: 2}, + { tone: 'mang3' , caption: 'mǎng' , num: 3}, + { tone: 'mao1' , caption: 'māo' , num: 1}, + { tone: 'mao2' , caption: 'máo' , num: 2}, + { tone: 'mao3' , caption: 'mǎo' , num: 3}, + { tone: 'mao4' , caption: 'mào' , num: 4}, + { tone: 'me1' , caption: 'mē' , num: 1}, + { tone: 'me5' , caption: 'me' , num: 5}, + { tone: 'mei1' , caption: 'mēi' , num: 1}, + { tone: 'mei2' , caption: 'méi' , num: 2}, + { tone: 'mei3' , caption: 'měi' , num: 3}, + { tone: 'mei4' , caption: 'mèi' , num: 4}, + { tone: 'men1' , caption: 'mēn' , num: 1}, + { tone: 'men2' , caption: 'mén' , num: 2}, + { tone: 'men3' , caption: 'měn' , num: 3}, + { tone: 'men4' , caption: 'mèn' , num: 4}, + { tone: 'men5' , caption: 'men' , num: 5}, + { tone: 'meng1' , caption: 'mēng' , num: 1}, + { tone: 'meng2' , caption: 'méng' , num: 2}, + { tone: 'meng3' , caption: 'měng' , num: 3}, + { tone: 'meng4' , caption: 'mèng' , num: 4}, + { tone: 'mi1' , caption: 'mī' , num: 1}, + { tone: 'mi2' , caption: 'mí' , num: 2}, + { tone: 'mi3' , caption: 'mǐ' , num: 3}, + { tone: 'mi4' , caption: 'mì' , num: 4}, + { tone: 'mian1' , caption: 'miān' , num: 1}, + { tone: 'mian2' , caption: 'mián' , num: 2}, + { tone: 'mian3' , caption: 'miǎn' , num: 3}, + { tone: 'mian4' , caption: 'miàn' , num: 4}, + { tone: 'mian5' , caption: 'mian' , num: 5}, + { tone: 'miao1' , caption: 'miāo' , num: 1}, + { tone: 'miao2' , caption: 'miáo' , num: 2}, + { tone: 'miao3' , caption: 'miǎo' , num: 3}, + { tone: 'miao4' , caption: 'miào' , num: 4}, + { tone: 'mie1' , caption: 'miē' , num: 1}, + { tone: 'mie4' , caption: 'miè' , num: 4}, + { tone: 'min2' , caption: 'mín' , num: 2}, + { tone: 'min3' , caption: 'mǐn' , num: 3}, + { tone: 'ming1' , caption: 'mīng' , num: 1}, + { tone: 'ming2' , caption: 'míng' , num: 2}, + { tone: 'ming3' , caption: 'mǐng' , num: 3}, + { tone: 'ming4' , caption: 'mìng' , num: 4}, + { tone: 'miu1' , caption: 'miū' , num: 1}, + { tone: 'miu4' , caption: 'miù' , num: 4}, + { tone: 'mo1' , caption: 'mō' , num: 1}, + { tone: 'mo2' , caption: 'mó' , num: 2}, + { tone: 'mo3' , caption: 'mǒ' , num: 3}, + { tone: 'mo4' , caption: 'mò' , num: 4}, + { tone: 'mou1' , caption: 'mōu' , num: 1}, + { tone: 'mou2' , caption: 'móu' , num: 2}, + { tone: 'mou3' , caption: 'mǒu' , num: 3}, + { tone: 'mu2' , caption: 'mú' , num: 2}, + { tone: 'mu3' , caption: 'mǔ' , num: 3}, + { tone: 'mu4' , caption: 'mù' , num: 4}, + { tone: 'na1' , caption: 'nā' , num: 1}, + { tone: 'na2' , caption: 'ná' , num: 2}, + { tone: 'na3' , caption: 'nǎ' , num: 3}, + { tone: 'na4' , caption: 'nà' , num: 4}, + { tone: 'nai1' , caption: 'nāi' , num: 1}, + { tone: 'nai2' , caption: 'nái' , num: 2}, + { tone: 'nai3' , caption: 'nǎi' , num: 3}, + { tone: 'nai4' , caption: 'nài' , num: 4}, + { tone: 'nan1' , caption: 'nān' , num: 1}, + { tone: 'nan2' , caption: 'nán' , num: 2}, + { tone: 'nan3' , caption: 'nǎn' , num: 3}, + { tone: 'nan4' , caption: 'nàn' , num: 4}, + { tone: 'nang1' , caption: 'nāng' , num: 1}, + { tone: 'nang2' , caption: 'náng' , num: 2}, + { tone: 'nang3' , caption: 'nǎng' , num: 3}, + { tone: 'nang4' , caption: 'nàng' , num: 4}, + { tone: 'nao1' , caption: 'nāo' , num: 1}, + { tone: 'nao2' , caption: 'náo' , num: 2}, + { tone: 'nao3' , caption: 'nǎo' , num: 3}, + { tone: 'nao4' , caption: 'nào' , num: 4}, + { tone: 'ne1' , caption: 'nē' , num: 1}, + { tone: 'ne2' , caption: 'né' , num: 2}, + { tone: 'ne4' , caption: 'nè' , num: 4}, + { tone: 'ne5' , caption: 'ne' , num: 5}, + { tone: 'nei1' , caption: 'nēi' , num: 1}, + { tone: 'nei3' , caption: 'něi' , num: 3}, + { tone: 'nei4' , caption: 'nèi' , num: 4}, + { tone: 'nen4' , caption: 'nèn' , num: 4}, + { tone: 'neng2' , caption: 'néng' , num: 2}, + { tone: 'ni1' , caption: 'nī' , num: 1}, + { tone: 'ni2' , caption: 'ní' , num: 2}, + { tone: 'ni3' , caption: 'nǐ' , num: 3}, + { tone: 'ni4' , caption: 'nì' , num: 4}, + { tone: 'nian1' , caption: 'niān' , num: 1}, + { tone: 'nian2' , caption: 'nián' , num: 2}, + { tone: 'nian3' , caption: 'niǎn' , num: 3}, + { tone: 'nian4' , caption: 'niàn' , num: 4}, + { tone: 'niang1' , caption: 'niāng' , num: 1}, + { tone: 'niang2' , caption: 'niáng' , num: 2}, + { tone: 'niang4' , caption: 'niàng' , num: 4}, + { tone: 'niao3' , caption: 'niǎo' , num: 3}, + { tone: 'niao4' , caption: 'niào' , num: 4}, + { tone: 'nie1' , caption: 'niē' , num: 1}, + { tone: 'nie2' , caption: 'nié' , num: 2}, + { tone: 'nie4' , caption: 'niè' , num: 4}, + { tone: 'nin2' , caption: 'nín' , num: 2}, + { tone: 'nin3' , caption: 'nǐn' , num: 3}, + { tone: 'ning2' , caption: 'níng' , num: 2}, + { tone: 'ning3' , caption: 'nǐng' , num: 3}, + { tone: 'ning4' , caption: 'nìng' , num: 4}, + { tone: 'niu1' , caption: 'niū' , num: 1}, + { tone: 'niu2' , caption: 'niú' , num: 2}, + { tone: 'niu3' , caption: 'niǔ' , num: 3}, + { tone: 'niu4' , caption: 'niù' , num: 4}, + { tone: 'nong2' , caption: 'nóng' , num: 2}, + { tone: 'nong4' , caption: 'nòng' , num: 4}, + { tone: 'nou4' , caption: 'nòu' , num: 4}, + { tone: 'nu2' , caption: 'nú' , num: 2}, + { tone: 'nu3' , caption: 'nǔ' , num: 3}, + { tone: 'nu4' , caption: 'nù' , num: 4}, + { tone: 'nuan3' , caption: 'nuǎn' , num: 3}, + { tone: 'nuo2' , caption: 'nuó' , num: 2}, + { tone: 'nuo3' , caption: 'nuǒ' , num: 3}, + { tone: 'nuo4' , caption: 'nuò' , num: 4}, + { tone: 'nv3' , caption: 'nǚ' , num: 3}, + { tone: 'nv4' , caption: 'nǜ' , num: 4}, + { tone: 'nve1' , caption: 'nüē' , num: 1}, + { tone: 'nve4' , caption: 'nüè' , num: 4}, + { tone: 'o1' , caption: 'ō' , num: 1}, + { tone: 'o4' , caption: 'ò' , num: 4}, + { tone: 'ou1' , caption: 'ōu' , num: 1}, + { tone: 'ou3' , caption: 'ǒu' , num: 3}, + { tone: 'ou4' , caption: 'òu' , num: 4}, + { tone: 'pa1' , caption: 'pā' , num: 1}, + { tone: 'pa2' , caption: 'pá' , num: 2}, + { tone: 'pa4' , caption: 'pà' , num: 4}, + { tone: 'pai1' , caption: 'pāi' , num: 1}, + { tone: 'pai2' , caption: 'pái' , num: 2}, + { tone: 'pai3' , caption: 'pǎi' , num: 3}, + { tone: 'pai4' , caption: 'pài' , num: 4}, + { tone: 'pan1' , caption: 'pān' , num: 1}, + { tone: 'pan2' , caption: 'pán' , num: 2}, + { tone: 'pan4' , caption: 'pàn' , num: 4}, + { tone: 'pang1' , caption: 'pāng' , num: 1}, + { tone: 'pang2' , caption: 'páng' , num: 2}, + { tone: 'pang4' , caption: 'pàng' , num: 4}, + { tone: 'pao1' , caption: 'pāo' , num: 1}, + { tone: 'pao2' , caption: 'páo' , num: 2}, + { tone: 'pao3' , caption: 'pǎo' , num: 3}, + { tone: 'pao4' , caption: 'pào' , num: 4}, + { tone: 'pei1' , caption: 'pēi' , num: 1}, + { tone: 'pei2' , caption: 'péi' , num: 2}, + { tone: 'pei4' , caption: 'pèi' , num: 4}, + { tone: 'pen1' , caption: 'pēn' , num: 1}, + { tone: 'pen2' , caption: 'pén' , num: 2}, + { tone: 'pen3' , caption: 'pěn' , num: 3}, + { tone: 'peng1' , caption: 'pēng' , num: 1}, + { tone: 'peng2' , caption: 'péng' , num: 2}, + { tone: 'peng3' , caption: 'pěng' , num: 3}, + { tone: 'peng4' , caption: 'pèng' , num: 4}, + { tone: 'pi1' , caption: 'pī' , num: 1}, + { tone: 'pi2' , caption: 'pí' , num: 2}, + { tone: 'pi3' , caption: 'pǐ' , num: 3}, + { tone: 'pi4' , caption: 'pì' , num: 4}, + { tone: 'pian1' , caption: 'piān' , num: 1}, + { tone: 'pian2' , caption: 'pián' , num: 2}, + { tone: 'pian3' , caption: 'piǎn' , num: 3}, + { tone: 'pian4' , caption: 'piàn' , num: 4}, + { tone: 'piao1' , caption: 'piāo' , num: 1}, + { tone: 'piao2' , caption: 'piáo' , num: 2}, + { tone: 'piao3' , caption: 'piǎo' , num: 3}, + { tone: 'piao4' , caption: 'piào' , num: 4}, + { tone: 'pie1' , caption: 'piē' , num: 1}, + { tone: 'pie3' , caption: 'piě' , num: 3}, + { tone: 'pin1' , caption: 'pīn' , num: 1}, + { tone: 'pin2' , caption: 'pín' , num: 2}, + { tone: 'pin3' , caption: 'pǐn' , num: 3}, + { tone: 'pin4' , caption: 'pìn' , num: 4}, + { tone: 'ping1' , caption: 'pīng' , num: 1}, + { tone: 'ping2' , caption: 'píng' , num: 2}, + { tone: 'po1' , caption: 'pō' , num: 1}, + { tone: 'po2' , caption: 'pó' , num: 2}, + { tone: 'po3' , caption: 'pǒ' , num: 3}, + { tone: 'po4' , caption: 'pò' , num: 4}, + { tone: 'pou1' , caption: 'pōu' , num: 1}, + { tone: 'pou2' , caption: 'póu' , num: 2}, + { tone: 'pou3' , caption: 'pǒu' , num: 3}, + { tone: 'pu1' , caption: 'pū' , num: 1}, + { tone: 'pu2' , caption: 'pú' , num: 2}, + { tone: 'pu3' , caption: 'pǔ' , num: 3}, + { tone: 'pu4' , caption: 'pù' , num: 4}, + { tone: 'qi1' , caption: 'qī' , num: 1}, + { tone: 'qi2' , caption: 'qí' , num: 2}, + { tone: 'qi3' , caption: 'qǐ' , num: 3}, + { tone: 'qi4' , caption: 'qì' , num: 4}, + { tone: 'qia1' , caption: 'qiā' , num: 1}, + { tone: 'qia3' , caption: 'qiǎ' , num: 3}, + { tone: 'qia4' , caption: 'qià' , num: 4}, + { tone: 'qian1' , caption: 'qiān' , num: 1}, + { tone: 'qian2' , caption: 'qián' , num: 2}, + { tone: 'qian3' , caption: 'qiǎn' , num: 3}, + { tone: 'qian4' , caption: 'qiàn' , num: 4}, + { tone: 'qiang1' , caption: 'qiāng' , num: 1}, + { tone: 'qiang2' , caption: 'qiáng' , num: 2}, + { tone: 'qiang3' , caption: 'qiǎng' , num: 3}, + { tone: 'qiang4' , caption: 'qiàng' , num: 4}, + { tone: 'qiao1' , caption: 'qiāo' , num: 1}, + { tone: 'qiao2' , caption: 'qiáo' , num: 2}, + { tone: 'qiao3' , caption: 'qiǎo' , num: 3}, + { tone: 'qiao4' , caption: 'qiào' , num: 4}, + { tone: 'qie1' , caption: 'qiē' , num: 1}, + { tone: 'qie2' , caption: 'qié' , num: 2}, + { tone: 'qie3' , caption: 'qiě' , num: 3}, + { tone: 'qie4' , caption: 'qiè' , num: 4}, + { tone: 'qin1' , caption: 'qīn' , num: 1}, + { tone: 'qin2' , caption: 'qín' , num: 2}, + { tone: 'qin3' , caption: 'qǐn' , num: 3}, + { tone: 'qin4' , caption: 'qìn' , num: 4}, + { tone: 'qing1' , caption: 'qīng' , num: 1}, + { tone: 'qing2' , caption: 'qíng' , num: 2}, + { tone: 'qing3' , caption: 'qǐng' , num: 3}, + { tone: 'qing4' , caption: 'qìng' , num: 4}, + { tone: 'qiong2' , caption: 'qióng' , num: 2}, + { tone: 'qiu1' , caption: 'qiū' , num: 1}, + { tone: 'qiu2' , caption: 'qiú' , num: 2}, + { tone: 'qiu3' , caption: 'qiǔ' , num: 3}, + { tone: 'qu1' , caption: 'qū' , num: 1}, + { tone: 'qu2' , caption: 'qú' , num: 2}, + { tone: 'qu3' , caption: 'qǔ' , num: 3}, + { tone: 'qu4' , caption: 'qù' , num: 4}, + { tone: 'quan1' , caption: 'quān' , num: 1}, + { tone: 'quan2' , caption: 'quán' , num: 2}, + { tone: 'quan3' , caption: 'quǎn' , num: 3}, + { tone: 'quan4' , caption: 'quàn' , num: 4}, + { tone: 'que1' , caption: 'quē' , num: 1}, + { tone: 'que2' , caption: 'qué' , num: 2}, + { tone: 'que4' , caption: 'què' , num: 4}, + { tone: 'qun2' , caption: 'qún' , num: 2}, + { tone: 'ran2' , caption: 'rán' , num: 2}, + { tone: 'ran3' , caption: 'rǎn' , num: 3}, + { tone: 'rang2' , caption: 'ráng' , num: 2}, + { tone: 'rang3' , caption: 'rǎng' , num: 3}, + { tone: 'rang4' , caption: 'ràng' , num: 4}, + { tone: 'rao2' , caption: 'ráo' , num: 2}, + { tone: 'rao3' , caption: 'rǎo' , num: 3}, + { tone: 'rao4' , caption: 'rào' , num: 4}, + { tone: 're3' , caption: 'rě' , num: 3}, + { tone: 're4' , caption: 'rè' , num: 4}, + { tone: 'ren2' , caption: 'rén' , num: 2}, + { tone: 'ren3' , caption: 'rěn' , num: 3}, + { tone: 'ren4' , caption: 'rèn' , num: 4}, + { tone: 'reng1' , caption: 'rēng' , num: 1}, + { tone: 'reng2' , caption: 'réng' , num: 2}, + { tone: 'ri4' , caption: 'rì' , num: 4}, + { tone: 'rong2' , caption: 'róng' , num: 2}, + { tone: 'rong3' , caption: 'rǒng' , num: 3}, + { tone: 'rou2' , caption: 'róu' , num: 2}, + { tone: 'rou4' , caption: 'ròu' , num: 4}, + { tone: 'ru2' , caption: 'rú' , num: 2}, + { tone: 'ru3' , caption: 'rǔ' , num: 3}, + { tone: 'ru4' , caption: 'rù' , num: 4}, + { tone: 'ruan3' , caption: 'ruǎn' , num: 3}, + { tone: 'rui4' , caption: 'ruì' , num: 4}, + { tone: 'run4' , caption: 'rùn' , num: 4}, + { tone: 'ruo2' , caption: 'ruó' , num: 2}, + { tone: 'ruo4' , caption: 'ruò' , num: 4}, + { tone: 'sa1' , caption: 'sā' , num: 1}, + { tone: 'sa3' , caption: 'sǎ' , num: 3}, + { tone: 'sa4' , caption: 'sà' , num: 4}, + { tone: 'sai1' , caption: 'sāi' , num: 1}, + { tone: 'sai4' , caption: 'sài' , num: 4}, + { tone: 'san1' , caption: 'sān' , num: 1}, + { tone: 'san3' , caption: 'sǎn' , num: 3}, + { tone: 'san4' , caption: 'sàn' , num: 4}, + { tone: 'sang1' , caption: 'sāng' , num: 1}, + { tone: 'sang3' , caption: 'sǎng' , num: 3}, + { tone: 'sang4' , caption: 'sàng' , num: 4}, + { tone: 'sao1' , caption: 'sāo' , num: 1}, + { tone: 'sao3' , caption: 'sǎo' , num: 3}, + { tone: 'sao4' , caption: 'sào' , num: 4}, + { tone: 'se4' , caption: 'sè' , num: 4}, + { tone: 'sen1' , caption: 'sēn' , num: 1}, + { tone: 'seng1' , caption: 'sēng' , num: 1}, + { tone: 'sha1' , caption: 'shā' , num: 1}, + { tone: 'sha3' , caption: 'shǎ' , num: 3}, + { tone: 'sha4' , caption: 'shà' , num: 4}, + { tone: 'shai1' , caption: 'shāi' , num: 1}, + { tone: 'shai4' , caption: 'shài' , num: 4}, + { tone: 'shan1' , caption: 'shān' , num: 1}, + { tone: 'shan3' , caption: 'shǎn' , num: 3}, + { tone: 'shan4' , caption: 'shàn' , num: 4}, + { tone: 'shang1' , caption: 'shāng' , num: 1}, + { tone: 'shang3' , caption: 'shǎng' , num: 3}, + { tone: 'shang4' , caption: 'shàng' , num: 4}, + { tone: 'shao1' , caption: 'shāo' , num: 1}, + { tone: 'shao2' , caption: 'sháo' , num: 2}, + { tone: 'shao3' , caption: 'shǎo' , num: 3}, + { tone: 'shao4' , caption: 'shào' , num: 4}, + { tone: 'she1' , caption: 'shē' , num: 1}, + { tone: 'she2' , caption: 'shé' , num: 2}, + { tone: 'she3' , caption: 'shě' , num: 3}, + { tone: 'she4' , caption: 'shè' , num: 4}, + { tone: 'shei2' , caption: 'shéi' , num: 2}, + { tone: 'shen1' , caption: 'shēn' , num: 1}, + { tone: 'shen2' , caption: 'shén' , num: 2}, + { tone: 'shen3' , caption: 'shěn' , num: 3}, + { tone: 'shen4' , caption: 'shèn' , num: 4}, + { tone: 'sheng1' , caption: 'shēng' , num: 1}, + { tone: 'sheng2' , caption: 'shéng' , num: 2}, + { tone: 'sheng3' , caption: 'shěng' , num: 3}, + { tone: 'sheng4' , caption: 'shèng' , num: 4}, + { tone: 'shi1' , caption: 'shī' , num: 1}, + { tone: 'shi2' , caption: 'shí' , num: 2}, + { tone: 'shi3' , caption: 'shǐ' , num: 3}, + { tone: 'shi4' , caption: 'shì' , num: 4}, + { tone: 'shou1' , caption: 'shōu' , num: 1}, + { tone: 'shou2' , caption: 'shóu' , num: 2}, + { tone: 'shou3' , caption: 'shǒu' , num: 3}, + { tone: 'shou4' , caption: 'shòu' , num: 4}, + { tone: 'shu1' , caption: 'shū' , num: 1}, + { tone: 'shu2' , caption: 'shú' , num: 2}, + { tone: 'shu3' , caption: 'shǔ' , num: 3}, + { tone: 'shu4' , caption: 'shù' , num: 4}, + { tone: 'shua1' , caption: 'shuā' , num: 1}, + { tone: 'shua3' , caption: 'shuǎ' , num: 3}, + { tone: 'shuai1' , caption: 'shuāi' , num: 1}, + { tone: 'shuai3' , caption: 'shuǎi' , num: 3}, + { tone: 'shuai4' , caption: 'shuài' , num: 4}, + { tone: 'shuan1' , caption: 'shuān' , num: 1}, + { tone: 'shuan4' , caption: 'shuàn' , num: 4}, + { tone: 'shuang1' , caption: 'shuāng' , num: 1}, + { tone: 'shuang3' , caption: 'shuǎng' , num: 3}, + { tone: 'shui2' , caption: 'shuí' , num: 2}, + { tone: 'shui3' , caption: 'shuǐ' , num: 3}, + { tone: 'shui4' , caption: 'shuì' , num: 4}, + { tone: 'shun3' , caption: 'shǔn' , num: 3}, + { tone: 'shun4' , caption: 'shùn' , num: 4}, + { tone: 'shuo1' , caption: 'shuō' , num: 1}, + { tone: 'shuo4' , caption: 'shuò' , num: 4}, + { tone: 'si1' , caption: 'sī' , num: 1}, + { tone: 'si3' , caption: 'sǐ' , num: 3}, + { tone: 'si4' , caption: 'sì' , num: 4}, + { tone: 'song1' , caption: 'sōng' , num: 1}, + { tone: 'song3' , caption: 'sǒng' , num: 3}, + { tone: 'song4' , caption: 'sòng' , num: 4}, + { tone: 'sou1' , caption: 'sōu' , num: 1}, + { tone: 'sou3' , caption: 'sǒu' , num: 3}, + { tone: 'sou4' , caption: 'sòu' , num: 4}, + { tone: 'su1' , caption: 'sū' , num: 1}, + { tone: 'su2' , caption: 'sú' , num: 2}, + { tone: 'su4' , caption: 'sù' , num: 4}, + { tone: 'suan1' , caption: 'suān' , num: 1}, + { tone: 'suan4' , caption: 'suàn' , num: 4}, + { tone: 'sui1' , caption: 'suī' , num: 1}, + { tone: 'sui2' , caption: 'suí' , num: 2}, + { tone: 'sui3' , caption: 'suǐ' , num: 3}, + { tone: 'sui4' , caption: 'suì' , num: 4}, + { tone: 'sun1' , caption: 'sūn' , num: 1}, + { tone: 'sun3' , caption: 'sǔn' , num: 3}, + { tone: 'suo1' , caption: 'suō' , num: 1}, + { tone: 'suo3' , caption: 'suǒ' , num: 3}, + { tone: 'ta1' , caption: 'tā' , num: 1}, + { tone: 'ta3' , caption: 'tǎ' , num: 3}, + { tone: 'ta4' , caption: 'tà' , num: 4}, + { tone: 'tai1' , caption: 'tāi' , num: 1}, + { tone: 'tai2' , caption: 'tái' , num: 2}, + { tone: 'tai4' , caption: 'tài' , num: 4}, + { tone: 'tan1' , caption: 'tān' , num: 1}, + { tone: 'tan2' , caption: 'tán' , num: 2}, + { tone: 'tan3' , caption: 'tǎn' , num: 3}, + { tone: 'tan4' , caption: 'tàn' , num: 4}, + { tone: 'tang1' , caption: 'tāng' , num: 1}, + { tone: 'tang2' , caption: 'táng' , num: 2}, + { tone: 'tang3' , caption: 'tǎng' , num: 3}, + { tone: 'tang4' , caption: 'tàng' , num: 4}, + { tone: 'tao1' , caption: 'tāo' , num: 1}, + { tone: 'tao2' , caption: 'táo' , num: 2}, + { tone: 'tao3' , caption: 'tǎo' , num: 3}, + { tone: 'tao4' , caption: 'tào' , num: 4}, + { tone: 'te4' , caption: 'tè' , num: 4}, + { tone: 'teng2' , caption: 'téng' , num: 2}, + { tone: 'ti1' , caption: 'tī' , num: 1}, + { tone: 'ti2' , caption: 'tí' , num: 2}, + { tone: 'ti3' , caption: 'tǐ' , num: 3}, + { tone: 'ti4' , caption: 'tì' , num: 4}, + { tone: 'tian1' , caption: 'tiān' , num: 1}, + { tone: 'tian2' , caption: 'tián' , num: 2}, + { tone: 'tian3' , caption: 'tiǎn' , num: 3}, + { tone: 'tian4' , caption: 'tiàn' , num: 4}, + { tone: 'tiao1' , caption: 'tiāo' , num: 1}, + { tone: 'tiao2' , caption: 'tiáo' , num: 2}, + { tone: 'tiao3' , caption: 'tiǎo' , num: 3}, + { tone: 'tiao4' , caption: 'tiào' , num: 4}, + { tone: 'tie1' , caption: 'tiē' , num: 1}, + { tone: 'tie3' , caption: 'tiě' , num: 3}, + { tone: 'tie4' , caption: 'tiè' , num: 4}, + { tone: 'ting1' , caption: 'tīng' , num: 1}, + { tone: 'ting2' , caption: 'tíng' , num: 2}, + { tone: 'ting3' , caption: 'tǐng' , num: 3}, + { tone: 'tong1' , caption: 'tōng' , num: 1}, + { tone: 'tong2' , caption: 'tóng' , num: 2}, + { tone: 'tong3' , caption: 'tǒng' , num: 3}, + { tone: 'tong4' , caption: 'tòng' , num: 4}, + { tone: 'tou1' , caption: 'tōu' , num: 1}, + { tone: 'tou2' , caption: 'tóu' , num: 2}, + { tone: 'tou4' , caption: 'tòu' , num: 4}, + { tone: 'tu1' , caption: 'tū' , num: 1}, + { tone: 'tu2' , caption: 'tú' , num: 2}, + { tone: 'tu3' , caption: 'tǔ' , num: 3}, + { tone: 'tu4' , caption: 'tù' , num: 4}, + { tone: 'tuan1' , caption: 'tuān' , num: 1}, + { tone: 'tuan2' , caption: 'tuán' , num: 2}, + { tone: 'tui1' , caption: 'tuī' , num: 1}, + { tone: 'tui2' , caption: 'tuí' , num: 2}, + { tone: 'tui3' , caption: 'tuǐ' , num: 3}, + { tone: 'tui4' , caption: 'tuì' , num: 4}, + { tone: 'tun1' , caption: 'tūn' , num: 1}, + { tone: 'tun2' , caption: 'tún' , num: 2}, + { tone: 'tun3' , caption: 'tǔn' , num: 3}, + { tone: 'tun4' , caption: 'tùn' , num: 4}, + { tone: 'tuo1' , caption: 'tuō' , num: 1}, + { tone: 'tuo2' , caption: 'tuó' , num: 2}, + { tone: 'tuo3' , caption: 'tuǒ' , num: 3}, + { tone: 'tuo4' , caption: 'tuò' , num: 4}, + { tone: 'wa1' , caption: 'wā' , num: 1}, + { tone: 'wa2' , caption: 'wá' , num: 2}, + { tone: 'wa3' , caption: 'wǎ' , num: 3}, + { tone: 'wa4' , caption: 'wà' , num: 4}, + { tone: 'wai1' , caption: 'wāi' , num: 1}, + { tone: 'wai3' , caption: 'wǎi' , num: 3}, + { tone: 'wai4' , caption: 'wài' , num: 4}, + { tone: 'wan1' , caption: 'wān' , num: 1}, + { tone: 'wan2' , caption: 'wán' , num: 2}, + { tone: 'wan3' , caption: 'wǎn' , num: 3}, + { tone: 'wan4' , caption: 'wàn' , num: 4}, + { tone: 'wang1' , caption: 'wāng' , num: 1}, + { tone: 'wang2' , caption: 'wáng' , num: 2}, + { tone: 'wang3' , caption: 'wǎng' , num: 3}, + { tone: 'wang4' , caption: 'wàng' , num: 4}, + { tone: 'wei1' , caption: 'wēi' , num: 1}, + { tone: 'wei2' , caption: 'wéi' , num: 2}, + { tone: 'wei3' , caption: 'wěi' , num: 3}, + { tone: 'wei4' , caption: 'wèi' , num: 4}, + { tone: 'wen1' , caption: 'wēn' , num: 1}, + { tone: 'wen2' , caption: 'wén' , num: 2}, + { tone: 'wen3' , caption: 'wěn' , num: 3}, + { tone: 'wen4' , caption: 'wèn' , num: 4}, + { tone: 'weng1' , caption: 'wēng' , num: 1}, + { tone: 'weng3' , caption: 'wěng' , num: 3}, + { tone: 'weng4' , caption: 'wèng' , num: 4}, + { tone: 'wo1' , caption: 'wō' , num: 1}, + { tone: 'wo3' , caption: 'wǒ' , num: 3}, + { tone: 'wo4' , caption: 'wò' , num: 4}, + { tone: 'wu1' , caption: 'wū' , num: 1}, + { tone: 'wu2' , caption: 'wú' , num: 2}, + { tone: 'wu3' , caption: 'wǔ' , num: 3}, + { tone: 'wu4' , caption: 'wù' , num: 4}, + { tone: 'xi1' , caption: 'xī' , num: 1}, + { tone: 'xi2' , caption: 'xí' , num: 2}, + { tone: 'xi3' , caption: 'xǐ' , num: 3}, + { tone: 'xi4' , caption: 'xì' , num: 4}, + { tone: 'xia1' , caption: 'xiā' , num: 1}, + { tone: 'xia2' , caption: 'xiá' , num: 2}, + { tone: 'xia4' , caption: 'xià' , num: 4}, + { tone: 'xian1' , caption: 'xiān' , num: 1}, + { tone: 'xian2' , caption: 'xián' , num: 2}, + { tone: 'xian3' , caption: 'xiǎn' , num: 3}, + { tone: 'xian4' , caption: 'xiàn' , num: 4}, + { tone: 'xiang1' , caption: 'xiāng' , num: 1}, + { tone: 'xiang2' , caption: 'xiáng' , num: 2}, + { tone: 'xiang3' , caption: 'xiǎng' , num: 3}, + { tone: 'xiang4' , caption: 'xiàng' , num: 4}, + { tone: 'xiao1' , caption: 'xiāo' , num: 1}, + { tone: 'xiao2' , caption: 'xiáo' , num: 2}, + { tone: 'xiao3' , caption: 'xiǎo' , num: 3}, + { tone: 'xiao4' , caption: 'xiào' , num: 4}, + { tone: 'xie1' , caption: 'xiē' , num: 1}, + { tone: 'xie2' , caption: 'xié' , num: 2}, + { tone: 'xie3' , caption: 'xiě' , num: 3}, + { tone: 'xie4' , caption: 'xiè' , num: 4}, + { tone: 'xin1' , caption: 'xīn' , num: 1}, + { tone: 'xin4' , caption: 'xìn' , num: 4}, + { tone: 'xing1' , caption: 'xīng' , num: 1}, + { tone: 'xing2' , caption: 'xíng' , num: 2}, + { tone: 'xing3' , caption: 'xǐng' , num: 3}, + { tone: 'xing4' , caption: 'xìng' , num: 4}, + { tone: 'xiong1' , caption: 'xiōng' , num: 1}, + { tone: 'xiong2' , caption: 'xióng' , num: 2}, + { tone: 'xiu1' , caption: 'xiū' , num: 1}, + { tone: 'xiu3' , caption: 'xiǔ' , num: 3}, + { tone: 'xiu4' , caption: 'xiù' , num: 4}, + { tone: 'xu1' , caption: 'xū' , num: 1}, + { tone: 'xu2' , caption: 'xú' , num: 2}, + { tone: 'xu3' , caption: 'xǔ' , num: 3}, + { tone: 'xu4' , caption: 'xù' , num: 4}, + { tone: 'xuan1' , caption: 'xuān' , num: 1}, + { tone: 'xuan2' , caption: 'xuán' , num: 2}, + { tone: 'xuan3' , caption: 'xuǎn' , num: 3}, + { tone: 'xuan4' , caption: 'xuàn' , num: 4}, + { tone: 'xue1' , caption: 'xuē' , num: 1}, + { tone: 'xue2' , caption: 'xué' , num: 2}, + { tone: 'xue3' , caption: 'xuě' , num: 3}, + { tone: 'xue4' , caption: 'xuè' , num: 4}, + { tone: 'xun1' , caption: 'xūn' , num: 1}, + { tone: 'xun2' , caption: 'xún' , num: 2}, + { tone: 'xun4' , caption: 'xùn' , num: 4}, + { tone: 'ya1' , caption: 'yā' , num: 1}, + { tone: 'ya2' , caption: 'yá' , num: 2}, + { tone: 'ya3' , caption: 'yǎ' , num: 3}, + { tone: 'ya4' , caption: 'yà' , num: 4}, + { tone: 'ya5' , caption: 'ya' , num: 5}, + { tone: 'yan1' , caption: 'yān' , num: 1}, + { tone: 'yan2' , caption: 'yán' , num: 2}, + { tone: 'yan3' , caption: 'yǎn' , num: 3}, + { tone: 'yan4' , caption: 'yàn' , num: 4}, + { tone: 'yang1' , caption: 'yāng' , num: 1}, + { tone: 'yang2' , caption: 'yáng' , num: 2}, + { tone: 'yang3' , caption: 'yǎng' , num: 3}, + { tone: 'yang4' , caption: 'yàng' , num: 4}, + { tone: 'yao1' , caption: 'yāo' , num: 1}, + { tone: 'yao2' , caption: 'yáo' , num: 2}, + { tone: 'yao3' , caption: 'yǎo' , num: 3}, + { tone: 'yao4' , caption: 'yào' , num: 4}, + { tone: 'ye1' , caption: 'yē' , num: 1}, + { tone: 'ye2' , caption: 'yé' , num: 2}, + { tone: 'ye3' , caption: 'yě' , num: 3}, + { tone: 'ye4' , caption: 'yè' , num: 4}, + { tone: 'yi1' , caption: 'yī' , num: 1}, + { tone: 'yi2' , caption: 'yí' , num: 2}, + { tone: 'yi3' , caption: 'yǐ' , num: 3}, + { tone: 'yi4' , caption: 'yì' , num: 4}, + { tone: 'yin1' , caption: 'yīn' , num: 1}, + { tone: 'yin2' , caption: 'yín' , num: 2}, + { tone: 'yin3' , caption: 'yǐn' , num: 3}, + { tone: 'yin4' , caption: 'yìn' , num: 4}, + { tone: 'ying1' , caption: 'yīng' , num: 1}, + { tone: 'ying2' , caption: 'yíng' , num: 2}, + { tone: 'ying3' , caption: 'yǐng' , num: 3}, + { tone: 'ying4' , caption: 'yìng' , num: 4}, + { tone: 'yo1' , caption: 'yō' , num: 1}, + { tone: 'yong1' , caption: 'yōng' , num: 1}, + { tone: 'yong2' , caption: 'yóng' , num: 2}, + { tone: 'yong3' , caption: 'yǒng' , num: 3}, + { tone: 'yong4' , caption: 'yòng' , num: 4}, + { tone: 'you1' , caption: 'yōu' , num: 1}, + { tone: 'you2' , caption: 'yóu' , num: 2}, + { tone: 'you3' , caption: 'yǒu' , num: 3}, + { tone: 'you4' , caption: 'yòu' , num: 4}, + { tone: 'yu1' , caption: 'yū' , num: 1}, + { tone: 'yu2' , caption: 'yú' , num: 2}, + { tone: 'yu3' , caption: 'yǔ' , num: 3}, + { tone: 'yu4' , caption: 'yù' , num: 4}, + { tone: 'yuan1' , caption: 'yuān' , num: 1}, + { tone: 'yuan2' , caption: 'yuán' , num: 2}, + { tone: 'yuan3' , caption: 'yuǎn' , num: 3}, + { tone: 'yuan4' , caption: 'yuàn' , num: 4}, + { tone: 'yue1' , caption: 'yuē' , num: 1}, + { tone: 'yue4' , caption: 'yuè' , num: 4}, + { tone: 'yun1' , caption: 'yūn' , num: 1}, + { tone: 'yun2' , caption: 'yún' , num: 2}, + { tone: 'yun3' , caption: 'yǔn' , num: 3}, + { tone: 'yun4' , caption: 'yùn' , num: 4}, + { tone: 'za1' , caption: 'zā' , num: 1}, + { tone: 'za2' , caption: 'zá' , num: 2}, + { tone: 'za3' , caption: 'zǎ' , num: 3}, + { tone: 'zai1' , caption: 'zāi' , num: 1}, + { tone: 'zai3' , caption: 'zǎi' , num: 3}, + { tone: 'zai4' , caption: 'zài' , num: 4}, + { tone: 'zan1' , caption: 'zān' , num: 1}, + { tone: 'zan2' , caption: 'zán' , num: 2}, + { tone: 'zan4' , caption: 'zàn' , num: 4}, + { tone: 'zang1' , caption: 'zāng' , num: 1}, + { tone: 'zang4' , caption: 'zàng' , num: 4}, + { tone: 'zao1' , caption: 'zāo' , num: 1}, + { tone: 'zao2' , caption: 'záo' , num: 2}, + { tone: 'zao3' , caption: 'zǎo' , num: 3}, + { tone: 'zao4' , caption: 'zào' , num: 4}, + { tone: 'ze2' , caption: 'zé' , num: 2}, + { tone: 'ze4' , caption: 'zè' , num: 4}, + { tone: 'zei2' , caption: 'zéi' , num: 2}, + { tone: 'zen3' , caption: 'zěn' , num: 3}, + { tone: 'zeng1' , caption: 'zēng' , num: 1}, + { tone: 'zeng4' , caption: 'zèng' , num: 4}, + { tone: 'zha1' , caption: 'zhā' , num: 1}, + { tone: 'zha2' , caption: 'zhá' , num: 2}, + { tone: 'zha3' , caption: 'zhǎ' , num: 3}, + { tone: 'zha4' , caption: 'zhà' , num: 4}, + { tone: 'zhai1' , caption: 'zhāi' , num: 1}, + { tone: 'zhai2' , caption: 'zhái' , num: 2}, + { tone: 'zhai3' , caption: 'zhǎi' , num: 3}, + { tone: 'zhai4' , caption: 'zhài' , num: 4}, + { tone: 'zhan1' , caption: 'zhān' , num: 1}, + { tone: 'zhan3' , caption: 'zhǎn' , num: 3}, + { tone: 'zhan4' , caption: 'zhàn' , num: 4}, + { tone: 'zhang1' , caption: 'zhāng' , num: 1}, + { tone: 'zhang3' , caption: 'zhǎng' , num: 3}, + { tone: 'zhang4' , caption: 'zhàng' , num: 4}, + { tone: 'zhao1' , caption: 'zhāo' , num: 1}, + { tone: 'zhao2' , caption: 'zháo' , num: 2}, + { tone: 'zhao3' , caption: 'zhǎo' , num: 3}, + { tone: 'zhao4' , caption: 'zhào' , num: 4}, + { tone: 'zhe1' , caption: 'zhē' , num: 1}, + { tone: 'zhe2' , caption: 'zhé' , num: 2}, + { tone: 'zhe3' , caption: 'zhě' , num: 3}, + { tone: 'zhe4' , caption: 'zhè' , num: 4}, + { tone: 'zhen1' , caption: 'zhēn' , num: 1}, + { tone: 'zhen2' , caption: 'zhén' , num: 2}, + { tone: 'zhen3' , caption: 'zhěn' , num: 3}, + { tone: 'zhen4' , caption: 'zhèn' , num: 4}, + { tone: 'zheng1' , caption: 'zhēng' , num: 1}, + { tone: 'zheng3' , caption: 'zhěng' , num: 3}, + { tone: 'zheng4' , caption: 'zhèng' , num: 4}, + { tone: 'zhi1' , caption: 'zhī' , num: 1}, + { tone: 'zhi2' , caption: 'zhí' , num: 2}, + { tone: 'zhi3' , caption: 'zhǐ' , num: 3}, + { tone: 'zhi4' , caption: 'zhì' , num: 4}, + { tone: 'zhong1' , caption: 'zhōng' , num: 1}, + { tone: 'zhong3' , caption: 'zhǒng' , num: 3}, + { tone: 'zhong4' , caption: 'zhòng' , num: 4}, + { tone: 'zhou1' , caption: 'zhōu' , num: 1}, + { tone: 'zhou2' , caption: 'zhóu' , num: 2}, + { tone: 'zhou3' , caption: 'zhǒu' , num: 3}, + { tone: 'zhou4' , caption: 'zhòu' , num: 4}, + { tone: 'zhu1' , caption: 'zhū' , num: 1}, + { tone: 'zhu2' , caption: 'zhú' , num: 2}, + { tone: 'zhu3' , caption: 'zhǔ' , num: 3}, + { tone: 'zhu4' , caption: 'zhù' , num: 4}, + { tone: 'zhua1' , caption: 'zhuā' , num: 1}, + { tone: 'zhua3' , caption: 'zhuǎ' , num: 3}, + { tone: 'zhuan1' , caption: 'zhuān' , num: 1}, + { tone: 'zhuan3' , caption: 'zhuǎn' , num: 3}, + { tone: 'zhuan4' , caption: 'zhuàn' , num: 4}, + { tone: 'zhuang1' , caption: 'zhuāng' , num: 1}, + { tone: 'zhuang4' , caption: 'zhuàng' , num: 4}, + { tone: 'zhui1' , caption: 'zhuī' , num: 1}, + { tone: 'zhui4' , caption: 'zhuì' , num: 4}, + { tone: 'zhun1' , caption: 'zhūn' , num: 1}, + { tone: 'zhun3' , caption: 'zhǔn' , num: 3}, + { tone: 'zhuo1' , caption: 'zhuō' , num: 1}, + { tone: 'zhuo2' , caption: 'zhuó' , num: 2}, + { tone: 'zi1' , caption: 'zī' , num: 1}, + { tone: 'zi3' , caption: 'zǐ' , num: 3}, + { tone: 'zi4' , caption: 'zì' , num: 4}, + { tone: 'zong1' , caption: 'zōng' , num: 1}, + { tone: 'zong3' , caption: 'zǒng' , num: 3}, + { tone: 'zong4' , caption: 'zòng' , num: 4}, + { tone: 'zou3' , caption: 'zǒu' , num: 3}, + { tone: 'zou4' , caption: 'zòu' , num: 4}, + { tone: 'zu1' , caption: 'zū' , num: 1}, + { tone: 'zu2' , caption: 'zú' , num: 2}, + { tone: 'zu3' , caption: 'zǔ' , num: 3}, + { tone: 'zu4' , caption: 'zù' , num: 4}, + { tone: 'zuan1' , caption: 'zuān' , num: 1}, + { tone: 'zuan3' , caption: 'zuǎn' , num: 3}, + { tone: 'zuan4' , caption: 'zuàn' , num: 4}, + { tone: 'zui3' , caption: 'zuǐ' , num: 3}, + { tone: 'zui4' , caption: 'zuì' , num: 4}, + { tone: 'zun1' , caption: 'zūn' , num: 1}, + { tone: 'zun3' , caption: 'zǔn' , num: 3}, + { tone: 'zuo1' , caption: 'zuō' , num: 1}, + { tone: 'zuo2' , caption: 'zuó' , num: 2}, + { tone: 'zuo3' , caption: 'zuǒ' , num: 3}, + { tone: 'zuo4' , caption: 'zuò', num: 4 } ]; \ No newline at end of file diff --git a/src/Strings.ts b/src/Strings.ts index 230c36c..70085bb 100644 --- a/src/Strings.ts +++ b/src/Strings.ts @@ -7,5 +7,8 @@ export const strings = { params: 'Параметры', sylCount: 'Количество слогов', beginDictation: "Начать диктант!", - selectInitAndFin: "Выберите инициали и финали" + selectInitAndFin: "Выберите инициали и финали", + showSyllables: "Показать слоги", + playAgain: "Повторить", + toBegin: "В начало" } \ No newline at end of file diff --git a/src/Types.ts b/src/Types.ts index cef17a3..b62943f 100644 --- a/src/Types.ts +++ b/src/Types.ts @@ -15,7 +15,8 @@ export type SylPart = { export type Tone = { tone: string, - caption: string + caption: string, + num: number } export type Found = { @@ -33,4 +34,4 @@ export enum BtnColor { green = "success" } -export enum Status {params, plaing, plaied, showlist} \ No newline at end of file +export enum Status {params, prepare, playing, plaied, showlist} \ No newline at end of file diff --git a/src/reducer.ts b/src/reducer.ts index f735d75..b66c44a 100644 --- a/src/reducer.ts +++ b/src/reducer.ts @@ -1,10 +1,10 @@ import { finales, initials, tones } from "./data"; import { IState } from "./store"; -import { SylPart, Syllable, Tone, Status } from "./types"; +import { SylPart, Syllable, Tone } from "./types"; import { GetSyllablesByInitAndFin, getRandomArray, toggle } from "./utils"; export enum ActionType { - toggleOne, toggleAll, refreshPlayList, setPause, setCount, setStatus, prepare + toggleOne, toggleAll, refreshPlayList, setPause, setCount, setStatus, playing } export enum ToggleType { init, fin } @@ -12,93 +12,81 @@ export type TogglePayload = { type: ToggleType, part: SylPart } export type Action = { type: ActionType, payload?: any }; -const ProceedAllInitials = (state: IState):{ allInitiales:boolean, initiales: SylPart[], foundSyllables:Syllable[], foundTones: Tone[]} => +interface IFounds { foundSyllables:Syllable[], foundTones: Tone[], randomTones: Tone[] } + +interface IInitResult { + allInitiales?:boolean, + initiales: SylPart[], + foundSyllables:Syllable[], + foundTones: Tone[], + randomTones: Tone[] +} + +interface IFinResult { + allfinales?:boolean, + finales: SylPart[], + foundSyllables:Syllable[], + foundTones: Tone[], + randomTones: Tone[] +} + +const proceedFounds = ( initiales: SylPart[], finales:SylPart[], count: number):IFounds=> +{ + let foundSyllables:Syllable[] = GetSyllablesByInitAndFin( initiales, finales ) + let foundTones = tones.filter( t => foundSyllables.some( syl => syl.tones.some( st => st===t.tone) ) ) + let randomTones = getRandomArray(foundTones, count) + return { foundSyllables, foundTones, randomTones } +} + +const ProceedAllInitials = (state: IState):IInitResult => { let toggled = state.allInitiales ? [] as SylPart[] : initials - let foundSyllables:Syllable[] = GetSyllablesByInitAndFin( toggled, state.finales ) - let foundTones = tones.filter( t => foundSyllables.some( syl => syl.tones.some( st => st===t.tone) ) ) return { allInitiales: !state.allInitiales, initiales: toggled, - foundSyllables: foundSyllables, - foundTones: foundTones + ...proceedFounds(toggled, state.finales, state.sylCount) } } -const ProceedAllFinales = (state: IState):{ allfinales:boolean, finales: SylPart[], foundSyllables:Syllable[], foundTones: Tone[]} => +const ProceedAllFinales = (state: IState):IFinResult => { let toggled = state.allfinales ? [] as SylPart[] : finales - let foundSyllables:Syllable[] = GetSyllablesByInitAndFin( state.initiales, toggled ) - let foundTones = tones.filter( t => foundSyllables.some( syl => syl.tones.some( st => st===t.tone) ) ) return { allfinales: !state.allfinales, finales: toggled, - foundSyllables: foundSyllables, - foundTones: foundTones + ...proceedFounds(state.initiales, toggled, state.sylCount) } } -const ProceedInitiale = (state: IState, index: SylPart):{ initiales: SylPart[], foundSyllables:Syllable[], foundTones: Tone[]} => +const ProceedInitiale = (state: IState, index: SylPart):IInitResult => { let toggled = toggle(state.initiales,index) - let foundSyllables:Syllable[] = GetSyllablesByInitAndFin( toggled, state.finales ) - let foundTones = tones.filter( t => foundSyllables.some( syl => syl.tones.some( st => st===t.tone) ) ) return { initiales: toggled, - foundSyllables: foundSyllables, - foundTones: foundTones + ...proceedFounds(toggled, state.finales, state.sylCount) } } -const ProceedFinale = (state: IState, index: SylPart):{ finales: SylPart[], foundSyllables:Syllable[], foundTones: Tone[]} => +const ProceedFinale = (state: IState, index: SylPart):IFinResult => { let toggled = toggle(state.finales,index) - let foundSyllables:Syllable[] = GetSyllablesByInitAndFin( state.initiales , toggled ) - let foundTones = tones.filter( t => foundSyllables.some( syl => syl.tones.some( st => st===t.tone) ) ) return { finales: toggled, - foundSyllables: foundSyllables, - foundTones: foundTones + ...proceedFounds(state.initiales, toggled, state.sylCount) } } -const prepareDictation = (state: IState): { randomTones: Tone[] } => { - var newRandom = getRandomArray( state.foundTones, state.sylCount! ) - if (newRandom.length > 0) { - let audios:HTMLAudioElement[] = [] - newRandom!.forEach(element => { - audios = [...audios, new Audio(`/assets/audio/${element.tone}.mp3`) ] - }); - if ( audios.length > 0 ) { - for(let x=0; x setTimeout( () => { -// let pno = x+2 -// setPlaingNo(pno) - audios[x+1].play() - }, 1000*state.sylPause! ) ; - } - } - - } - console.log('tones for refresh') - newRandom!.forEach(element => console.log(element)) - - return { randomTones: newRandom } -} -// see https://stackoverflow.com/questions/36730793/can-i-dispatch-an-action-in-reducer export const reducer = (state:IState, action:Action):IState => { switch (action.type) { case ActionType.setPause: return { ...state, sylPause: action.payload as number } - case ActionType.setCount: return { ...state, sylCount: action.payload as number } -// case ActionType.refreshPlayList: return { ...state, randomTones: getRandomArray( state.foundTones, state.sylCount! ) } - case ActionType.setStatus: return { ...state, status: action.payload as Status} - - case ActionType.prepare: return { ...state, ...prepareDictation(state) } + case ActionType.setCount: return { ...state, + sylCount: action.payload as number, + randomTones: getRandomArray(state.foundTones, action.payload as number) } +// case ActionType.setStatus: return { ...state, status: action.payload as Status} case ActionType.toggleAll: { if (action.payload as ToggleType === ToggleType.init) return { ...state, ...ProceedAllInitials(state) } - if (action.payload as ToggleType === ToggleType.fin) return { ...state, ...ProceedAllFinales(state) } + if (action.payload as ToggleType === ToggleType.fin) return { ...state, ...ProceedAllFinales(state) } return state } diff --git a/src/store.tsx b/src/store.tsx index 136d615..f2d1aa3 100644 --- a/src/store.tsx +++ b/src/store.tsx @@ -1,6 +1,6 @@ import { Context, createContext, Dispatch, ReactElement, useContext, useReducer } from "react"; import { reducer, Action, ToggleType } from "./reducer" -import { Status, Syllable, SylPart, Tone } from "./types"; +import { Syllable, SylPart, Tone } from "./types"; import { isEnabled } from "./utils"; export interface IState { @@ -15,8 +15,7 @@ export interface IState { randomTones: Tone[], allEnabled: (type: ToggleType) => false, isEnabled: (type: ToggleType, index: string) => false, - isFound: () => false, - status: Status + isFound: () => false } export interface IStore { @@ -44,8 +43,7 @@ export const defaultState:Object = { if ( type === ToggleType.fin ) return isEnabled((this as IState).finales!, index) return false }, - isFound: function():boolean { return (this as IState).foundSyllables!.length > 0 }, - status: Status.params + isFound: function():boolean { return (this as IState).foundSyllables!.length > 0 } } export const AppContext:Context = createContext({ state: defaultState as IState, dispatch: () => null })