{"id":13430,"date":"2026-01-11T12:20:43","date_gmt":"2026-01-11T04:20:43","guid":{"rendered":"https:\/\/tiffanysmandarin.com\/?p=13430"},"modified":"2026-10-09T23:01:43","modified_gmt":"2026-10-09T15:01:43","slug":"contemporary-chinese-vocabulary-practice-b2l8","status":"publish","type":"post","link":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/","title":{"rendered":"B2 L8 Vocabulary and Practice"},"content":{"rendered":"\n<div style=\"height:5px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div style=\"height:33px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!--\n  \u7576\u4ee3\u4e2d\u6587 Book 2 \u00b7 Lesson 8 \u300c\u5b78\u529f\u592b\u300d Learning Kungfu \u2014 Vocabulary Embed\n  Same technical pattern as the Book 1 embeds (scoped CSS --d28-*, id #dangdai-b2l8-vocab-embed-1, lang-zh-TW\/lang-zh-CN ruby\n  word-by-word, no literal double-ampersand in script, nested ifs). Vocabulary I & II transcribed from the textbook's own \u751f\u8a5e\u4e00 \/ \u751f\u8a5e\u4e8c\n  pages (Names and Phrases included) with the book's part-of-speech tags. The dialogue is an ORIGINAL conversation, not from the textbook.\n\n  PINYIN SYNC FIX: the site's Pinyin Display toggle only adds the\n  \"hidden\" \/ \"mouseover\" class to <rt> elements that exist at the moment\n  it's clicked. The flashcard (re-rendered on every Prev\/Next) and the\n  Match It tiles (re-rendered every New Round, and using a plain span\n  rather than <rt>) were therefore ignoring it. Now a MutationObserver\n  watches a reference <rt> in the static word list, and syncPinyin()\n  copies its current mode onto the flashcard's <rt>s and onto the tiles\n  (via d28-py-hidden \/ d28-py-mouseover classes on the root) after every\n  re-render and every toggle change. rt.hidden \/ rt.mouseover rules are\n  also defined here so hiding works even without the site's own CSS.\n-->\n<div class=\"dangdai-b2l8-vocab-embed\" id=\"dangdai-b2l8-vocab-embed-1\">\n<style>\n.dangdai-b2l8-vocab-embed {\n  --d28-oxblood: #7b2d26;\n  --d28-oxblood-dark: #5e211c;\n  --d28-mustard: #c9922b;\n  --d28-sage: #7c8b6f;\n  --d28-bone: #f7f1e6;\n  --d28-ink: #2c2620;\n  --d28-line: #e4d9c4;\n  font-family: 'Work Sans', -apple-system, sans-serif;\n  color: var(--d28-ink);\n  background: #fff;\n  max-width: 760px;\n  margin: 0 auto;\n  padding: 8px 4px 24px;\n  line-height: 1.6;\n}\n.dangdai-b2l8-vocab-embed * { box-sizing: border-box; }\n.dangdai-b2l8-vocab-embed h1,\n.dangdai-b2l8-vocab-embed h2,\n.dangdai-b2l8-vocab-embed h3 {\n  font-family: 'Bitter', Georgia, serif;\n  color: var(--d28-oxblood-dark);\n  margin: 0 0 8px;\n}\n.dangdai-b2l8-vocab-embed .d28-support-note {\n  font-size: 0.85rem;\n  color: var(--d28-sage);\n  border-bottom: 1px solid var(--d28-line);\n  padding-bottom: 12px;\n  margin: 0 0 16px;\n}\n.dangdai-b2l8-vocab-embed .d28-lede {\n  margin: 0 0 24px;\n  padding: 14px 16px;\n  background: var(--d28-bone);\n  border-left: 4px solid var(--d28-mustard);\n  border-radius: 4px;\n  font-size: 0.98rem;\n}\n.dangdai-b2l8-vocab-embed .d28-lede b { color: var(--d28-oxblood-dark); }\n.dangdai-b2l8-vocab-embed .d28-sec-eyebrow {\n  display: inline-block;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.75rem;\n  letter-spacing: 0.08em;\n  color: #fff;\n  background: var(--d28-oxblood);\n  padding: 3px 9px;\n  border-radius: 3px;\n  margin: 32px 0 10px;\n}\n.dangdai-b2l8-vocab-embed .d28-word-card {\n  border: 1px solid var(--d28-line);\n  border-radius: 8px;\n  padding: 12px 14px;\n  margin-bottom: 10px;\n  background: #fff;\n}\n.dangdai-b2l8-vocab-embed .d28-word-top {\n  display: flex;\n  align-items: baseline;\n  gap: 10px;\n  flex-wrap: wrap;\n}\n.dangdai-b2l8-vocab-embed .d28-num {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.75rem;\n  color: var(--d28-mustard);\n  min-width: 22px;\n}\n.dangdai-b2l8-vocab-embed .d28-hanzi { font-size: 1.35rem; font-weight: 600; }\n.dangdai-b2l8-vocab-embed .d28-pos {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.7rem;\n  color: #fff;\n  background: var(--d28-sage);\n  padding: 2px 7px;\n  border-radius: 10px;\n}\n.dangdai-b2l8-vocab-embed ruby {\n  ruby-position: over;\n  margin-right: 2px;\n  color: var(--d28-ink) !important;\n  font-size: inherit !important;\n}\n.dangdai-b2l8-vocab-embed .rb {\n  color: var(--d28-ink) !important;\n  font-size: inherit !important;\n}\n.dangdai-b2l8-vocab-embed rt {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.6rem !important;\n  color: var(--d28-sage) !important;\n  font-weight: 400;\n}\n.dangdai-b2l8-vocab-embed rt.hidden { display: none; }\n.dangdai-b2l8-vocab-embed rt.mouseover { opacity: 0; }\n.dangdai-b2l8-vocab-embed rt.mouseover:hover { opacity: 1; }\n.dangdai-b2l8-vocab-embed .d28-meaning { font-style: italic; color: #6b5f52; font-size: 0.92rem; }\n.dangdai-b2l8-vocab-embed .d28-speaker {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  flex: 0 0 26px;\n  width: 26px;\n  height: 26px;\n  padding: 0;\n  border: none;\n  background: var(--d28-bone);\n  color: var(--d28-oxblood);\n  border-radius: 50%;\n  cursor: pointer;\n  margin-left: auto;\n}\n.dangdai-b2l8-vocab-embed .d28-speaker:hover { background: var(--d28-mustard); color: #fff; }\n.dangdai-b2l8-vocab-embed .d28-example {\n  margin-top: 8px;\n  padding-top: 8px;\n  border-top: 1px dashed var(--d28-line);\n  font-size: 0.95rem;\n}\n.dangdai-b2l8-vocab-embed .d28-example .d28-sent-word { display: inline-flex; }\n.dangdai-b2l8-vocab-embed .d28-example .d28-punct { margin-right: 2px; }\n.dangdai-b2l8-vocab-embed .d28-example .d28-en {\n  display: block;\n  color: #6b5f52;\n  font-size: 0.85rem;\n  margin-top: 4px;\n}\n.dangdai-b2l8-vocab-embed .d28-dialogue-note { font-size: 0.85rem; color: #6b5f52; margin: 0 0 10px; }\n.dangdai-b2l8-vocab-embed .d28-dialogue {\n  background: var(--d28-bone);\n  border-radius: 8px;\n  padding: 16px 18px;\n  margin-top: 8px;\n}\n.dangdai-b2l8-vocab-embed .d28-line {\n  display: flex;\n  gap: 8px;\n  margin-bottom: 12px;\n  align-items: flex-start;\n  flex-wrap: wrap;\n}\n.dangdai-b2l8-vocab-embed .d28-speaker-tag {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.72rem;\n  color: var(--d28-oxblood);\n  min-width: 46px;\n  padding-top: 3px;\n}\n.dangdai-b2l8-vocab-embed .d28-line-body { flex: 1; min-width: 200px; }\n.dangdai-b2l8-vocab-embed .d28-line-en { display: block; color: #6b5f52; font-size: 0.82rem; margin-top: 2px; }\n\n.dangdai-b2l8-vocab-embed .d28-fc-hint { font-size: 0.85rem; color: #6b5f52; margin: 0 0 12px; text-align: center; }\n.dangdai-b2l8-vocab-embed .d28-flashcard-wrap { max-width: 320px; margin: 0 auto 14px; perspective: 1200px; }\n.dangdai-b2l8-vocab-embed .d28-flashcard {\n  position: relative;\n  width: 100%;\n  height: 230px;\n  cursor: pointer;\n  transform-style: preserve-3d;\n  transition: transform 0.5s;\n}\n.dangdai-b2l8-vocab-embed .d28-flashcard.d28-flipped { transform: rotateY(180deg); }\n.dangdai-b2l8-vocab-embed .d28-fc-face {\n  position: absolute;\n  inset: 0;\n  backface-visibility: hidden;\n  border: 1px solid var(--d28-line);\n  border-radius: 12px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  padding: 16px;\n  background: #fff;\n  text-align: center;\n}\n.dangdai-b2l8-vocab-embed .d28-fc-back { transform: rotateY(180deg); background: var(--d28-bone); }\n.dangdai-b2l8-vocab-embed .d28-fc-front .d28-hanzi { font-size: 4rem !important; }\n.dangdai-b2l8-vocab-embed .d28-flashcard-wrap rt { font-size: 1.2rem !important; }\n.dangdai-b2l8-vocab-embed .d28-fc-back .d28-meaning { font-style: italic; color: var(--d28-oxblood-dark); font-size: 1.725rem; }\n.dangdai-b2l8-vocab-embed .d28-fc-back .d28-pos { margin-top: 8px; }\n.dangdai-b2l8-vocab-embed .d28-flashcard-controls { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 28px; }\n.dangdai-b2l8-vocab-embed .d28-game-btn {\n  font-family: 'Work Sans', sans-serif;\n  font-size: 0.85rem;\n  border: 1px solid var(--d28-oxblood);\n  color: var(--d28-oxblood);\n  background: #fff;\n  padding: 6px 14px;\n  border-radius: 20px;\n  cursor: pointer;\n}\n.dangdai-b2l8-vocab-embed .d28-game-btn:hover { background: var(--d28-oxblood); color: #fff; }\n.dangdai-b2l8-vocab-embed .d28-game-bar { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }\n.dangdai-b2l8-vocab-embed .d28-game-status { font-family: 'IBM Plex Mono', monospace; font-size: 0.82rem; color: var(--d28-sage); }\n.dangdai-b2l8-vocab-embed .d28-game-board { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }\n.dangdai-b2l8-vocab-embed .d28-game-col { display: flex; flex-direction: column; gap: 8px; }\n.dangdai-b2l8-vocab-embed .d28-tile {\n  font-family: 'Work Sans', sans-serif;\n  text-align: left;\n  border: 1px solid var(--d28-line);\n  background: #fff;\n  border-radius: 6px;\n  padding: 10px 12px;\n  cursor: pointer;\n  font-size: 0.95rem;\n  color: var(--d28-ink);\n  transition: background 0.15s, border-color 0.15s, transform 0.1s;\n}\n.dangdai-b2l8-vocab-embed .d28-tile .d28-tile-py {\n  display: block;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.7rem;\n  color: var(--d28-sage);\n  margin-top: 2px;\n}\n\/* Match It tile pinyin follows the site's Pinyin Display toggle *\/\n.dangdai-b2l8-vocab-embed.d28-py-hidden .d28-tile .d28-tile-py { display: none; }\n.dangdai-b2l8-vocab-embed.d28-py-mouseover .d28-tile .d28-tile-py { opacity: 0; }\n.dangdai-b2l8-vocab-embed.d28-py-mouseover .d28-tile:hover .d28-tile-py { opacity: 1; }\n.dangdai-b2l8-vocab-embed .d28-tile:hover:not(.d28-matched):not(.d28-selected) { border-color: var(--d28-mustard); }\n.dangdai-b2l8-vocab-embed .d28-tile.d28-selected { border-color: var(--d28-oxblood); background: var(--d28-bone); }\n.dangdai-b2l8-vocab-embed .d28-tile.d28-matched { border-color: var(--d28-sage); background: #eef2e9; color: var(--d28-sage); cursor: default; }\n.dangdai-b2l8-vocab-embed .d28-tile.d28-wrong { border-color: #b5453d; background: #fbeceb; animation: d28-shake 0.3s; }\n@keyframes d28-shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }\n.dangdai-b2l8-vocab-embed .d28-game-win { text-align: center; padding: 14px; font-family: 'Bitter', serif; color: var(--d28-oxblood-dark); display: none; }\n.dangdai-b2l8-vocab-embed .d28-game-win.d28-show { display: block; }\n@media (max-width: 480px) { .dangdai-b2l8-vocab-embed .d28-game-board { grid-template-columns: 1fr; } }\n.dangdai-b2l8-vocab-embed .d28-quiz { background: #fff; border: 1px solid var(--d28-line); border-radius: 12px; padding: 20px 22px; margin-top: 8px; }\n.dangdai-b2l8-vocab-embed .d28-quiz-progress { font-size: 0.82rem; color: var(--d28-sage); margin: 0 0 10px; font-family: 'IBM Plex Mono', monospace; }\n.dangdai-b2l8-vocab-embed .d28-quiz-prompt { font-size: 1.1rem; margin: 0 0 14px; }\n.dangdai-b2l8-vocab-embed .d28-quiz-options { display: flex; flex-direction: column; gap: 8px; margin: 0 0 10px; }\n.dangdai-b2l8-vocab-embed .d28-quiz-opt { text-align: left; border: 1px solid var(--d28-line); background: var(--d28-bone); border-radius: 8px; padding: 10px 14px; cursor: pointer; font-size: 0.98rem; color: var(--d28-ink); }\n.dangdai-b2l8-vocab-embed .d28-quiz-opt:hover { background: #f0e6d2; }\n.dangdai-b2l8-vocab-embed .d28-quiz-opt.correct { background: #e3efdd; border-color: #7fae6d; color: #3d5c34; }\n.dangdai-b2l8-vocab-embed .d28-quiz-opt.incorrect { background: #f5e0dc; border-color: var(--d28-oxblood); color: var(--d28-oxblood-dark); }\n.dangdai-b2l8-vocab-embed .d28-quiz-opt[disabled] { cursor: default; }\n.dangdai-b2l8-vocab-embed .d28-quiz-input-row { display: flex; gap: 8px; margin: 0 0 10px; flex-wrap: wrap; }\n.dangdai-b2l8-vocab-embed .d28-quiz-input { flex: 1 1 200px; border: 1px solid var(--d28-line); border-radius: 8px; padding: 9px 12px; font-size: 0.98rem; }\n.dangdai-b2l8-vocab-embed .d28-quiz-submit, .dangdai-b2l8-vocab-embed .d28-quiz-next, .dangdai-b2l8-vocab-embed .d28-quiz-retake { border: none; background: var(--d28-oxblood); color: #fff; border-radius: 20px; padding: 8px 18px; font-size: 0.9rem; cursor: pointer; }\n.dangdai-b2l8-vocab-embed .d28-quiz-submit:hover, .dangdai-b2l8-vocab-embed .d28-quiz-next:hover, .dangdai-b2l8-vocab-embed .d28-quiz-retake:hover { background: var(--d28-oxblood-dark); }\n.dangdai-b2l8-vocab-embed .d28-quiz-feedback { font-size: 0.95rem; margin: 0 0 10px; min-height: 1.4em; }\n.dangdai-b2l8-vocab-embed .d28-quiz-feedback.correct { color: #3d5c34; }\n.dangdai-b2l8-vocab-embed .d28-quiz-feedback.incorrect { color: var(--d28-oxblood-dark); }\n.dangdai-b2l8-vocab-embed .d28-quiz-score { text-align: center; }\n.dangdai-b2l8-vocab-embed .d28-quiz-score .d28-quiz-score-num { font-size: 2.2rem; font-weight: 700; color: var(--d28-oxblood-dark); display: block; margin-bottom: 8px; font-family: 'Bitter', serif; }\n<\/style>\n\n<p class=\"d28-support-note\"><em>A note before you start: I&#8217;d love for you to support the official textbook \u2014 this page is only meant as a review tool for people who already own a copy, not a replacement for it.<\/em><\/p>\n\n<p class=\"d28-lede\">\n<b><span class=\"lang-zh-TW\">\u7576\u4ee3\u4e2d\u6587\u8ab2\u7a0b<\/span><span class=\"lang-zh-CN\">\u5f53\u4ee3\u4e2d\u6587\u8bfe\u7a0b<\/span> Book 2 \u00b7 Lesson 8\u300c<span class=\"lang-zh-TW\">\u5b78\u529f\u592b<\/span><span class=\"lang-zh-CN\">\u5b66\u529f\u592b<\/span>\u300dLearning Kungfu<\/b> \u2014 every word from \u751f\u8a5e\u4e00 and \u751f\u8a5e\u4e8c (Vocabulary I &amp; II), including the Names and Phrases sections, transcribed from the textbook, with pinyin, part of speech, meaning, and an original example sentence for every word, segmented word by word.\n<\/p>\n\n<div class=\"d28-sec-eyebrow\">01 \u2014 VOCABULARY I \u751f\u8a5e\u4e00<\/div>\n<div id=\"d28-word-list-1\"><\/div>\n\n<div class=\"d28-sec-eyebrow\">02 \u2014 VOCABULARY II &amp; PHRASES \u751f\u8a5e\u4e8c\u3001\u8a5e\u7d44<\/div>\n<div id=\"d28-word-list-2\"><\/div>\n\n<div class=\"d28-sec-eyebrow\">03 \u2014 PUT IT TOGETHER \u5c0d\u8a71\u7df4\u7fd2<\/div>\n<p class=\"d28-dialogue-note\"><em>Note: this lesson&#8217;s own dialogue is copyrighted, so I wrote a short original conversation below between \u6771\u5065 and \u5b89\u540c at the gym talking about learning Tai Chi, using vocabulary from this lesson and earlier lessons, so you can see the words used together. For the real Lesson 8 dialogue, please use your own copy of the textbook.<\/em><\/p>\n<div class=\"d28-dialogue\" id=\"d28-dialogue\"><\/div>\n\n<div class=\"d28-sec-eyebrow\">04 \u2014 FLASHCARDS<\/div>\n<p class=\"d28-fc-hint\">Tap the card to flip it, then use the arrows to move through the deck.<\/p>\n<div class=\"d28-flashcard-wrap\">\n  <div class=\"d28-flashcard\" id=\"d28-flashcard\">\n    <div class=\"d28-fc-face d28-fc-front\" id=\"d28-fc-front\"><\/div>\n    <div class=\"d28-fc-face d28-fc-back\" id=\"d28-fc-back\"><\/div>\n  <\/div>\n<\/div>\n<div class=\"d28-flashcard-controls\">\n  <button class=\"d28-game-btn\" id=\"d28-fc-prev\">\u2039 Prev<\/button>\n  <span class=\"d28-game-status\" id=\"d28-fc-progress\">1 \/ 36<\/span>\n  <button class=\"d28-game-btn\" id=\"d28-fc-next\">Next \u203a<\/button>\n<\/div>\n\n<div class=\"d28-sec-eyebrow\">05 \u2014 MATCH IT<\/div>\n<p style=\"font-size:0.9rem;color:#6b5f52;margin:0 0 10px;\">Tap a Chinese word, then tap the English meaning that matches it. Get all 8 pairs to finish the round.<\/p>\n<div class=\"d28-game-bar\">\n  <button class=\"d28-game-btn\" id=\"d28-game-new\">New Round<\/button>\n  <span class=\"d28-game-status\" id=\"d28-game-status\">0 \/ 8 matched<\/span>\n<\/div>\n<div class=\"d28-game-board\">\n  <div class=\"d28-game-col\" id=\"d28-game-col-zh\"><\/div>\n  <div class=\"d28-game-col\" id=\"d28-game-col-en\"><\/div>\n<\/div>\n<div class=\"d28-game-win\" id=\"d28-game-win\">\ud83c\udf89 All matched! Nice work.<\/div>\n\n<div class=\"d28-sec-eyebrow\">06 \u2014 VOCABULARY QUIZ<\/div>\n<p style=\"font-size:0.9rem;color:#6b5f52;margin:0 0 10px;\">15 questions covering this lesson&#8217;s vocabulary \u2014 a mix of multiple choice and type-the-answer.<\/p>\n<div class=\"d28-quiz\" id=\"d28-quiz\"><\/div>\n\n<script>\n(function () {\n  var root = document.getElementById('dangdai-b2l8-vocab-embed-1');\n  if (!root) return;\n\n  var SPEAKER_SVG = '<svg viewBox=\"0 0 24 24\" width=\"12\" height=\"12\" fill=\"currentColor\" aria-hidden=\"true\">' +\n    '<path d=\"M7 4.5v15l13-7.5z\"><\/path>' +\n    '<\/svg>';\n\n  function W(t, s, p) { return { t: t, s: s, pt: p, ps: p }; }\n\n  function WD(t, s, pt, ps) { return { t: t, s: s, pt: pt, ps: ps }; }\n\n  var GROUPS = {\n    'd28-word-list-1': [\n      { t: \"\u529f\u592b\", s: \"\u529f\u592b\", p: \"g\u014dngf\u016b\", pos: \"N\", meaning: \"kungfu, martial arts\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u529f\u592b\",\"\u529f\u592b\",\"g\u014dngf\u016b\"), \"\u3002\"],\n        exEn: \"He is learning kungfu.\" },\n      { t: \"\u53eb\", s: \"\u53eb\", p: \"ji\u00e0o\", pos: \"V\", meaning: \"to call (for someone's attention)\",\n        ex: [W(\"\u4f60\",\"\u4f60\",\"N\u01d0\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u53eb\",\"\u53eb\",\"ji\u00e0o\"), W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u6559\",\"\u6559\",\"ji\u00e0o\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n        exEn: \"Can you ask the master to teach me?\" },\n      { t: \"\u898b\", s: \"\u89c1\", p: \"ji\u00e0n\", pos: \"Ptc\", meaning: \"accomplishment complete (in perception)\",\n        ex: [W(\"\u7df4\u7fd2\",\"\u7ec3\u4e60\",\"Li\u00e0nx\u00ed\"), W(\"\u4e45\",\"\u4e45\",\"ji\u01d4\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\uff0c\", W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u770b\u5f97\u898b\",\"\u770b\u5f97\u89c1\",\"k\u00e0ndeji\u00e0n\"), W(\"\u6548\u679c\",\"\u6548\u679c\",\"xi\u00e0ogu\u01d2\"), \"\u3002\"],\n        exEn: \"After practicing for a while, you can see the results.\" },\n      { t: \"\u63a8\", s: \"\u63a8\", p: \"tu\u012b\", pos: \"V\", meaning: \"to push\",\n        ex: [W(\"\u7df4\u7fd2\",\"\u7ec3\u4e60\",\"Li\u00e0nx\u00ed\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u63a8\",\"\u63a8\",\"tu\u012b\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u63a8\",\"\u63a8\",\"tu\u012b\"), W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), \"\u3002\"],\n        exEn: \"You can push through these movements while practicing.\" },\n      { t: \"\u9ad4\u80b2\u9928\", s: \"\u4f53\u80b2\u9986\", p: \"t\u01d0y\u00f9gu\u01cen\", pos: \"N\", meaning: \"gym\",\n        ex: [W(\"\u6211\u5011\",\"\u6211\u4eec\",\"W\u01d2men\"), W(\"\u660e\u5929\",\"\u660e\u5929\",\"m\u00edngti\u0101n\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u9ad4\u80b2\u9928\",\"\u4f53\u80b2\u9986\",\"t\u01d0y\u00f9gu\u01cen\"), \"\u3002\"],\n        exEn: \"We are going to the gym tomorrow.\" },\n      { t: \"\u592a\u6975\u62f3\", s: \"\u592a\u6781\u62f3\", p: \"t\u00e0ij\u00edqu\u00e1n\", pos: \"N\", meaning: \"Tai Chi, shadow boxing\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), \"\u3002\"],\n        exEn: \"He is practicing Tai Chi.\" },\n      { t: \"\u5e2b\u7236\", s: \"\u5e08\u7236\", p: \"sh\u012bf\u00f9\", pos: \"N\", meaning: \"(kungfu or other skill) master\",\n        ex: [W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"Sh\u012bf\u00f9\"), W(\"\u8aaa\",\"\u8bf4\",\"shu\u014d\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u9032\u6b65\",\"\u8fdb\u6b65\",\"j\u00ecnb\u00f9\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"The master said I have improved.\" },\n      { t: \"\u5929\u5206\", s: \"\u5929\u5206\", p: \"ti\u0101nf\u00e8n\", pos: \"N\", meaning: \"gift, talent\",\n        ex: [W(\"\u4f60\",\"\u4f60\",\"N\u01d0\"), W(\"\u771f\",\"\u771f\",\"zh\u0113n\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u5929\u5206\",\"\u5929\u5206\",\"ti\u0101nf\u00e8n\"), \"\u3002\"],\n        exEn: \"You really have talent.\" },\n      { t: \"\u61c2\", s: \"\u61c2\", p: \"d\u01d2ng\", pos: \"Vpt\", meaning: \"to understand, to comprehend\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u6bd4\u8f03\",\"\u6bd4\u8f83\",\"b\u01d0ji\u00e0o\"), W(\"\u61c2\",\"\u61c2\",\"d\u01d2ng\"), W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"I understand these movements better now.\" },\n      { t: \"\u8d77\u4f86\", s: \"\u8d77\u6765\", p: \"q\u01d0l\u00e1i\", pos: \"Vp\", meaning: \"to wake up\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u6bcf\u5929\",\"\u6bcf\u5929\",\"m\u011biti\u0101n\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u65e9\",\"\u65e9\",\"z\u01ceo\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u8d77\u4f86\",\"\u8d77\u6765\",\"q\u01d0l\u00e1i\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"He gets up very early every day.\" },\n      { t: \"\u52d5\u4f5c\", s: \"\u52a8\u4f5c\", p: \"d\u00f2ngzu\u00f2\", pos: \"N\", meaning: \"movement\",\n        ex: [W(\"\u9019\",\"\u8fd9\",\"Zh\u00e8\"), W(\"\u4e9b\",\"\u4e9b\",\"xi\u0113\"), W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u5bb9\u6613\",\"\u5bb9\u6613\",\"r\u00f3ngy\u00ec\"), \"\u3002\"],\n        exEn: \"These movements are not easy.\" },\n      { t: \"\u8f15\", s: \"\u8f7b\", p: \"q\u012bng\", pos: \"Vs\", meaning: \"light, effortless, gentle\",\n        ex: [W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"D\u00f2ngzu\u00f2\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u8d8a\",\"\u8d8a\",\"yu\u00e8\"), W(\"\u4f86\",\"\u6765\",\"l\u00e1i\"), W(\"\u8d8a\",\"\u8d8a\",\"yu\u00e8\"), W(\"\u8f15\",\"\u8f7b\",\"q\u012bng\"), \"\u3002\"],\n        exEn: \"The movements will become more and more effortless.\" },\n      { t: \"\u817f\", s: \"\u817f\", p: \"tu\u01d0\", pos: \"N\", meaning: \"leg\",\n        ex: [W(\"\u7df4\",\"\u7ec3\",\"Li\u00e0n\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u8b93\",\"\u8ba9\",\"r\u00e0ng\"), W(\"\u817f\",\"\u817f\",\"tu\u01d0\"), W(\"\u66f4\",\"\u66f4\",\"g\u00e8ng\"), W(\"\u6709\u529b\",\"\u6709\u529b\",\"y\u01d2ul\u00ec\"), \"\u3002\"],\n        exEn: \"Practicing Tai Chi can make your legs stronger.\" },\n      { t: \"\u4e86\", s: \"\u4e86\", p: \"li\u01ceo\", pos: \"Ptc\", meaning: \"capability complement\",\n        ex: [W(\"\u9019\",\"\u8fd9\",\"Zh\u00e8\"), W(\"\u9ebc\",\"\u4e48\",\"me\"), W(\"\u591a\",\"\u591a\",\"du\u014d\"), W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), \"\uff0c\", W(\"\u4ed6\",\"\u4ed6\",\"t\u0101\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\", W(\"\u4ed6\",\"\u4ed6\",\"t\u0101\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u4e86\",\"\u4e86\",\"li\u01ceo\"), \"\u3002\"],\n        exEn: \"So many movements \u2014 can he learn them? He can't.\" },\n      { t: \"\u4e0b\u53bb\", s: \"\u4e0b\u53bb\", p: \"xi\u00e0q\u00f9\", pos: \"Ptc\", meaning: \"a temporal particle meaning to continue with an action\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u8dd1\",\"\u8dd1\",\"p\u01ceo\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u4e0b\u53bb\",\"\u4e0b\u53bb\",\"xi\u00e0q\u00f9\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"He can't keep running.\" },\n      { t: \"\u8208\u8da3\", s: \"\u5174\u8da3\", p: \"x\u00ecngq\u00f9\", pos: \"N\", meaning: \"interest\",\n        ex: [W(\"\u4f60\",\"\u4f60\",\"N\u01d0\"), W(\"\u5c0d\",\"\u5bf9\",\"du\u00ec\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u771f\",\"\u771f\",\"zh\u0113n\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u8208\u8da3\",\"\u5174\u8da3\",\"x\u00ecngq\u00f9\"), \"\u3002\"],\n        exEn: \"You are really interested in Tai Chi.\" },\n      { t: \"\u501f\", s: \"\u501f\", p: \"ji\u00e8\", pos: \"V\", meaning: \"to borrow\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u60f3\",\"\u60f3\",\"xi\u01ceng\"), W(\"\u501f\",\"\u501f\",\"ji\u00e8\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u66f8\",\"\u4e66\",\"sh\u016b\"), \"\u3002\"],\n        exEn: \"I want to borrow your book.\" },\n      { t: \"\u6709\u5929\u5206\", s: \"\u6709\u5929\u5206\", p: \"y\u01d2u ti\u0101nf\u00e8n\", pos: \"Phrase\", meaning: \"to be gifted, talented\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u6709\u5929\u5206\",\"\u6709\u5929\u5206\",\"y\u01d2u ti\u0101nf\u00e8n\"), \"\u3002\"],\n        exEn: \"He is very gifted at Tai Chi.\" },\n      { t: \"\u5b78\u6703\", s: \"\u5b66\u4f1a\", p: \"xu\u00e9 hu\u00ec\", pos: \"Phrase\", meaning: \"to learn, to master\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u5e0c\u671b\",\"\u5e0c\u671b\",\"x\u012bw\u00e0ng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u5b78\u6703\",\"\u5b66\u4f1a\",\"xu\u00e9 hu\u00ec\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), \"\u3002\"],\n        exEn: \"I hope you can also learn Tai Chi.\" },\n      { t: \"\u8d77\u4e0d\u4f86\", s: \"\u8d77\u4e0d\u6765\", p: \"q\u01d0 b\u00f9 l\u00e1i\", pos: \"Phrase\", meaning: \"can't get up (from bed)\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u4eca\u5929\",\"\u4eca\u5929\",\"j\u012bnti\u0101n\"), W(\"\u65e9\u4e0a\",\"\u65e9\u4e0a\",\"z\u01ceosh\u00e0ng\"), W(\"\u8d77\u4e0d\u4f86\",\"\u8d77\u4e0d\u6765\",\"q\u01d0 b\u00f9 l\u00e1i\"), \"\u3002\"],\n        exEn: \"He couldn't get up this morning.\" },\n      { t: \"\u8d70\u4e0d\u4e86\u8def\", s: \"\u8d70\u4e0d\u4e86\u8def\", p: \"z\u01d2u b\u00f9 li\u01ceo l\u00f9\", pos: \"Phrase\", meaning: \"can't walk\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u817f\",\"\u817f\",\"tu\u01d0\"), W(\"\u75db\",\"\u75db\",\"t\u00f2ng\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u8d70\u4e0d\u4e86\u8def\",\"\u8d70\u4e0d\u4e86\u8def\",\"z\u01d2u b\u00f9 li\u01ceo l\u00f9\"), \"\u3002\"],\n        exEn: \"His legs hurt so much he can't walk.\" }\n    ],\n    'd28-word-list-2': [\n      { t: \"\u597d\u8655\", s: \"\u597d\u5904\", p: \"h\u01ceoch\u00f9\", pos: \"N\", meaning: \"benefit\",\n        ex: [W(\"\u7df4\",\"\u7ec3\",\"Li\u00e0n\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u597d\u8655\",\"\u597d\u5904\",\"h\u01ceoch\u00f9\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u591a\",\"\u591a\",\"du\u014d\"), \"\u3002\"],\n        exEn: \"There are many benefits to practicing Tai Chi.\" },\n      { t: \"\u62b1\u6028\", s: \"\u62b1\u6028\", p: \"b\u00e0oyu\u00e0n\", pos: \"Vi\", meaning: \"to complain\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u5e38\",\"\u5e38\",\"ch\u00e1ng\"), W(\"\u8ddf\",\"\u8ddf\",\"g\u0113n\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u62b1\u6028\",\"\u62b1\u6028\",\"b\u00e0oyu\u00e0n\"), W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u592a\",\"\u592a\",\"t\u00e0i\"), W(\"\u56b4\u683c\",\"\u4e25\u683c\",\"y\u00e1ng\u00e9\"), \"\u3002\"],\n        exEn: \"He often complains to me that the master is too strict.\" },\n      { t: \"\u516c\u5c3a\", s: \"\u516c\u5c3a\", p: \"g\u014dngch\u01d0\", pos: \"N\", meaning: \"meter\",\n        ex: [W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"Sh\u012bf\u00f9\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u6211\u5011\",\"\u6211\u4eec\",\"w\u01d2men\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u8dd1\",\"\u8dd1\",\"p\u01ceo\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u5343\",\"\u5343\",\"qi\u0101n\"), W(\"\u516c\u5c3a\",\"\u516c\u5c3a\",\"g\u014dngch\u01d0\"), \"\u3002\"],\n        exEn: \"The master has us run a thousand meters first.\" },\n      { t: \"\u7e3d\u662f\", s: \"\u603b\u662f\", p: \"z\u01d2ngsh\u00ec\", pos: \"Adv\", meaning: \"always, invariably\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u7e3d\u662f\",\"\u603b\u662f\",\"z\u01d2ngsh\u00ec\"), W(\"\u6700\",\"\u6700\",\"zu\u00ec\"), W(\"\u5f8c\",\"\u540e\",\"h\u00f2u\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ed\"), W(\"\u500b\",\"\u4e2a\",\"ge\"), W(\"\u8dd1\u5b8c\",\"\u8dd1\u5b8c\",\"p\u01ceow\u00e1n\"), \"\u3002\"],\n        exEn: \"He is always the last one to finish running.\" },\n      { t: \"\u5b8c\", s: \"\u5b8c\", p: \"w\u00e1n\", pos: \"Ptc\", meaning: \"phase marker for 'completion', to finish...\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u8dd1\",\"\u8dd1\",\"p\u01ceo\"), W(\"\u5b8c\",\"\u5b8c\",\"w\u00e1n\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u5343\",\"\u5343\",\"qi\u0101n\"), W(\"\u516c\u5c3a\",\"\u516c\u5c3a\",\"g\u014dngch\u01d0\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"He finished running a thousand meters.\" },\n      { t: \"\u9ad4\u529b\", s: \"\u4f53\u529b\", p: \"t\u01d0l\u00ec\", pos: \"N\", meaning: \"physical strength\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u90a3\",\"\u90a3\",\"n\u00e0\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u9ad4\u529b\",\"\u4f53\u529b\",\"t\u01d0l\u00ec\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), \"\u3002\"],\n        exEn: \"I had poor physical strength back then.\" },\n      { t: \"\u6574\u5929\", s: \"\u6574\u5929\", p: \"zh\u011bngti\u0101n\", pos: \"N\", meaning: \"an entire day\",\n        ex: [W(\"\u6574\u5929\",\"\u6574\u5929\",\"Zh\u011bngti\u0101n\"), W(\"\u4e0a\",\"\u4e0a\",\"sh\u00e0ng\"), W(\"\u8ab2\",\"\u8bfe\",\"k\u00e8\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u89ba\u5f97\",\"\u89c9\u5f97\",\"ju\u00e9de\"), W(\"\u7d2f\",\"\u7d2f\",\"l\u00e8i\"), \"\u3002\"],\n        exEn: \"You won't feel tired even after a whole day of classes.\" },\n      { t: \"\u7cbe\u795e\", s: \"\u7cbe\u795e\", p: \"j\u012bngsh\u00e9n\", pos: \"N\", meaning: \"spirit, energy\",\n        ex: [W(\"\u65e9\u4e0a\",\"\u65e9\u4e0a\",\"Z\u01ceosh\u00e0ng\"), W(\"\u904b\u52d5\",\"\u8fd0\u52a8\",\"y\u00f9nd\u00f2ng\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u8b93\",\"\u8ba9\",\"r\u00e0ng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u6574\u5929\",\"\u6574\u5929\",\"zh\u011bngti\u0101n\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u7cbe\u795e\",\"\u7cbe\u795e\",\"j\u012bngsh\u00e9n\"), \"\u3002\"],\n        exEn: \"Exercising in the morning can keep you energetic all day.\" },\n      { t: \"\u672c\u4f86\", s: \"\u672c\u6765\", p: \"b\u011bnl\u00e1i\", pos: \"Adv\", meaning: \"originally\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u672c\u4f86\",\"\u672c\u6765\",\"b\u011bnl\u00e1i\"), W(\"\u4ee5\u70ba\",\"\u4ee5\u4e3a\",\"y\u01d0w\u00e9i\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u529f\u592b\",\"\u529f\u592b\",\"g\u014dngf\u016b\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u5f71\u97ff\",\"\u5f71\u54cd\",\"y\u01d0ngxi\u01ceng\"), W(\"\u5ff5\",\"\u5ff5\",\"ni\u00e0n\"), W(\"\u66f8\",\"\u4e66\",\"sh\u016b\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u9593\",\"\u65f6\u95f4\",\"sh\u00edji\u0101n\"), \"\u3002\"],\n        exEn: \"I originally thought learning kungfu would take away from studying time.\" },\n      { t: \"\u53ef\u80fd\", s: \"\u53ef\u80fd\", p: \"k\u011bn\u00e9ng\", pos: \"Vaux\", meaning: \"maybe, probably\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u53ef\u80fd\",\"\u53ef\u80fd\",\"k\u011bn\u00e9ng\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u65e9\",\"\u65e9\",\"z\u01ceo\"), W(\"\u4e00\u9ede\",\"\u4e00\u70b9\",\"y\u00ecdi\u01cen\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u9ad4\u80b2\u9928\",\"\u4f53\u80b2\u9986\",\"t\u01d0y\u00f9gu\u01cen\"), \"\u3002\"],\n        exEn: \"I might also go to the gym a bit earlier.\" },\n      { t: \"\u56de\", s: \"\u56de\", p: \"hu\u00ed\", pos: \"V\", meaning: \"to return to\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u6bcf\u5929\",\"\u6bcf\u5929\",\"m\u011biti\u0101n\"), W(\"\u4e0b\u8ab2\",\"\u4e0b\u8bfe\",\"xi\u00e0k\u00e8\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u56de\",\"\u56de\",\"hu\u00ed\"), W(\"\u5bbf\u820d\",\"\u5bbf\u820d\",\"s\u00f9sh\u00e8\"), W(\"\u5ff5\",\"\u5ff5\",\"ni\u00e0n\"), W(\"\u66f8\",\"\u4e66\",\"sh\u016b\"), \"\u3002\"],\n        exEn: \"I go back to the dorm to study every day after class.\" },\n      { t: \"\u5f71\u97ff\", s: \"\u5f71\u54cd\", p: \"y\u01d0ngxi\u01ceng\", pos: \"V\", meaning: \"to influence, to interfere with\",\n        ex: [W(\"\u7df4\u7fd2\",\"\u7ec3\u4e60\",\"Li\u00e0nx\u00ed\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u5f71\u97ff\",\"\u5f71\u54cd\",\"y\u01d0ngxi\u01ceng\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6210\u7e3e\",\"\u6210\u7ee9\",\"ch\u00e9ngj\u00ec\"), \"\u3002\"],\n        exEn: \"Practicing doesn't affect my grades.\" },\n      { t: \"\u8eab\u9ad4\", s: \"\u8eab\u4f53\", p: \"sh\u0113nt\u01d0\", pos: \"N\", meaning: \"body\",\n        ex: [W(\"\u8eab\u9ad4\",\"\u8eab\u4f53\",\"Sh\u0113nt\u01d0\"), W(\"\u66f4\",\"\u66f4\",\"g\u00e8ng\"), W(\"\u5065\u5eb7\",\"\u5065\u5eb7\",\"ji\u00e0nk\u0101ng\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"My body has become healthier.\" },\n      { t: \"\u7df4\", s: \"\u7ec3\", p: \"li\u00e0n\", pos: \"V\", meaning: \"to practice, to train, to drill\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u6bcf\u5929\",\"\u6bcf\u5929\",\"m\u011biti\u0101n\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), \"\u3002\"],\n        exEn: \"I practice every day.\" },\n      { t: \"\u60f3\u8d77\", s: \"\u60f3\u8d77\", p: \"xi\u01cengq\u01d0\", pos: \"Phrase\", meaning: \"to recall\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u60f3\u8d77\",\"\u60f3\u8d77\",\"xi\u01cengq\u01d0\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u525b\",\"\u521a\",\"g\u0101ng\"), W(\"\u958b\u59cb\",\"\u5f00\u59cb\",\"k\u0101ish\u01d0\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u529f\u592b\",\"\u529f\u592b\",\"g\u014dngf\u016b\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), \"\u3002\"],\n        exEn: \"I remember when you first started learning kungfu.\" }\n    ]\n  };\n\n  var DIALOGUE = [\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u5b89\u540c\",\"\u5b89\u540c\",\"\u0100nt\u00f3ng\"), \"\uff0c\", W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u4eca\u5929\",\"\u4eca\u5929\",\"j\u012bnti\u0101n\"), W(\"\u600e\u9ebc\",\"\u600e\u4e48\",\"z\u011bnme\"), W(\"\u9019\u9ebc\",\"\u8fd9\u4e48\",\"zh\u00e8me\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u7cbe\u795e\",\"\u7cbe\u795e\",\"j\u012bngsh\u00e9n\"), \"\uff1f\"],\n      en: \"Antong, why are you so energetic today?\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u56e0\u70ba\",\"\u56e0\u4e3a\",\"Y\u012bnw\u00e8i\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u6628\u5929\",\"\u6628\u5929\",\"zu\u00f3ti\u0101n\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), \"\uff0c\", W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u8aaa\",\"\u8bf4\",\"shu\u014d\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u9032\u6b65\",\"\u8fdb\u6b65\",\"j\u00ecnb\u00f9\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n      en: \"Because my Tai Chi practice went really well yesterday \u2014 the master said I've improved.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u770b\u5f97\u51fa\u4f86\",\"\u770b\u5f97\u51fa\u6765\",\"K\u00e0ndech\u016bl\u00e1i\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u5c0d\",\"\u5bf9\",\"du\u00ec\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u771f\",\"\u771f\",\"zh\u0113n\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u8208\u8da3\",\"\u5174\u8da3\",\"x\u00ecngq\u00f9\"), \"\u3002\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u60f3\u8d77\",\"\u60f3\u8d77\",\"xi\u01cengq\u01d0\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u525b\",\"\u521a\",\"g\u0101ng\"), W(\"\u958b\u59cb\",\"\u5f00\u59cb\",\"k\u0101ish\u01d0\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u529f\u592b\",\"\u529f\u592b\",\"g\u014dngf\u016b\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), \"\uff0c\", W(\"\u5e38\u5e38\",\"\u5e38\u5e38\",\"ch\u00e1ngch\u00e1ng\"), W(\"\u62b1\u6028\",\"\u62b1\u6028\",\"b\u00e0oyu\u00e0n\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u8dd1\",\"\u8dd1\",\"p\u01ceo\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u5343\",\"\u5343\",\"qi\u0101n\"), W(\"\u516c\u5c3a\",\"\u516c\u5c3a\",\"g\u014dngch\u01d0\"), \"\u3002\"],\n      en: \"I can tell you're really interested in Tai Chi. I remember when you first started learning kungfu, you used to complain about having to run a thousand meters first.\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u5c0d\",\"\u5bf9\",\"Du\u00ec\"), W(\"\u554a\",\"\u554a\",\"a\"), \"\uff0c\", W(\"\u90a3\",\"\u90a3\",\"n\u00e0\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u9ad4\u529b\",\"\u4f53\u529b\",\"t\u01d0l\u00ec\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), \"\uff0c\", W(\"\u7e3d\u662f\",\"\u603b\u662f\",\"z\u01d2ngsh\u00ec\"), W(\"\u6700\",\"\u6700\",\"zu\u00ec\"), W(\"\u5f8c\",\"\u540e\",\"h\u00f2u\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ed\"), W(\"\u500b\",\"\u4e2a\",\"ge\"), W(\"\u8dd1\u5b8c\",\"\u8dd1\u5b8c\",\"p\u01ceow\u00e1n\"), \"\uff0c\", W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u8dd1\",\"\u8dd1\",\"p\u01ceo\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u4e0b\u53bb\",\"\u4e0b\u53bb\",\"xi\u00e0q\u00f9\"), \"\u3002\"],\n      en: \"Yeah, back then my stamina was bad \u2014 I was always the last one to finish, and sometimes I couldn't even keep running.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u73fe\u5728\",\"\u73b0\u5728\",\"Xi\u00e0nz\u00e0i\"), W(\"\u5462\",\"\u5462\",\"ne\"), \"\uff1f\"],\n      en: \"What about now?\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u73fe\u5728\",\"\u73b0\u5728\",\"Xi\u00e0nz\u00e0i\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u4e00\u6a23\",\"\u4e00\u6837\",\"y\u00edy\u00e0ng\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\uff0c\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u8dd1\u5b8c\",\"\u8dd1\u5b8c\",\"p\u01ceow\u00e1n\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u5343\",\"\u5343\",\"qi\u0101n\"), W(\"\u516c\u5c3a\",\"\u516c\u5c3a\",\"g\u014dngch\u01d0\"), \"\uff0c\", W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u89ba\u5f97\",\"\u89c9\u5f97\",\"ju\u00e9de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u7d2f\",\"\u7d2f\",\"l\u00e8i\"), \"\u3002\"],\n      en: \"It's different now \u2014 I can finish a thousand meters and I don't even feel very tired.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u4f60\",\"\u4f60\",\"N\u01d0\"), W(\"\u771f\",\"\u771f\",\"zh\u0113n\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u5929\u5206\",\"\u5929\u5206\",\"ti\u0101nf\u00e8n\"), \"\uff0c\", W(\"\u9019\u9ebc\",\"\u8fd9\u4e48\",\"zh\u00e8me\"), W(\"\u5feb\",\"\u5feb\",\"ku\u00e0i\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u5b78\u6703\",\"\u5b66\u4f1a\",\"xu\u00e9 hu\u00ec\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u9019\u9ebc\",\"\u8fd9\u4e48\",\"zh\u00e8me\"), W(\"\u591a\",\"\u591a\",\"du\u014d\"), W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), \"\u3002\"],\n      en: \"You really have talent, learning so many movements so quickly.\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u8b1d\u8b1d\",\"\u8c22\u8c22\",\"Xi\u00e8xie\"), \"\uff0c\", W(\"\u4e0d\u904e\",\"\u4e0d\u8fc7\",\"b\u00fagu\u00f2\"), W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u8aaa\",\"\u8bf4\",\"shu\u014d\"), W(\"\u5929\u5206\",\"\u5929\u5206\",\"ti\u0101nf\u00e8n\"), W(\"\u4e0d\u662f\",\"\u4e0d\u662f\",\"b\u00fash\u00ec\"), W(\"\u6700\",\"\u6700\",\"zu\u00ec\"), W(\"\u91cd\u8981\",\"\u91cd\u8981\",\"zh\u00f2ngy\u00e0o\"), W(\"\u7684\",\"\u7684\",\"de\"), \"\uff0c\", W(\"\u7df4\u7fd2\",\"\u7ec3\u4e60\",\"li\u00e0nx\u00ed\"), W(\"\u624d\",\"\u624d\",\"c\u00e1i\"), W(\"\u91cd\u8981\",\"\u91cd\u8981\",\"zh\u00f2ngy\u00e0o\"), \"\uff0c\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u6bcf\u5929\",\"\u6bcf\u5929\",\"m\u011biti\u0101n\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), \"\uff0c\", W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u4e45\",\"\u4e45\",\"ji\u01d4\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\uff0c\", W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u770b\u5f97\u898b\",\"\u770b\u5f97\u89c1\",\"k\u00e0ndeji\u00e0n\"), W(\"\u6548\u679c\",\"\u6548\u679c\",\"xi\u00e0ogu\u01d2\"), \"\uff0c\", W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u6bd4\u8f03\",\"\u6bd4\u8f83\",\"b\u01d0ji\u00e0o\"), W(\"\u61c2\",\"\u61c2\",\"d\u01d2ng\"), W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n      en: \"Thanks, but the master says talent isn't the most important thing \u2014 practice is what matters. I practice every day, and after doing it for a while, you can see the results and understand the movements better.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u60f3\",\"\u60f3\",\"xi\u01ceng\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), \"\uff0c\", W(\"\u53ef\u662f\",\"\u53ef\u662f\",\"k\u011bsh\u00ec\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u6015\",\"\u6015\",\"p\u00e0\"), W(\"\u81ea\u5df1\",\"\u81ea\u5df1\",\"z\u00ecj\u01d0\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), \"\u3002\"],\n      en: \"I want to learn too, but I'm afraid I won't be able to learn it well.\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u4e0d\u6703\",\"\u4e0d\u4f1a\",\"B\u00fahu\u00ec\"), W(\"\u7684\",\"\u7684\",\"de\"), \"\uff0c\", W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u8aaa\",\"\u8bf4\",\"shu\u014d\"), W(\"\u53ea\u8981\",\"\u53ea\u8981\",\"zh\u01d0y\u00e0o\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u9858\u610f\",\"\u613f\u610f\",\"yu\u00e0ny\u00ec\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), \"\uff0c\", W(\"\u52d5\u4f5c\",\"\u52a8\u4f5c\",\"d\u00f2ngzu\u00f2\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u8d8a\",\"\u8d8a\",\"yu\u00e8\"), W(\"\u4f86\",\"\u6765\",\"l\u00e1i\"), W(\"\u8d8a\",\"\u8d8a\",\"yu\u00e8\"), W(\"\u8f15\",\"\u8f7b\",\"q\u012bng\"), \"\uff0c\", W(\"\u8eab\u9ad4\",\"\u8eab\u4f53\",\"sh\u0113nt\u01d0\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u8d8a\",\"\u8d8a\",\"yu\u00e8\"), W(\"\u4f86\",\"\u6765\",\"l\u00e1i\"), W(\"\u8d8a\",\"\u8d8a\",\"yu\u00e8\"), W(\"\u5065\u5eb7\",\"\u5065\u5eb7\",\"ji\u00e0nk\u0101ng\"), \"\u3002\"],\n      en: \"It'll be fine \u2014 the master says as long as you're willing to practice, the movements will get easier and easier, and your body will get healthier and healthier.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u90a3\",\"\u90a3\",\"N\u00e0\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u5c0d\",\"\u5bf9\",\"du\u00ec\"), W(\"\u8eab\u9ad4\",\"\u8eab\u4f53\",\"sh\u0113nt\u01d0\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u4ec0\u9ebc\",\"\u4ec0\u4e48\",\"sh\u00e9nme\"), W(\"\u597d\u8655\",\"\u597d\u5904\",\"h\u01ceoch\u00f9\"), \"\uff1f\"],\n      en: \"So what are the benefits of practicing Tai Chi for the body?\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u597d\u8655\",\"\u597d\u5904\",\"H\u01ceoch\u00f9\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u591a\",\"\u591a\",\"du\u014d\"), \"\uff0c\", W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u8b93\",\"\u8ba9\",\"r\u00e0ng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u817f\",\"\u817f\",\"tu\u01d0\"), W(\"\u66f4\",\"\u66f4\",\"g\u00e8ng\"), W(\"\u6709\u529b\",\"\u6709\u529b\",\"y\u01d2ul\u00ec\"), \"\uff0c\", W(\"\u8eab\u9ad4\",\"\u8eab\u4f53\",\"sh\u0113nt\u01d0\"), W(\"\u66f4\",\"\u66f4\",\"g\u00e8ng\"), W(\"\u5065\u5eb7\",\"\u5065\u5eb7\",\"ji\u00e0nk\u0101ng\"), \"\uff0c\", W(\"\u800c\u4e14\",\"\u800c\u4e14\",\"\u00e9rqi\u011b\"), W(\"\u6574\u5929\",\"\u6574\u5929\",\"zh\u011bngti\u0101n\"), W(\"\u4e0a\",\"\u4e0a\",\"sh\u00e0ng\"), W(\"\u8ab2\",\"\u8bfe\",\"k\u00e8\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u89ba\u5f97\",\"\u89c9\u5f97\",\"ju\u00e9de\"), W(\"\u7d2f\",\"\u7d2f\",\"l\u00e8i\"), \"\u3002\"],\n      en: \"Lots of benefits \u2014 it makes your legs stronger, your body healthier, and you won't feel tired even after a whole day of classes.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u807d\u8d77\u4f86\",\"\u542c\u8d77\u6765\",\"T\u012bngq\u01d0l\u00e1i\"), W(\"\u771f\",\"\u771f\",\"zh\u0113n\"), W(\"\u4e0d\u932f\",\"\u4e0d\u9519\",\"b\u00facu\u00f2\"), \"\uff0c\", W(\"\u672c\u4f86\",\"\u672c\u6765\",\"b\u011bnl\u00e1i\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u4ee5\u70ba\",\"\u4ee5\u4e3a\",\"y\u01d0w\u00e9i\"), W(\"\u5b78\",\"\u5b66\",\"xu\u00e9\"), W(\"\u529f\u592b\",\"\u529f\u592b\",\"g\u014dngf\u016b\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u5f71\u97ff\",\"\u5f71\u54cd\",\"y\u01d0ngxi\u01ceng\"), W(\"\u5ff5\",\"\u5ff5\",\"ni\u00e0n\"), W(\"\u66f8\",\"\u4e66\",\"sh\u016b\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u9593\",\"\u65f6\u95f4\",\"sh\u00edji\u0101n\"), \"\u3002\"],\n      en: \"That sounds great \u2014 I originally thought learning kungfu would eat into my study time.\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u4e0d\u6703\",\"\u4e0d\u4f1a\",\"B\u00fahu\u00ec\"), \"\uff0c\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u6bcf\u5929\",\"\u6bcf\u5929\",\"m\u011biti\u0101n\"), W(\"\u4e0b\u8ab2\",\"\u4e0b\u8bfe\",\"xi\u00e0k\u00e8\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u56de\",\"\u56de\",\"hu\u00ed\"), W(\"\u5bbf\u820d\",\"\u5bbf\u820d\",\"s\u00f9sh\u00e8\"), W(\"\u5ff5\",\"\u5ff5\",\"ni\u00e0n\"), W(\"\u66f8\",\"\u4e66\",\"sh\u016b\"), \"\uff0c\", W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u5b8c\",\"\u5b8c\",\"w\u00e1n\"), W(\"\u529f\u8ab2\",\"\u529f\u8bfe\",\"g\u014dngk\u00e8\"), W(\"\u624d\",\"\u624d\",\"c\u00e1i\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u7df4\u7fd2\",\"\u7ec3\u4e60\",\"li\u00e0nx\u00ed\"), \"\u3002\", W(\"\u96d6\u7136\",\"\u867d\u7136\",\"su\u012br\u00e1n\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u8b93\",\"\u8ba9\",\"r\u00e0ng\"), W(\"\u6211\u5011\",\"\u6211\u4eec\",\"w\u01d2men\"), W(\"\u8dd1\",\"\u8dd1\",\"p\u01ceo\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u4e45\",\"\u4e45\",\"ji\u01d4\"), \"\uff0c\", W(\"\u817f\",\"\u817f\",\"tu\u01d0\"), W(\"\u75db\",\"\u75db\",\"t\u00f2ng\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u8d70\u4e0d\u4e86\u8def\",\"\u8d70\u4e0d\u4e86\u8def\",\"z\u01d2u b\u00f9 li\u01ceo l\u00f9\"), \"\uff0c\", W(\"\u4e0d\u904e\",\"\u4e0d\u8fc7\",\"b\u00fagu\u00f2\"), W(\"\u7df4\",\"\u7ec3\",\"li\u00e0n\"), W(\"\u5b8c\",\"\u5b8c\",\"w\u00e1n\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u89ba\u5f97\",\"\u89c9\u5f97\",\"ju\u00e9de\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u503c\u5f97\",\"\u503c\u5f97\",\"zh\u00edde\"), \"\u3002\"],\n      en: \"No \u2014 every day after class I go back to the dorm to study, and only practice after finishing my homework. Although sometimes the master has us run for a long time, so much that my legs hurt too much to walk, once I'm done practicing I feel it's really worth it.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u597d\",\"\u597d\",\"H\u01ceo\"), \"\uff0c\", W(\"\u90a3\",\"\u90a3\",\"n\u00e0\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u8acb\",\"\u8bf7\",\"q\u01d0ng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), W(\"\u6559\",\"\u6559\",\"ji\u00e0o\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"OK, then can you ask your master to teach me?\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"K\u011by\u01d0\"), W(\"\u554a\",\"\u554a\",\"a\"), \"\uff0c\", W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u660e\u5929\",\"\u660e\u5929\",\"m\u00edngti\u0101n\"), W(\"\u516d\",\"\u516d\",\"li\u00f9\"), W(\"\u9ede\",\"\u70b9\",\"di\u01cen\"), W(\"\u8ddf\",\"\u8ddf\",\"g\u0113n\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u4e00\u8d77\",\"\u4e00\u8d77\",\"y\u00ecq\u01d0\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u9ad4\u80b2\u9928\",\"\u4f53\u80b2\u9986\",\"t\u01d0y\u00f9gu\u01cen\"), \"\uff0c\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u4ecb\u7d39\",\"\u4ecb\u7ecd\",\"ji\u00e8sh\u00e0o\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u8a8d\u8b58\",\"\u8ba4\u8bc6\",\"r\u00e8nsh\u00ec\"), W(\"\u5e2b\u7236\",\"\u5e08\u7236\",\"sh\u012bf\u00f9\"), \"\u3002\"],\n      en: \"Sure, come with me to the gym at six tomorrow, and I'll introduce you to the master.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u516d\",\"\u516d\",\"Li\u00f9\"), W(\"\u9ede\",\"\u70b9\",\"di\u01cen\"), W(\"\u592a\",\"\u592a\",\"t\u00e0i\"), W(\"\u65e9\",\"\u65e9\",\"z\u01ceo\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u5427\",\"\u5427\",\"ba\"), \"\uff01\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u6015\",\"\u6015\",\"p\u00e0\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u7761\",\"\u7761\",\"shu\u00ec\"), W(\"\u904e\",\"\u8fc7\",\"gu\u00f2\"), W(\"\u982d\",\"\u5934\",\"t\u00f3u\"), \"\u3002\"],\n      en: \"Six is too early! I'm afraid I'll oversleep.\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u4e0d\",\"\u4e0d\",\"B\u00f9\"), W(\"\u592a\",\"\u592a\",\"t\u00e0i\"), W(\"\u65e9\",\"\u65e9\",\"z\u01ceo\"), \"\uff0c\", W(\"\u65e9\u4e0a\",\"\u65e9\u4e0a\",\"z\u01ceosh\u00e0ng\"), W(\"\u904b\u52d5\",\"\u8fd0\u52a8\",\"y\u00f9nd\u00f2ng\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u8b93\",\"\u8ba9\",\"r\u00e0ng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u6574\u5929\",\"\u6574\u5929\",\"zh\u011bngti\u0101n\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u7cbe\u795e\",\"\u7cbe\u795e\",\"j\u012bngsh\u00e9n\"), \"\u3002\"],\n      en: \"Not too early \u2014 exercising in the morning can keep you energetic all day.\" },\n    { speakerT: \"\u6771\u5065\", speakerS: \"\u4e1c\u5065\",\n      tokens: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u9084\u662f\",\"\u8fd8\u662f\",\"h\u00e1ish\u00ec\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u501f\",\"\u501f\",\"ji\u00e8\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), W(\"\u66f8\",\"\u4e66\",\"sh\u016b\"), W(\"\u770b\",\"\u770b\",\"k\u00e0n\"), W(\"\u4e00\u4e0b\",\"\u4e00\u4e0b\",\"y\u00edxi\u00e0\"), \"\uff0c\", W(\"\u81ea\u5df1\",\"\u81ea\u5df1\",\"z\u00ecj\u01d0\"), W(\"\u7df4\u7fd2\",\"\u7ec3\u4e60\",\"li\u00e0nx\u00ed\"), W(\"\u5427\",\"\u5427\",\"ba\"), \"\u3002\"],\n      en: \"I think I'll borrow your Tai Chi book to look at first and practice on my own.\" },\n    { speakerT: \"\u5b89\u540c\", speakerS: \"\u5b89\u540c\",\n      tokens: [W(\"\u597d\",\"\u597d\",\"H\u01ceo\"), W(\"\u554a\",\"\u554a\",\"a\"), \"\uff0c\", W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u62ff\",\"\u62ff\",\"n\u00e1\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u5427\",\"\u5427\",\"ba\"), \"\uff0c\", W(\"\u5e0c\u671b\",\"\u5e0c\u671b\",\"x\u012bw\u00e0ng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u5b78\u6703\",\"\u5b66\u4f1a\",\"xu\u00e9 hu\u00ec\"), W(\"\u592a\u6975\u62f3\",\"\u592a\u6781\u62f3\",\"t\u00e0ij\u00edqu\u00e1n\"), \"\u3002\"],\n      en: \"Sure, take it \u2014 I hope you can learn Tai Chi too.\" }\n  ];\n\n  var ALL_WORDS = [];\n  Object.keys(GROUPS).forEach(function (k) {\n    GROUPS[k].forEach(function (w) { ALL_WORDS.push(w); });\n  });\n\n  function rubyWord(w) {\n    return '<span class=\"d28-sent-word\">' +\n      '<ruby class=\"lang-zh-TW\"><span class=\"rb\">' + w.t + '<\/span><rt>' + w.pt + '<\/rt><\/ruby>' +\n      '<ruby class=\"lang-zh-CN\"><span class=\"rb\">' + w.s + '<\/span><rt>' + w.ps + '<\/rt><\/ruby>' +\n      '<\/span>';\n  }\n\n  function renderTokens(tokens) {\n    var html = '';\n    tokens.forEach(function (tok) {\n      if (typeof tok === 'string') {\n        html += '<span class=\"d28-punct\">' + tok + '<\/span>';\n      } else {\n        html += rubyWord(tok);\n      }\n    });\n    return html;\n  }\n\n  function headwordRuby(t, s, pt, ps) {\n    return '<ruby class=\"lang-zh-TW\"><span class=\"rb\">' + t + '<\/span><rt>' + pt + '<\/rt><\/ruby>' +\n           '<ruby class=\"lang-zh-CN\"><span class=\"rb\">' + s + '<\/span><rt>' + ps + '<\/rt><\/ruby>';\n  }\n\n  var counter = 0;\n  Object.keys(GROUPS).forEach(function (containerId) {\n    var container = root.querySelector('#' + containerId);\n    if (!container) return;\n    var html = '';\n    GROUPS[containerId].forEach(function (w) {\n      counter++;\n      var num = (counter < 10 ? '0' : '') + counter;\n      html += '<div class=\"d28-word-card\">' +\n        '<div class=\"d28-word-top\">' +\n          '<span class=\"d28-num\">' + num + '<\/span>' +\n          '<span class=\"d28-hanzi\">' + headwordRuby(w.t, w.s, w.pt || w.p, w.ps || w.p) + '<\/span>' +\n          '<span class=\"d28-pos\">' + w.pos + '<\/span>' +\n          '<span class=\"d28-meaning\">' + w.meaning + '<\/span>' +\n          '<button class=\"d28-speaker\" data-trad=\"' + w.t + '\" data-simp=\"' + w.s + '\" aria-label=\"Play pronunciation\">' + SPEAKER_SVG + '<\/button>' +\n        '<\/div>' +\n        '<div class=\"d28-example\">' +\n          renderTokens(w.ex) +\n          '<span class=\"d28-en\">' + w.exEn + '<\/span>' +\n        '<\/div>' +\n      '<\/div>';\n    });\n    container.innerHTML = html;\n  });\n\n  var dialogueEl = root.querySelector('#d28-dialogue');\n  if (dialogueEl) {\n    var dHtml = '';\n    DIALOGUE.forEach(function (line) {\n      dHtml += '<div class=\"d28-line\">' +\n        '<span class=\"d28-speaker-tag\">' +\n          '<span class=\"lang-zh-TW\">' + line.speakerT + '<\/span>' +\n          '<span class=\"lang-zh-CN\">' + line.speakerS + '<\/span>' +\n        '<\/span>' +\n        '<span class=\"d28-line-body\">' +\n          renderTokens(line.tokens) +\n          '<span class=\"d28-line-en\">' + line.en + '<\/span>' +\n        '<\/span>' +\n      '<\/div>';\n    });\n    dialogueEl.innerHTML = dHtml;\n  }\n\n  \/\/ ---- Pinyin sync with the site's Pinyin Display toggle ----\n  \/\/ The site's toggle tags existing <rt> elements with \"hidden\" or \"mouseover\".\n  \/\/ Content we re-render later (flashcard, Match It tiles) wouldn't get those\n  \/\/ classes, so we read the current mode off a static reference <rt> in the\n  \/\/ word list and copy it over whenever we re-render or the mode changes.\n  var pyRefRt = root.querySelector('#d28-word-list-1 rt');\n\n  function getPinyinMode() {\n    if (!pyRefRt) return 'show';\n    if (pyRefRt.classList.contains('hidden')) return 'hidden';\n    if (pyRefRt.classList.contains('mouseover')) return 'mouseover';\n    return 'show';\n  }\n\n  function syncPinyin() {\n    var mode = getPinyinMode();\n    var isHidden = (mode === 'hidden');\n    var isMouse = (mode === 'mouseover');\n    var fcWrap = root.querySelector('.d28-flashcard-wrap');\n    if (fcWrap) {\n      fcWrap.querySelectorAll('rt').forEach(function (rt) {\n        rt.classList.toggle('hidden', isHidden);\n        rt.classList.toggle('mouseover', isMouse);\n      });\n    }\n    root.classList.toggle('d28-py-hidden', isHidden);\n    root.classList.toggle('d28-py-mouseover', isMouse);\n  }\n\n  if (pyRefRt) {\n    if ('MutationObserver' in window) {\n      new MutationObserver(syncPinyin).observe(pyRefRt, { attributes: true, attributeFilter: ['class'] });\n    }\n  }\n\n  \/\/ ---- Flashcards ----\n  var fcCard = root.querySelector('#d28-flashcard');\n  var fcFront = root.querySelector('#d28-fc-front');\n  var fcBack = root.querySelector('#d28-fc-back');\n  var fcProgress = root.querySelector('#d28-fc-progress');\n  var fcPrevBtn = root.querySelector('#d28-fc-prev');\n  var fcNextBtn = root.querySelector('#d28-fc-next');\n  var fcIndex = 0;\n  var fcFlipped = false;\n\n  function renderFlashcard() {\n    var w = ALL_WORDS[fcIndex];\n    if (!w || !fcFront || !fcBack) return;\n    fcFront.innerHTML = '<span class=\"d28-hanzi\">' + headwordRuby(w.t, w.s, w.pt || w.p, w.ps || w.p) + '<\/span>';\n    fcBack.innerHTML = '<span class=\"d28-meaning\">' + w.meaning + '<\/span><span class=\"d28-pos\">' + w.pos + '<\/span>';\n    if (fcProgress) fcProgress.textContent = (fcIndex + 1) + ' \/ ' + ALL_WORDS.length;\n    if (fcCard) fcCard.classList.remove('d28-flipped');\n    fcFlipped = false;\n    syncPinyin();\n  }\n\n  if (fcCard) {\n    fcCard.addEventListener('click', function () {\n      fcFlipped = !fcFlipped;\n      fcCard.classList.toggle('d28-flipped', fcFlipped);\n    });\n  }\n  if (fcPrevBtn) fcPrevBtn.addEventListener('click', function () {\n    fcIndex = (fcIndex - 1 + ALL_WORDS.length) % ALL_WORDS.length;\n    renderFlashcard();\n  });\n  if (fcNextBtn) fcNextBtn.addEventListener('click', function () {\n    fcIndex = (fcIndex + 1) % ALL_WORDS.length;\n    renderFlashcard();\n  });\n  renderFlashcard();\n\n  \/\/ ---- Match It game ----\n  var gameColZh = root.querySelector('#d28-game-col-zh');\n  var gameColEn = root.querySelector('#d28-game-col-en');\n  var gameStatus = root.querySelector('#d28-game-status');\n  var gameWin = root.querySelector('#d28-game-win');\n  var gameNewBtn = root.querySelector('#d28-game-new');\n  var gameRound = [];\n  var gameSelectedZh = null;\n  var gameSelectedEn = null;\n  var gameMatchedCount = 0;\n  var gameBusy = false;\n\n  function shuffle(arr) {\n    var a = arr.slice();\n    for (var i = a.length - 1; i > 0; i--) {\n      var j = Math.floor(Math.random() * (i + 1));\n      var tmp = a[i]; a[i] = a[j]; a[j] = tmp;\n    }\n    return a;\n  }\n\n  function startRound() {\n    gameRound = shuffle(ALL_WORDS).slice(0, 8);\n    gameSelectedZh = null;\n    gameSelectedEn = null;\n    gameMatchedCount = 0;\n    gameBusy = false;\n    if (gameWin) gameWin.classList.remove('d28-show');\n\n    var zhOrder = shuffle(gameRound);\n    var enOrder = shuffle(gameRound);\n\n    gameColZh.innerHTML = zhOrder.map(function (w) {\n      return '<button class=\"d28-tile\" data-id=\"' + w.t + '\" data-side=\"zh\">' +\n        '<span class=\"lang-zh-TW\">' + w.t + '<\/span><span class=\"lang-zh-CN\">' + w.s + '<\/span>' +\n        '<span class=\"d28-tile-py\">' + (w.pt || w.p) + '<\/span>' +\n      '<\/button>';\n    }).join('');\n\n    gameColEn.innerHTML = enOrder.map(function (w) {\n      return '<button class=\"d28-tile\" data-id=\"' + w.t + '\" data-side=\"en\">' + w.meaning + '<\/button>';\n    }).join('');\n\n    updateGameStatus();\n    syncPinyin();\n  }\n\n  function updateGameStatus() {\n    if (gameStatus) gameStatus.textContent = gameMatchedCount + ' \/ ' + gameRound.length + ' matched';\n  }\n\n  function handleTileClick(tile) {\n    if (gameBusy || tile.classList.contains('d28-matched')) return;\n    var side = tile.getAttribute('data-side');\n\n    if (side === 'zh') {\n      if (gameSelectedZh) gameSelectedZh.classList.remove('d28-selected');\n      gameSelectedZh = tile;\n      tile.classList.add('d28-selected');\n    } else {\n      if (gameSelectedEn) gameSelectedEn.classList.remove('d28-selected');\n      gameSelectedEn = tile;\n      tile.classList.add('d28-selected');\n    }\n\n    if (gameSelectedZh) {\n      if (gameSelectedEn) {\n        var zhId = gameSelectedZh.getAttribute('data-id');\n        var enId = gameSelectedEn.getAttribute('data-id');\n        if (zhId === enId) {\n          gameSelectedZh.classList.remove('d28-selected');\n          gameSelectedEn.classList.remove('d28-selected');\n          gameSelectedZh.classList.add('d28-matched');\n          gameSelectedEn.classList.add('d28-matched');\n          gameMatchedCount++;\n          updateGameStatus();\n          gameSelectedZh = null;\n          gameSelectedEn = null;\n          var roundDone = (gameMatchedCount === gameRound.length);\n          if (roundDone) {\n            if (gameWin) {\n              gameWin.classList.add('d28-show');\n            }\n          }\n        } else {\n          gameBusy = true;\n          var z = gameSelectedZh, en = gameSelectedEn;\n          z.classList.add('d28-wrong');\n          en.classList.add('d28-wrong');\n          setTimeout(function () {\n            z.classList.remove('d28-selected', 'd28-wrong');\n            en.classList.remove('d28-selected', 'd28-wrong');\n            gameBusy = false;\n          }, 400);\n          gameSelectedZh = null;\n          gameSelectedEn = null;\n        }\n      }\n    }\n  }\n\n  root.addEventListener('click', function (e) {\n    var tile = e.target.closest('.d28-tile');\n    if (tile) {\n      if (root.contains(tile)) handleTileClick(tile);\n    }\n  });\n  if (gameNewBtn) gameNewBtn.addEventListener('click', startRound);\n\n  startRound();\n\n  \/\/ ---- Vocabulary Quiz ----\n  var QUIZ_DATA = [\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u529f\u592b<\/span><span class=\\\"lang-zh-CN\\\">\u529f\u592b<\/span> means...\", options: [\"kungfu, martial arts\", \"gym\", \"Tai Chi\", \"master\"], answer: 0 },\n    { type: 'type', prompt: \"Type the pinyin for <span class=\\\"lang-zh-TW\\\">\u5e2b\u7236<\/span><span class=\\\"lang-zh-CN\\\">\u5e08\u7236<\/span>.\", accept: [\"shifu\"] },\n    { type: 'mc', prompt: \"Which word means \\\"talent, gift\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u5929\u5206<\/span><span class=\\\"lang-zh-CN\\\">\u5929\u5206<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u8208\u8da3<\/span><span class=\\\"lang-zh-CN\\\">\u5174\u8da3<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u52d5\u4f5c<\/span><span class=\\\"lang-zh-CN\\\">\u52a8\u4f5c<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u9ad4\u529b<\/span><span class=\\\"lang-zh-CN\\\">\u4f53\u529b<\/span>\"], answer: 0 },\n    { type: 'type', prompt: \"Type the English word for <span class=\\\"lang-zh-TW\\\">\u61c2<\/span><span class=\\\"lang-zh-CN\\\">\u61c2<\/span>.\", accept: [\"to understand\", \"understand\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u52d5\u4f5c<\/span><span class=\\\"lang-zh-CN\\\">\u52a8\u4f5c<\/span> means...\", options: [\"movement\", \"interest\", \"benefit\", \"energy\"], answer: 0 },\n    { type: 'mc', prompt: \"Which word means \\\"leg\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u817f<\/span><span class=\\\"lang-zh-CN\\\">\u817f<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u8eab\u9ad4<\/span><span class=\\\"lang-zh-CN\\\">\u8eab\u4f53<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u6574\u5929<\/span><span class=\\\"lang-zh-CN\\\">\u6574\u5929<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u516c\u5c3a<\/span><span class=\\\"lang-zh-CN\\\">\u516c\u5c3a<\/span>\"], answer: 0 },\n    { type: 'type', prompt: \"Type the pinyin for <span class=\\\"lang-zh-TW\\\">\u8208\u8da3<\/span><span class=\\\"lang-zh-CN\\\">\u5174\u8da3<\/span>.\", accept: [\"xingqu\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u501f<\/span><span class=\\\"lang-zh-CN\\\">\u501f<\/span> means...\", options: [\"to borrow\", \"to push\", \"to practice\", \"to influence\"], answer: 0 },\n    { type: 'type', prompt: \"Type the English word for <span class=\\\"lang-zh-TW\\\">\u597d\u8655<\/span><span class=\\\"lang-zh-CN\\\">\u597d\u5904<\/span>.\", accept: [\"benefit\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u62b1\u6028<\/span><span class=\\\"lang-zh-CN\\\">\u62b1\u6028<\/span> means...\", options: [\"to complain\", \"to recall\", \"to influence\", \"to practice\"], answer: 0 },\n    { type: 'type', prompt: \"Type the pinyin for <span class=\\\"lang-zh-TW\\\">\u9ad4\u529b<\/span><span class=\\\"lang-zh-CN\\\">\u4f53\u529b<\/span>.\", accept: [\"tili\"] },\n    { type: 'mc', prompt: \"Which word means \\\"spirit, energy\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u7cbe\u795e<\/span><span class=\\\"lang-zh-CN\\\">\u7cbe\u795e<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u6574\u5929<\/span><span class=\\\"lang-zh-CN\\\">\u6574\u5929<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u9ad4\u529b<\/span><span class=\\\"lang-zh-CN\\\">\u4f53\u529b<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u597d\u8655<\/span><span class=\\\"lang-zh-CN\\\">\u597d\u5904<\/span>\"], answer: 0 },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u672c\u4f86<\/span><span class=\\\"lang-zh-CN\\\">\u672c\u6765<\/span> means...\", options: [\"originally\", \"maybe, probably\", \"always, invariably\", \"to return to\"], answer: 0 },\n    { type: 'type', prompt: \"Type the English word for <span class=\\\"lang-zh-TW\\\">\u5f71\u97ff<\/span><span class=\\\"lang-zh-CN\\\">\u5f71\u54cd<\/span>.\", accept: [\"to influence\", \"influence\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u60f3\u8d77<\/span><span class=\\\"lang-zh-CN\\\">\u60f3\u8d77<\/span> means...\", options: [\"to recall\", \"to understand\", \"to complain\", \"to borrow\"], answer: 0 }\n  ];\n\n  function stripTones(s) {\n    return s.normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '').toLowerCase().replace(\/[^a-z0-9]\/g, '');\n  }\n\n  (function initQuiz() {\n    var qRoot = root.querySelector('#d28-quiz');\n    if (!qRoot) return;\n    var current = 0;\n    var score = 0;\n    var answered = false;\n\n    function render() {\n      if (current >= QUIZ_DATA.length) { renderScore(); return; }\n      var q = QUIZ_DATA[current];\n      answered = false;\n      var html = '<p class=\"d28-quiz-progress\">Question ' + (current + 1) + ' of ' + QUIZ_DATA.length + '<\/p>';\n      html += '<p class=\"d28-quiz-prompt\">' + q.prompt + '<\/p>';\n      if (q.type === 'mc') {\n        html += '<div class=\"d28-quiz-options\">';\n        var optOrder = shuffle(q.options.map(function (o, k) { return k; }));\n        for (var oi = 0; oi < optOrder.length; oi++) {\n          var i = optOrder[oi];\n          html += '<button type=\"button\" class=\"d28-quiz-opt\" data-i=\"' + i + '\">' + q.options[i] + '<\/button>';\n        }\n        html += '<\/div>';\n      } else {\n        html += '<div class=\"d28-quiz-input-row\">';\n        html += '<input type=\"text\" class=\"d28-quiz-input\" placeholder=\"Type your answer\">';\n        html += '<button type=\"button\" class=\"d28-quiz-submit\">Submit<\/button>';\n        html += '<\/div>';\n      }\n      html += '<p class=\"d28-quiz-feedback\"><\/p>';\n      html += '<button type=\"button\" class=\"d28-quiz-next\" style=\"display:none;\">Next<\/button>';\n      qRoot.innerHTML = html;\n\n      if (q.type === 'mc') {\n        var opts = qRoot.querySelectorAll('.d28-quiz-opt');\n        opts.forEach(function (btn) {\n          btn.addEventListener('click', function () {\n            if (answered) return;\n            answered = true;\n            var i = parseInt(this.getAttribute('data-i'), 10);\n            var correct = i === q.answer;\n            if (correct) score++;\n            opts.forEach(function (b) {\n              var bi = parseInt(b.getAttribute('data-i'), 10);\n              b.setAttribute('disabled', 'disabled');\n              if (bi === q.answer) b.classList.add('correct');\n              else if (bi === i) b.classList.add('incorrect');\n            });\n            showFeedback(correct);\n          });\n        });\n      } else {\n        var input = qRoot.querySelector('.d28-quiz-input');\n        var submitBtn = qRoot.querySelector('.d28-quiz-submit');\n        function submit() {\n          if (answered) return;\n          answered = true;\n          var val = stripTones(input.value || '');\n          var correct = q.accept.indexOf(val) !== -1;\n          if (correct) score++;\n          input.setAttribute('disabled', 'disabled');\n          submitBtn.setAttribute('disabled', 'disabled');\n          showFeedback(correct, q.accept[0]);\n        }\n        submitBtn.addEventListener('click', submit);\n        input.addEventListener('keydown', function (e) { if (e.key === 'Enter') submit(); });\n      }\n\n      function showFeedback(correct, correctAnswer) {\n        var fb = qRoot.querySelector('.d28-quiz-feedback');\n        if (correct) {\n          fb.textContent = 'Correct!';\n        } else if (correctAnswer) {\n          fb.textContent = 'Not quite \u2014 the answer is \"' + correctAnswer + '\".';\n        } else {\n          fb.textContent = 'Not quite \u2014 check the highlighted answer above.';\n        }\n        fb.className = 'd28-quiz-feedback ' + (correct ? 'correct' : 'incorrect');\n        var nextBtn = qRoot.querySelector('.d28-quiz-next');\n        nextBtn.style.display = 'inline-block';\n        nextBtn.addEventListener('click', function () { current++; render(); });\n      }\n    }\n\n    function renderScore() {\n      qRoot.innerHTML =\n        '<div class=\"d28-quiz-score\">' +\n        '<span class=\"d28-quiz-score-num\">' + score + ' \/ ' + QUIZ_DATA.length + '<\/span>' +\n        '<p>Nice work! Want to try again?<\/p>' +\n        '<button type=\"button\" class=\"d28-quiz-retake\">Retake Quiz<\/button>' +\n        '<\/div>';\n      qRoot.querySelector('.d28-quiz-retake').addEventListener('click', function () {\n        current = 0; score = 0; render();\n      });\n    }\n\n    render();\n  })();\n\n  \/\/ Speaker buttons (event delegation, Web Speech API)\n  root.addEventListener('click', function (e) {\n    var btn = e.target.closest('.d28-speaker');\n    if (!btn || !root.contains(btn)) return;\n    if (!('speechSynthesis' in window)) return;\n    var showingSimp = false;\n    var simpEl = root.querySelector('.lang-zh-CN');\n    if (simpEl) {\n      if (simpEl.offsetParent !== null) showingSimp = true;\n    }\n    var text = showingSimp ? btn.getAttribute('data-simp') : btn.getAttribute('data-trad');\n    var utter = new SpeechSynthesisUtterance(text);\n    utter.lang = showingSimp ? 'zh-CN' : 'zh-TW';\n    window.speechSynthesis.cancel();\n    window.speechSynthesis.speak(utter);\n  });\n\n  \/\/ Keep dynamically re-rendered spans (quiz, match-it, flashcards) in step with the site's Text Display choice\n  function syncScript() {\n    var refCN = root.querySelector('.d28-lede .lang-zh-CN');\n    var refTW = root.querySelector('.d28-lede .lang-zh-TW');\n    if (!refCN) return;\n    if (!refTW) return;\n    var cnVis = refCN.offsetParent !== null;\n    var twVis = refTW.offsetParent !== null;\n    if (cnVis === twVis) return;\n    var scopes = root.querySelectorAll('.d28-quiz, .d28-game-board, .d28-flashcard');\n    scopes.forEach(function (sc) {\n      sc.querySelectorAll('.lang-zh-TW').forEach(function (el) { el.style.display = twVis ? '' : 'none'; });\n      sc.querySelectorAll('.lang-zh-CN').forEach(function (el) { el.style.display = cnVis ? '' : 'none'; });\n    });\n  }\n  root.addEventListener('click', function () { setTimeout(syncScript, 0); });\n  setInterval(syncScript, 400);\n  syncScript();\n})();\n<\/script>\n<\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignright size-medium is-resized\"><a href=\"https:\/\/ko-fi.com\/tiffanystalk\" target=\"_blank\" rel=\"noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"58\" src=\"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-300x58.png\" alt=\"\" class=\"wp-image-570\" style=\"width:150px;height:29px\" srcset=\"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-300x58.png 300w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-600x115.png 600w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-1024x197.png 1024w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-768x148.png 768w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-1536x296.png 1536w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-2048x394.png 2048w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/fcacd-buymeacoffee_red402x-850x164.png 850w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption class=\"wp-element-caption\">Do you like it? \ud83d\ude42<\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-medium is-resized\"><a href=\"https:\/\/tiffanysmandarin.com\/index.php\/contemporary-chinese-book-2\/\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"86\" src=\"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/e68f92e59c963-300x86.png\" alt=\"\" class=\"wp-image-571\" style=\"width:150px;height:43px\" srcset=\"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/e68f92e59c963-300x86.png 300w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/e68f92e59c963-600x171.png 600w, https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/e68f92e59c963.png 700w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A note before you start: I&#8217;d love for you to support the official textbook \u2014 this page is only meant as a review tool for people who already own a copy, not a replacement for it. \u7576\u4ee3\u4e2d\u6587\u8ab2\u7a0b\u5f53\u4ee3\u4e2d\u6587\u8bfe\u7a0b Book 2 \u00b7 Lesson 8\u300c\u5b78\u529f\u592b\u5b66\u529f\u592b\u300dLearning Kungfu \u2014 every word from \u751f\u8a5e\u4e00 and \u751f\u8a5e\u4e8c (Vocabulary I &amp; II), including&#8230;<\/p>\n","protected":false},"author":2,"featured_media":11596,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_wp_convertkit_post_meta":{"form":"-1","landing_page":"0","tag":"0","restrict_content":"0"},"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1089],"tags":[],"class_list":["post-13430","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-1089"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>B2 L8 Vocabulary and Practice - OneDotDot Chinese<\/title>\n<meta name=\"description\" content=\"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u516b\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 8\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"B2 L8 Vocabulary and Practice - OneDotDot Chinese\" \/>\n<meta property=\"og:description\" content=\"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u516b\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 8\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/\" \/>\n<meta property=\"og:site_name\" content=\"OneDotDot Chinese\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-11T04:20:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-09T15:01:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"tiffany\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"tiffany\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/\"},\"author\":{\"name\":\"tiffany\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"headline\":\"B2 L8 Vocabulary and Practice\",\"datePublished\":\"2026-01-11T04:20:43+00:00\",\"dateModified\":\"2026-10-09T15:01:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/\"},\"wordCount\":210,\"publisher\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"image\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/\u7576\u4ee3\u4e2d\u65872.jpg\",\"articleSection\":[\"\u7576\u4ee3\u4e2d\u6587 2\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/\",\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/\",\"name\":\"B2 L8 Vocabulary and Practice - OneDotDot Chinese\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/\u7576\u4ee3\u4e2d\u65872.jpg\",\"datePublished\":\"2026-01-11T04:20:43+00:00\",\"dateModified\":\"2026-10-09T15:01:43+00:00\",\"description\":\"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u516b\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 8\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#primaryimage\",\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/\u7576\u4ee3\u4e2d\u65872.jpg\",\"contentUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/\u7576\u4ee3\u4e2d\u65872.jpg\",\"width\":800,\"height\":300,\"caption\":\"Contemporary Chinese Book 2\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/01\\\/11\\\/contemporary-chinese-vocabulary-practice-b2l8\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9801\",\"item\":\"https:\\\/\\\/tiffanysmandarin.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"B2 L8 Vocabulary and Practice\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#website\",\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/\",\"name\":\"OneDotDot Chinese\",\"description\":\"Learn a little Chinese every day\",\"publisher\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/tiffanysmandarin.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\",\"name\":\"tiffany\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/cropped-logo_tiffany2-1.png\",\"url\":\"http:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/cropped-logo_tiffany2-1.png\",\"contentUrl\":\"http:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/cropped-logo_tiffany2-1.png\",\"width\":214,\"height\":214,\"caption\":\"tiffany\"},\"logo\":{\"@id\":\"http:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/cropped-logo_tiffany2-1.png\"},\"sameAs\":[\"https:\\\/\\\/www.instagram.com\\\/tiffanys_talk\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/tiffany-huang-mandarin\\\/\"],\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/author\\\/tiffany\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"B2 L8 Vocabulary and Practice - OneDotDot Chinese","description":"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u516b\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/","og_locale":"en_US","og_type":"article","og_title":"B2 L8 Vocabulary and Practice - OneDotDot Chinese","og_description":"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u516b\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 8","og_url":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/","og_site_name":"OneDotDot Chinese","article_published_time":"2026-01-11T04:20:43+00:00","article_modified_time":"2026-10-09T15:01:43+00:00","og_image":[{"width":800,"height":300,"url":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","type":"image\/jpeg"}],"author":"tiffany","twitter_card":"summary_large_image","twitter_misc":{"Written by":"tiffany","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#article","isPartOf":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/"},"author":{"name":"tiffany","@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"headline":"B2 L8 Vocabulary and Practice","datePublished":"2026-01-11T04:20:43+00:00","dateModified":"2026-10-09T15:01:43+00:00","mainEntityOfPage":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/"},"wordCount":210,"publisher":{"@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"image":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#primaryimage"},"thumbnailUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","articleSection":["\u7576\u4ee3\u4e2d\u6587 2"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/","url":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/","name":"B2 L8 Vocabulary and Practice - OneDotDot Chinese","isPartOf":{"@id":"https:\/\/tiffanysmandarin.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#primaryimage"},"image":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#primaryimage"},"thumbnailUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","datePublished":"2026-01-11T04:20:43+00:00","dateModified":"2026-10-09T15:01:43+00:00","description":"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u516b\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 8","breadcrumb":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#primaryimage","url":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","contentUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","width":800,"height":300,"caption":"Contemporary Chinese Book 2"},{"@type":"BreadcrumbList","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/01\/11\/contemporary-chinese-vocabulary-practice-b2l8\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9801","item":"https:\/\/tiffanysmandarin.com\/"},{"@type":"ListItem","position":2,"name":"B2 L8 Vocabulary and Practice"}]},{"@type":"WebSite","@id":"https:\/\/tiffanysmandarin.com\/#website","url":"https:\/\/tiffanysmandarin.com\/","name":"OneDotDot Chinese","description":"Learn a little Chinese every day","publisher":{"@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tiffanysmandarin.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99","name":"tiffany","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/cropped-logo_tiffany2-1.png","url":"http:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/cropped-logo_tiffany2-1.png","contentUrl":"http:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/cropped-logo_tiffany2-1.png","width":214,"height":214,"caption":"tiffany"},"logo":{"@id":"http:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2022\/06\/cropped-logo_tiffany2-1.png"},"sameAs":["https:\/\/www.instagram.com\/tiffanys_talk\/","https:\/\/www.linkedin.com\/in\/tiffany-huang-mandarin\/"],"url":"https:\/\/tiffanysmandarin.com\/index.php\/author\/tiffany\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","_links":{"self":[{"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/13430","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/comments?post=13430"}],"version-history":[{"count":3,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/13430\/revisions"}],"predecessor-version":[{"id":18113,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/13430\/revisions\/18113"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/media\/11596"}],"wp:attachment":[{"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/media?parent=13430"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/categories?post=13430"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/tags?post=13430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}