{"id":13487,"date":"2026-02-07T23:12:06","date_gmt":"2026-02-07T15:12:06","guid":{"rendered":"https:\/\/tiffanysmandarin.com\/?p=13487"},"modified":"2026-10-09T23:02:03","modified_gmt":"2026-10-09T15:02:03","slug":"contemporary-chinese-vocabulary-practice-b2l10","status":"publish","type":"post","link":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/","title":{"rendered":"B2 L10 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 10 \u300c\u6b61\u8fce\u5230\u6211\u5bb6\u4f86\u5305\u9903\u5b50\u300d Come to My Place to Make Dumplings \u2014 Vocabulary Embed\n  Same technical pattern as the Book 1 embeds (scoped CSS --d210-*, id #dangdai-b2l10-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 d210-py-hidden \/ d210-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-b2l10-vocab-embed\" id=\"dangdai-b2l10-vocab-embed-1\">\n<style>\n.dangdai-b2l10-vocab-embed {\n  --d210-oxblood: #7b2d26;\n  --d210-oxblood-dark: #5e211c;\n  --d210-mustard: #c9922b;\n  --d210-sage: #7c8b6f;\n  --d210-bone: #f7f1e6;\n  --d210-ink: #2c2620;\n  --d210-line: #e4d9c4;\n  font-family: 'Work Sans', -apple-system, sans-serif;\n  color: var(--d210-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-b2l10-vocab-embed * { box-sizing: border-box; }\n.dangdai-b2l10-vocab-embed .d210-people-card {\n  border: 1px solid var(--d210-line);\n  border-radius: 8px;\n  padding: 12px 14px;\n  margin-bottom: 10px;\n  background: var(--d210-bone);\n  display: flex;\n  align-items: baseline;\n  gap: 10px;\n  flex-wrap: wrap;\n}\n.dangdai-b2l10-vocab-embed h1,\n.dangdai-b2l10-vocab-embed h2,\n.dangdai-b2l10-vocab-embed h3 {\n  font-family: 'Bitter', Georgia, serif;\n  color: var(--d210-oxblood-dark);\n  margin: 0 0 8px;\n}\n.dangdai-b2l10-vocab-embed .d210-support-note {\n  font-size: 0.85rem;\n  color: var(--d210-sage);\n  border-bottom: 1px solid var(--d210-line);\n  padding-bottom: 12px;\n  margin: 0 0 16px;\n}\n.dangdai-b2l10-vocab-embed .d210-lede {\n  margin: 0 0 24px;\n  padding: 14px 16px;\n  background: var(--d210-bone);\n  border-left: 4px solid var(--d210-mustard);\n  border-radius: 4px;\n  font-size: 0.98rem;\n}\n.dangdai-b2l10-vocab-embed .d210-lede b { color: var(--d210-oxblood-dark); }\n.dangdai-b2l10-vocab-embed .d210-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(--d210-oxblood);\n  padding: 3px 9px;\n  border-radius: 3px;\n  margin: 32px 0 10px;\n}\n.dangdai-b2l10-vocab-embed .d210-word-card {\n  border: 1px solid var(--d210-line);\n  border-radius: 8px;\n  padding: 12px 14px;\n  margin-bottom: 10px;\n  background: #fff;\n}\n.dangdai-b2l10-vocab-embed .d210-word-top {\n  display: flex;\n  align-items: baseline;\n  gap: 10px;\n  flex-wrap: wrap;\n}\n.dangdai-b2l10-vocab-embed .d210-num {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.75rem;\n  color: var(--d210-mustard);\n  min-width: 22px;\n}\n.dangdai-b2l10-vocab-embed .d210-hanzi { font-size: 1.35rem; font-weight: 600; }\n.dangdai-b2l10-vocab-embed .d210-pos {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.7rem;\n  color: #fff;\n  background: var(--d210-sage);\n  padding: 2px 7px;\n  border-radius: 10px;\n}\n.dangdai-b2l10-vocab-embed ruby {\n  ruby-position: over;\n  margin-right: 2px;\n  color: var(--d210-ink) !important;\n  font-size: inherit !important;\n}\n.dangdai-b2l10-vocab-embed .rb {\n  color: var(--d210-ink) !important;\n  font-size: inherit !important;\n}\n.dangdai-b2l10-vocab-embed rt {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.6rem !important;\n  color: var(--d210-sage) !important;\n  font-weight: 400;\n}\n.dangdai-b2l10-vocab-embed rt.hidden { display: none; }\n.dangdai-b2l10-vocab-embed rt.mouseover { opacity: 0; }\n.dangdai-b2l10-vocab-embed rt.mouseover:hover { opacity: 1; }\n.dangdai-b2l10-vocab-embed .d210-meaning { font-style: italic; color: #6b5f52; font-size: 0.92rem; }\n.dangdai-b2l10-vocab-embed .d210-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(--d210-bone);\n  color: var(--d210-oxblood);\n  border-radius: 50%;\n  cursor: pointer;\n  margin-left: auto;\n}\n.dangdai-b2l10-vocab-embed .d210-speaker:hover { background: var(--d210-mustard); color: #fff; }\n.dangdai-b2l10-vocab-embed .d210-example {\n  margin-top: 8px;\n  padding-top: 8px;\n  border-top: 1px dashed var(--d210-line);\n  font-size: 0.95rem;\n}\n.dangdai-b2l10-vocab-embed .d210-example .d210-sent-word { display: inline-flex; }\n.dangdai-b2l10-vocab-embed .d210-example .d210-punct { margin-right: 2px; }\n.dangdai-b2l10-vocab-embed .d210-example .d210-en {\n  display: block;\n  color: #6b5f52;\n  font-size: 0.85rem;\n  margin-top: 4px;\n}\n.dangdai-b2l10-vocab-embed .d210-dialogue-note { font-size: 0.85rem; color: #6b5f52; margin: 0 0 10px; }\n.dangdai-b2l10-vocab-embed .d210-dialogue {\n  background: var(--d210-bone);\n  border-radius: 8px;\n  padding: 16px 18px;\n  margin-top: 8px;\n}\n.dangdai-b2l10-vocab-embed .d210-line {\n  display: flex;\n  gap: 8px;\n  margin-bottom: 12px;\n  align-items: flex-start;\n  flex-wrap: wrap;\n}\n.dangdai-b2l10-vocab-embed .d210-speaker-tag {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.72rem;\n  color: var(--d210-oxblood);\n  min-width: 46px;\n  padding-top: 3px;\n}\n.dangdai-b2l10-vocab-embed .d210-line-body { flex: 1; min-width: 200px; }\n.dangdai-b2l10-vocab-embed .d210-line-en { display: block; color: #6b5f52; font-size: 0.82rem; margin-top: 2px; }\n\n.dangdai-b2l10-vocab-embed .d210-fc-hint { font-size: 0.85rem; color: #6b5f52; margin: 0 0 12px; text-align: center; }\n.dangdai-b2l10-vocab-embed .d210-flashcard-wrap { max-width: 320px; margin: 0 auto 14px; perspective: 1200px; }\n.dangdai-b2l10-vocab-embed .d210-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-b2l10-vocab-embed .d210-flashcard.d210-flipped { transform: rotateY(180deg); }\n.dangdai-b2l10-vocab-embed .d210-fc-face {\n  position: absolute;\n  inset: 0;\n  backface-visibility: hidden;\n  border: 1px solid var(--d210-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-b2l10-vocab-embed .d210-fc-back { transform: rotateY(180deg); background: var(--d210-bone); }\n.dangdai-b2l10-vocab-embed .d210-fc-front .d210-hanzi { font-size: 4rem !important; }\n.dangdai-b2l10-vocab-embed .d210-flashcard-wrap rt { font-size: 1.2rem !important; }\n.dangdai-b2l10-vocab-embed .d210-fc-back .d210-meaning { font-style: italic; color: var(--d210-oxblood-dark); font-size: 1.725rem; }\n.dangdai-b2l10-vocab-embed .d210-fc-back .d210-pos { margin-top: 8px; }\n.dangdai-b2l10-vocab-embed .d210-flashcard-controls { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 28px; }\n.dangdai-b2l10-vocab-embed .d210-game-btn {\n  font-family: 'Work Sans', sans-serif;\n  font-size: 0.85rem;\n  border: 1px solid var(--d210-oxblood);\n  color: var(--d210-oxblood);\n  background: #fff;\n  padding: 6px 14px;\n  border-radius: 20px;\n  cursor: pointer;\n}\n.dangdai-b2l10-vocab-embed .d210-game-btn:hover { background: var(--d210-oxblood); color: #fff; }\n.dangdai-b2l10-vocab-embed .d210-game-bar { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }\n.dangdai-b2l10-vocab-embed .d210-game-status { font-family: 'IBM Plex Mono', monospace; font-size: 0.82rem; color: var(--d210-sage); }\n.dangdai-b2l10-vocab-embed .d210-game-board { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }\n.dangdai-b2l10-vocab-embed .d210-game-col { display: flex; flex-direction: column; gap: 8px; }\n.dangdai-b2l10-vocab-embed .d210-tile {\n  font-family: 'Work Sans', sans-serif;\n  text-align: left;\n  border: 1px solid var(--d210-line);\n  background: #fff;\n  border-radius: 6px;\n  padding: 10px 12px;\n  cursor: pointer;\n  font-size: 0.95rem;\n  color: var(--d210-ink);\n  transition: background 0.15s, border-color 0.15s, transform 0.1s;\n}\n.dangdai-b2l10-vocab-embed .d210-tile .d210-tile-py {\n  display: block;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.7rem;\n  color: var(--d210-sage);\n  margin-top: 2px;\n}\n\/* Match It tile pinyin follows the site's Pinyin Display toggle *\/\n.dangdai-b2l10-vocab-embed.d210-py-hidden .d210-tile .d210-tile-py { display: none; }\n.dangdai-b2l10-vocab-embed.d210-py-mouseover .d210-tile .d210-tile-py { opacity: 0; }\n.dangdai-b2l10-vocab-embed.d210-py-mouseover .d210-tile:hover .d210-tile-py { opacity: 1; }\n.dangdai-b2l10-vocab-embed .d210-tile:hover:not(.d210-matched):not(.d210-selected) { border-color: var(--d210-mustard); }\n.dangdai-b2l10-vocab-embed .d210-tile.d210-selected { border-color: var(--d210-oxblood); background: var(--d210-bone); }\n.dangdai-b2l10-vocab-embed .d210-tile.d210-matched { border-color: var(--d210-sage); background: #eef2e9; color: var(--d210-sage); cursor: default; }\n.dangdai-b2l10-vocab-embed .d210-tile.d210-wrong { border-color: #b5453d; background: #fbeceb; animation: d210-shake 0.3s; }\n@keyframes d210-shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }\n.dangdai-b2l10-vocab-embed .d210-game-win { text-align: center; padding: 14px; font-family: 'Bitter', serif; color: var(--d210-oxblood-dark); display: none; }\n.dangdai-b2l10-vocab-embed .d210-game-win.d210-show { display: block; }\n@media (max-width: 480px) { .dangdai-b2l10-vocab-embed .d210-game-board { grid-template-columns: 1fr; } }\n.dangdai-b2l10-vocab-embed .d210-quiz { background: #fff; border: 1px solid var(--d210-line); border-radius: 12px; padding: 20px 22px; margin-top: 8px; }\n.dangdai-b2l10-vocab-embed .d210-quiz-progress { font-size: 0.82rem; color: var(--d210-sage); margin: 0 0 10px; font-family: 'IBM Plex Mono', monospace; }\n.dangdai-b2l10-vocab-embed .d210-quiz-prompt { font-size: 1.1rem; margin: 0 0 14px; }\n.dangdai-b2l10-vocab-embed .d210-quiz-options { display: flex; flex-direction: column; gap: 8px; margin: 0 0 10px; }\n.dangdai-b2l10-vocab-embed .d210-quiz-opt { text-align: left; border: 1px solid var(--d210-line); background: var(--d210-bone); border-radius: 8px; padding: 10px 14px; cursor: pointer; font-size: 0.98rem; color: var(--d210-ink); }\n.dangdai-b2l10-vocab-embed .d210-quiz-opt:hover { background: #f0e6d2; }\n.dangdai-b2l10-vocab-embed .d210-quiz-opt.correct { background: #e3efdd; border-color: #7fae6d; color: #3d5c34; }\n.dangdai-b2l10-vocab-embed .d210-quiz-opt.incorrect { background: #f5e0dc; border-color: var(--d210-oxblood); color: var(--d210-oxblood-dark); }\n.dangdai-b2l10-vocab-embed .d210-quiz-opt[disabled] { cursor: default; }\n.dangdai-b2l10-vocab-embed .d210-quiz-input-row { display: flex; gap: 8px; margin: 0 0 10px; flex-wrap: wrap; }\n.dangdai-b2l10-vocab-embed .d210-quiz-input { flex: 1 1 200px; border: 1px solid var(--d210-line); border-radius: 8px; padding: 9px 12px; font-size: 0.98rem; }\n.dangdai-b2l10-vocab-embed .d210-quiz-submit, .dangdai-b2l10-vocab-embed .d210-quiz-next, .dangdai-b2l10-vocab-embed .d210-quiz-retake { border: none; background: var(--d210-oxblood); color: #fff; border-radius: 20px; padding: 8px 18px; font-size: 0.9rem; cursor: pointer; }\n.dangdai-b2l10-vocab-embed .d210-quiz-submit:hover, .dangdai-b2l10-vocab-embed .d210-quiz-next:hover, .dangdai-b2l10-vocab-embed .d210-quiz-retake:hover { background: var(--d210-oxblood-dark); }\n.dangdai-b2l10-vocab-embed .d210-quiz-feedback { font-size: 0.95rem; margin: 0 0 10px; min-height: 1.4em; }\n.dangdai-b2l10-vocab-embed .d210-quiz-feedback.correct { color: #3d5c34; }\n.dangdai-b2l10-vocab-embed .d210-quiz-feedback.incorrect { color: var(--d210-oxblood-dark); }\n.dangdai-b2l10-vocab-embed .d210-quiz-score { text-align: center; }\n.dangdai-b2l10-vocab-embed .d210-quiz-score .d210-quiz-score-num { font-size: 2.2rem; font-weight: 700; color: var(--d210-oxblood-dark); display: block; margin-bottom: 8px; font-family: 'Bitter', serif; }\n<\/style>\n\n<p class=\"d210-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=\"d210-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 10\u300c<span class=\"lang-zh-TW\">\u6b61\u8fce\u5230\u6211\u5bb6\u4f86\u5305\u9903\u5b50<\/span><span class=\"lang-zh-CN\">\u6b22\u8fce\u5230\u6211\u5bb6\u6765\u5305\u997a\u5b50<\/span>\u300dCome to My Place to Make Dumplings.<\/b> \u2014 every word from \u751f\u8a5e\u4e00 and \u751f\u8a5e\u4e8c (Vocabulary I &amp; II), including the person and names\/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=\"d210-sec-eyebrow\">00 \u2014 PEOPLE IN THE DIALOGUE \u4eba\u7269<\/div>\n<div id=\"d210-people-list\"><\/div>\n\n<div class=\"d210-sec-eyebrow\">01 \u2014 VOCABULARY I \u751f\u8a5e\u4e00<\/div>\n<div id=\"d210-word-list-1\"><\/div>\n\n<div class=\"d210-sec-eyebrow\">02 \u2014 NAMES &amp; PHRASES I \u5c08\u6709\u540d\u8a5e\u3001\u8a5e\u7d44<\/div>\n<div id=\"d210-word-list-2\"><\/div>\n\n<div class=\"d210-sec-eyebrow\">03 \u2014 VOCABULARY II \u751f\u8a5e\u4e8c<\/div>\n<div id=\"d210-word-list-3\"><\/div>\n\n<div class=\"d210-sec-eyebrow\">04 \u2014 PHRASES II \u8a5e\u7d44<\/div>\n<div id=\"d210-word-list-4\"><\/div>\n\n<div class=\"d210-sec-eyebrow\">05 \u2014 PUT IT TOGETHER \u5c0d\u8a71\u7df4\u7fd2<\/div>\n<p class=\"d210-dialogue-note\"><em>Note: this lesson&#8217;s main text in the textbook is actually a reading passage (\u77ed\u6587), not a two-person dialogue \u2014 it&#8217;s copyrighted, so I wrote an original conversation below between \u5f35\u8001\u5e2b and \u99ac\u4e01 while making dumplings together, using vocabulary from this lesson and earlier lessons, so you can see the words used together. For the real Lesson 10 reading passage, please use your own copy of the textbook.<\/em><\/p>\n<div class=\"d210-dialogue\" id=\"d210-dialogue\"><\/div>\n\n<div class=\"d210-sec-eyebrow\">06 \u2014 FLASHCARDS<\/div>\n<p class=\"d210-fc-hint\">Tap the card to flip it, then use the arrows to move through the deck.<\/p>\n<div class=\"d210-flashcard-wrap\">\n  <div class=\"d210-flashcard\" id=\"d210-flashcard\">\n    <div class=\"d210-fc-face d210-fc-front\" id=\"d210-fc-front\"><\/div>\n    <div class=\"d210-fc-face d210-fc-back\" id=\"d210-fc-back\"><\/div>\n  <\/div>\n<\/div>\n<div class=\"d210-flashcard-controls\">\n  <button class=\"d210-game-btn\" id=\"d210-fc-prev\">\u2039 Prev<\/button>\n  <span class=\"d210-game-status\" id=\"d210-fc-progress\">1 \/ 44<\/span>\n  <button class=\"d210-game-btn\" id=\"d210-fc-next\">Next \u203a<\/button>\n<\/div>\n\n<div class=\"d210-sec-eyebrow\">07 \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=\"d210-game-bar\">\n  <button class=\"d210-game-btn\" id=\"d210-game-new\">New Round<\/button>\n  <span class=\"d210-game-status\" id=\"d210-game-status\">0 \/ 8 matched<\/span>\n<\/div>\n<div class=\"d210-game-board\">\n  <div class=\"d210-game-col\" id=\"d210-game-col-zh\"><\/div>\n  <div class=\"d210-game-col\" id=\"d210-game-col-en\"><\/div>\n<\/div>\n<div class=\"d210-game-win\" id=\"d210-game-win\">\ud83c\udf89 All matched! Nice work.<\/div>\n\n<div class=\"d210-sec-eyebrow\">08 \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=\"d210-quiz\" id=\"d210-quiz\"><\/div>\n\n<script>\n(function () {\n  var root = document.getElementById('dangdai-b2l10-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    'd210-word-list-1': [\n      { t: \"\u5305\", s: \"\u5305\", p: \"b\u0101o\", pos: \"V\", meaning: \"to wrap\",\n        ex: [W(\"\u6211\u5011\",\"\u6211\u4eec\",\"W\u01d2men\"), W(\"\u4e00\u8d77\",\"\u4e00\u8d77\",\"y\u00ecq\u01d0\"), W(\"\u5305\",\"\u5305\",\"b\u0101o\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), W(\"\u5427\",\"\u5427\",\"ba\"), \"\u3002\"],\n        exEn: \"Let's wrap dumplings together.\" },\n      { t: \"\u9903\u5b50\", s: \"\u997a\u5b50\", p: \"ji\u01ceozi\", pos: \"N\", meaning: \"dumplings\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u559c\u6b61\",\"\u559c\u6b22\",\"x\u01d0hu\u0101n\"), W(\"\u5403\",\"\u5403\",\"ch\u012b\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), \"\u3002\"],\n        exEn: \"I like eating dumplings.\" },\n      { t: \"\u812b\", s: \"\u8131\", p: \"tu\u014d\", pos: \"V\", meaning: \"to remove, to take off (clothing)\",\n        ex: [W(\"\u8acb\",\"\u8bf7\",\"Q\u01d0ng\"), W(\"\u812b\",\"\u8131\",\"tu\u014d\"), W(\"\u978b\",\"\u978b\",\"xi\u00e9\"), \"\u3002\"],\n        exEn: \"Please take off your shoes.\" },\n      { t: \"\u978b\", s: \"\u978b\", p: \"xi\u00e9\", pos: \"N\", meaning: \"shoes\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u978b\",\"\u978b\",\"xi\u00e9\"), W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u9580\u53e3\",\"\u95e8\u53e3\",\"m\u00e9nk\u01d2u\"), \"\u3002\"],\n        exEn: \"His shoes are at the door.\" },\n      { t: \"\u95dc\", s: \"\u5173\", p: \"gu\u0101n\", pos: \"V\", meaning: \"to close\",\n        ex: [W(\"\u8a18\u5f97\",\"\u8bb0\u5f97\",\"J\u00ecde\"), W(\"\u95dc\",\"\u5173\",\"gu\u0101n\"), W(\"\u9580\",\"\u95e8\",\"m\u00e9n\"), \"\u3002\"],\n        exEn: \"Remember to close the door.\" },\n      { t: \"\u9580\", s: \"\u95e8\", p: \"m\u00e9n\", pos: \"N\", meaning: \"door\",\n        ex: [W(\"\u5916\u9762\",\"\u5916\u9762\",\"W\u00e0imi\u00e0n\"), W(\"\u6709\u9ede\",\"\u6709\u70b9\",\"y\u01d2udi\u01cen\"), W(\"\u51b7\",\"\u51b7\",\"l\u011bng\"), \"\uff0c\", W(\"\u5feb\",\"\u5feb\",\"ku\u00e0i\"), W(\"\u95dc\",\"\u5173\",\"gu\u0101n\"), W(\"\u9580\",\"\u95e8\",\"m\u00e9n\"), \"\u3002\"],\n        exEn: \"It's a bit cold outside, close the door quickly.\" },\n      { t: \"\u6625\u6372\", s: \"\u6625\u5377\", p: \"ch\u016bnju\u01cen\", pos: \"N\", meaning: \"spring rolls\",\n        ex: [W(\"\u5979\",\"\u5979\",\"T\u0101\"), W(\"\u5e36\",\"\u5e26\",\"d\u00e0i\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u8d8a\u5357\",\"\u8d8a\u5357\",\"Yu\u00e8n\u00e1n\"), W(\"\u6625\u6372\",\"\u6625\u5377\",\"ch\u016bnju\u01cen\"), W(\"\u4f86\",\"\u6765\",\"l\u00e1i\"), \"\u3002\"],\n        exEn: \"She brought Vietnamese spring rolls.\" },\n      { t: \"\u6ce1\u83dc\", s: \"\u6ce1\u83dc\", p: \"p\u00e0oc\u00e0i\", pos: \"N\", meaning: \"kimchi, pickled vegetables\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u97d3\u570b\",\"\u97e9\u56fd\",\"H\u00e1ngu\u00f3\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\u3002\"],\n        exEn: \"He made Korean kimchi.\" },\n      { t: \"\u98ef\u5ef3\", s: \"\u996d\u5385\", p: \"f\u00e0nt\u012bng\", pos: \"N\", meaning: \"dining room\",\n        ex: [W(\"\u5927\u5bb6\",\"\u5927\u5bb6\",\"D\u00e0ji\u0101\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u98ef\u5ef3\",\"\u996d\u5385\",\"f\u00e0nt\u012bng\"), W(\"\u7b49\",\"\u7b49\",\"d\u011bng\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), \"\u3002\"],\n        exEn: \"Everyone is waiting for you in the dining room.\" },\n      { t: \"\u4e0b\", s: \"\u4e0b\", p: \"xi\u00e0\", pos: \"Ptc\", meaning: \"to have enough space to accommodate\",\n        ex: [W(\"\u9019\",\"\u8fd9\",\"Zh\u00e8\"), W(\"\u5f35\",\"\u5f20\",\"zh\u0101ng\"), W(\"\u684c\u5b50\",\"\u684c\u5b50\",\"zhu\u014dzi\"), W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u4e0b\",\"\u4e0b\",\"xi\u00e0\"), W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u98df\u7269\",\"\u98df\u7269\",\"sh\u00edw\u00f9\"), \"\u3002\"],\n        exEn: \"This table has enough room for all this food.\" },\n      { t: \"\u6d17\", s: \"\u6d17\", p: \"x\u01d0\", pos: \"V\", meaning: \"to wash\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u6d17\",\"\u6d17\",\"x\u01d0\"), W(\"\u624b\",\"\u624b\",\"sh\u01d2u\"), \"\u3002\"],\n        exEn: \"I'll go wash my hands first.\" },\n      { t: \"\u505a\u83dc\", s: \"\u505a\u83dc\", p: \"zu\u00f2c\u00e0i\", pos: \"V-sep\", meaning: \"to cook\",\n        ex: [W(\"\u4f60\",\"\u4f60\",\"N\u01d0\"), W(\"\u4eca\u5929\",\"\u4eca\u5929\",\"j\u012bnti\u0101n\"), W(\"\u505a\u83dc\",\"\u505a\u83dc\",\"zu\u00f2c\u00e0i\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u4e45\",\"\u4e45\",\"ji\u01d4\"), W(\"\u5427\",\"\u5427\",\"ba\"), \"\uff1f\"],\n        exEn: \"You've been cooking for a long time today, haven't you?\" },\n      { t: \"\u6c34\u9903\", s: \"\u6c34\u997a\", p: \"shu\u01d0ji\u01ceo\", pos: \"N\", meaning: \"dumplings (when boiled in water)\",\n        ex: [W(\"\u6211\u5011\",\"\u6211\u4eec\",\"W\u01d2men\"), W(\"\u4eca\u5929\",\"\u4eca\u5929\",\"j\u012bnti\u0101n\"), W(\"\u5403\",\"\u5403\",\"ch\u012b\"), W(\"\u6c34\u9903\",\"\u6c34\u997a\",\"shu\u01d0ji\u01ceo\"), \"\u3002\"],\n        exEn: \"We are eating boiled dumplings today.\" },\n      { t: \"\u716e\", s: \"\u716e\", p: \"zh\u01d4\", pos: \"V\", meaning: \"to cook, to boil\",\n        ex: [W(\"\u6c34\u9903\",\"\u6c34\u997a\",\"Shu\u01d0ji\u01ceo\"), W(\"\u716e\",\"\u716e\",\"zh\u01d4\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u6c34\",\"\u6c34\",\"shu\u01d0\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u5920\",\"\u591f\",\"g\u00f2u\"), W(\"\u591a\",\"\u591a\",\"du\u014d\"), \"\u3002\"],\n        exEn: \"When boiling dumplings, there needs to be enough water.\" },\n      { t: \"\u58de\", s: \"\u574f\", p: \"hu\u00e0i\", pos: \"Vp\", meaning: \"to go bad\",\n        ex: [W(\"\u9019\",\"\u8fd9\",\"Zh\u00e8\"), W(\"\u4e9b\",\"\u4e9b\",\"xi\u0113\"), W(\"\u83dc\",\"\u83dc\",\"c\u00e0i\"), W(\"\u58de\",\"\u574f\",\"hu\u00e0i\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"This dish has gone bad.\" },\n      { t: \"\u7834\", s: \"\u7834\", p: \"p\u00f2\", pos: \"Vp\", meaning: \"to break, to split open\",\n        ex: [W(\"\u5305\",\"\u5305\",\"B\u0101o\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u592a\",\"\u592a\",\"t\u00e0i\"), W(\"\u6241\",\"\u6241\",\"bi\u01cen\"), W(\"\u5bb9\u6613\",\"\u5bb9\u6613\",\"r\u00f3ngy\u00ec\"), W(\"\u716e\",\"\u716e\",\"zh\u01d4\"), W(\"\u7834\",\"\u7834\",\"p\u00f2\"), \"\u3002\"],\n        exEn: \"If wrapped too flat, it will easily split open when cooked.\" },\n      { t: \"\u9921\u5152\", s: \"\u9985\u513f\", p: \"xi\u00e0nr\", pos: \"N\", meaning: \"filling\",\n        ex: [W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"Zh\u00e8xi\u0113\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u9921\u5152\",\"\u9985\u513f\",\"xi\u00e0nr\"), W(\"\u662f\",\"\u662f\",\"sh\u00ec\"), W(\"\u8c6c\u8089\",\"\u732a\u8089\",\"zh\u016br\u00f2u\"), \"\u3002\"],\n        exEn: \"The filling of these dumplings is pork.\" },\n      { t: \"\u6241\", s: \"\u6241\", p: \"bi\u01cen\", pos: \"Vs\", meaning: \"flat\",\n        ex: [W(\"\u4e0d\u8981\",\"\u4e0d\u8981\",\"B\u00fay\u00e0o\"), W(\"\u5305\",\"\u5305\",\"b\u0101o\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u592a\",\"\u592a\",\"t\u00e0i\"), W(\"\u6241\",\"\u6241\",\"bi\u01cen\"), \"\u3002\"],\n        exEn: \"Don't wrap it too flat.\" },\n      { t: \"\u6750\u6599\", s: \"\u6750\u6599\", p: \"c\u00e1ili\u00e0o\", pos: \"N\", meaning: \"ingredients\",\n        ex: [W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"Zh\u00e8xi\u0113\"), W(\"\u6750\u6599\",\"\u6750\u6599\",\"c\u00e1ili\u00e0o\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u7c21\u55ae\",\"\u7b80\u5355\",\"ji\u01cend\u0101n\"), \"\u3002\"],\n        exEn: \"These ingredients are very simple.\" },\n      { t: \"\u9053\", s: \"\u9053\", p: \"d\u00e0o\", pos: \"M\", meaning: \"measure word for dishes of food\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ed\"), W(\"\u9053\",\"\u9053\",\"d\u00e0o\"), W(\"\u9178\u8fa3\u6e6f\",\"\u9178\u8fa3\u6c64\",\"su\u0101nl\u00e0t\u0101ng\"), \"\u3002\"],\n        exEn: \"I made a hot and sour soup.\" },\n      { t: \"\u98fd\", s: \"\u9971\", p: \"b\u01ceo\", pos: \"Vs\", meaning: \"to have eaten enough, to be full\",\n        ex: [W(\"\u5e0c\u671b\",\"\u5e0c\u671b\",\"X\u012bw\u00e0ng\"), W(\"\u5927\u5bb6\",\"\u5927\u5bb6\",\"d\u00e0ji\u0101\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u5403\",\"\u5403\",\"ch\u012b\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u98fd\",\"\u9971\",\"b\u01ceo\"), \"\u3002\"],\n        exEn: \"I hope everyone eats their fill.\" },\n      { t: \"\u5149\", s: \"\u5149\", p: \"gu\u0101ng\", pos: \"Ptc\", meaning: \"to be finished, none left\",\n        ex: [W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"Ji\u01ceozi\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u88ab\",\"\u88ab\",\"b\u00e8i\"), W(\"\u4f60\u5011\",\"\u4f60\u4eec\",\"n\u01d0men\"), W(\"\u5403\",\"\u5403\",\"ch\u012b\"), W(\"\u5149\",\"\u5149\",\"gu\u0101ng\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"The dumplings were all eaten up by you all.\" },\n      { t: \"\u934b\u5b50\", s: \"\u9505\u5b50\", p: \"gu\u014dzi\", pos: \"N\", meaning: \"pot, kettle, pan, wok\",\n        ex: [W(\"\u7897\u7b77\",\"\u7897\u7b77\",\"W\u01cenku\u00e0i\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u934b\u5b50\",\"\u9505\u5b50\",\"gu\u014dzi\"), W(\"\u65c1\u908a\",\"\u65c1\u8fb9\",\"p\u00e1ngbi\u0101n\"), \"\u3002\"],\n        exEn: \"The bowls and chopsticks are next to the pot.\" },\n      { t: \"\u7b77\u5b50\", s: \"\u7b77\u5b50\", p: \"ku\u00e0izi\", pos: \"N\", meaning: \"chopsticks\",\n        ex: [W(\"\u4f60\",\"\u4f60\",\"N\u01d0\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u5e6b\",\"\u5e2e\",\"b\u0101ng\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u64fa\",\"\u6446\",\"b\u01cei\"), W(\"\u7897\",\"\u7897\",\"w\u01cen\"), W(\"\u8ddf\",\"\u8ddf\",\"g\u0113n\"), W(\"\u7b77\u5b50\",\"\u7b77\u5b50\",\"ku\u00e0izi\"), \"\u3002\"],\n        exEn: \"Please set out the bowls and chopsticks for me first.\" },\n      { t: \"\u7897\", s: \"\u7897\", p: \"w\u01cen\", pos: \"N\", meaning: \"bowl\",\n        ex: [W(\"\u7897\",\"\u7897\",\"W\u01cen\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), WD(\"\u54ea\u88e1\",\"\u54ea\u91cc\",\"n\u01cel\u01d0\",\"n\u01celi\"), \"\uff1f\"],\n        exEn: \"Where is the bowl?\" }\n    ],\n    'd210-word-list-2': [\n      { t: \"\u97d3\u570b\", s: \"\u97e9\u56fd\", p: \"H\u00e1ngu\u00f3\", pos: \"Names\", meaning: \"(South) Korea\",\n        ex: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u662f\",\"\u662f\",\"sh\u00ec\"), W(\"\u97d3\u570b\",\"\u97e9\u56fd\",\"H\u00e1ngu\u00f3\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\u3002\"],\n        exEn: \"What he made is Korean kimchi.\" },\n      { t: \"\u770b\u4e0d\u51fa\u4f86\", s: \"\u770b\u4e0d\u51fa\u6765\", p: \"k\u00e0n b\u00f9 ch\u016bl\u00e1i\", pos: \"Phrase\", meaning: \"It does not occur to me that..., can't tell (i.e., ascertain)\",\n        ex: [W(\"\u770b\u4e0d\u51fa\u4f86\",\"\u770b\u4e0d\u51fa\u6765\",\"K\u00e0n b\u00f9 ch\u016bl\u00e1i\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\u3002\"],\n        exEn: \"I would never have guessed you could make kimchi.\" },\n      { t: \"\u9178\u8fa3\u6e6f\", s: \"\u9178\u8fa3\u6c64\", p: \"su\u0101nl\u00e0 t\u0101ng\", pos: \"Phrase\", meaning: \"hot and sour soup\",\n        ex: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u9053\",\"\u9053\",\"d\u00e0o\"), W(\"\u9178\u8fa3\u6e6f\",\"\u9178\u8fa3\u6c64\",\"su\u0101nl\u00e0 t\u0101ng\"), \"\u3002\"],\n        exEn: \"I made a hot and sour soup.\" }\n    ],\n    'd210-word-list-3': [\n      { t: \"\u5b78\u671f\", s: \"\u5b66\u671f\", p: \"xu\u00e9q\u00ed\", pos: \"N\", meaning: \"semester\",\n        ex: [W(\"\u9019\",\"\u8fd9\",\"Zh\u00e8\"), W(\"\u5b78\u671f\",\"\u5b66\u671f\",\"xu\u00e9q\u00ed\"), W(\"\u5feb\",\"\u5feb\",\"ku\u00e0i\"), W(\"\u7d50\u675f\",\"\u7ed3\u675f\",\"ji\u00e9sh\u00f9\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"This semester is almost over.\" },\n      { t: \"\u8d81\", s: \"\u8d81\", p: \"ch\u00e8n\", pos: \"Prep\", meaning: \"while, take advantage of\",\n        ex: [W(\"\u8d81\",\"\u8d81\",\"Ch\u00e8n\"), W(\"\u73fe\u5728\",\"\u73b0\u5728\",\"xi\u00e0nz\u00e0i\"), W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u6642\u9593\",\"\u65f6\u95f4\",\"sh\u00edji\u0101n\"), \"\uff0c\", W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u6d17\",\"\u6d17\",\"x\u01d0\"), W(\"\u624b\",\"\u624b\",\"sh\u01d2u\"), \"\u3002\"],\n        exEn: \"While there is still time, go wash your hands first.\" },\n      { t: \"\u76ae\", s: \"\u76ae\", p: \"p\u00ed\", pos: \"N\", meaning: \"skin, wraps\",\n        ex: [W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"Ji\u01ceozi\"), W(\"\u76ae\",\"\u76ae\",\"p\u00ed\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u6e96\u5099\",\"\u51c6\u5907\",\"zh\u01d4nb\u00e8i\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"The dumpling wrappers are all ready.\" },\n      { t: \"\u5690\", s: \"\u5c1d\", p: \"ch\u00e1ng\", pos: \"V\", meaning: \"to savor, to taste\",\n        ex: [W(\"\u4f60\u5011\",\"\u4f60\u4eec\",\"N\u01d0men\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u5690\",\"\u5c1d\",\"ch\u00e1ng\"), W(\"\u5690\",\"\u5c1d\",\"ch\u00e1ng\"), W(\"\u770b\",\"\u770b\",\"k\u00e0n\"), W(\"\u6771\u5065\",\"\u4e1c\u5065\",\"D\u014dngji\u00e0n\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\u3002\"],\n        exEn: \"Try the kimchi Dongjian made first.\" },\n      { t: \"\u5927\u767d\u83dc\", s: \"\u5927\u767d\u83dc\", p: \"d\u00e0b\u00e1ic\u00e0i\", pos: \"N\", meaning: \"Chinese cabbage\",\n        ex: [W(\"\u5148\",\"\u5148\",\"Xi\u0101n\"), W(\"\u628a\",\"\u628a\",\"b\u01ce\"), W(\"\u5927\u767d\u83dc\",\"\u5927\u767d\u83dc\",\"d\u00e0b\u00e1ic\u00e0i\"), W(\"\u6d17\",\"\u6d17\",\"x\u01d0\"), W(\"\u4e7e\u6de8\",\"\u5e72\u51c0\",\"g\u0101nj\u00ecng\"), \"\u3002\"],\n        exEn: \"First wash the Chinese cabbage clean.\" },\n      { t: \"\u52a0\", s: \"\u52a0\", p: \"ji\u0101\", pos: \"V\", meaning: \"to add\",\n        ex: [W(\"\u518d\",\"\u518d\",\"Z\u00e0i\"), W(\"\u52a0\",\"\u52a0\",\"ji\u0101\"), W(\"\u4e00\u9ede\",\"\u4e00\u70b9\",\"y\u00ecdi\u01cen\"), W(\"\u9e7d\",\"\u76d0\",\"y\u00e1n\"), \"\u3002\"],\n        exEn: \"Add a bit more salt.\" },\n      { t: \"\u9e7d\", s: \"\u76d0\", p: \"y\u00e1n\", pos: \"N\", meaning: \"salt\",\n        ex: [W(\"\u8c6c\u8089\",\"\u732a\u8089\",\"Zh\u016br\u00f2u\"), W(\"\u52a0\",\"\u52a0\",\"ji\u0101\"), W(\"\u4e00\u9ede\",\"\u4e00\u70b9\",\"y\u00ecdi\u01cen\"), W(\"\u9e7d\",\"\u76d0\",\"y\u00e1n\"), W(\"\u6bd4\u8f03\",\"\u6bd4\u8f83\",\"b\u01d0ji\u00e0o\"), W(\"\u597d\u5403\",\"\u597d\u5403\",\"h\u01ceoch\u012b\"), \"\u3002\"],\n        exEn: \"Pork tastes better with a bit of salt added.\" },\n      { t: \"\u62cc\", s: \"\u62cc\", p: \"b\u00e0n\", pos: \"V\", meaning: \"to stir, to mix\",\n        ex: [W(\"\u52a0\",\"\u52a0\",\"Ji\u0101\"), W(\"\u9e7d\",\"\u76d0\",\"y\u00e1n\"), W(\"\u4ee5\u5f8c\",\"\u4ee5\u540e\",\"y\u01d0h\u00f2u\"), W(\"\u62cc\",\"\u62cc\",\"b\u00e0n\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u62cc\",\"\u62cc\",\"b\u00e0n\"), \"\u3002\"],\n        exEn: \"After adding salt, mix it a bit.\" },\n      { t: \"\u8fa3\u6912\", s: \"\u8fa3\u6912\", p: \"l\u00e0ji\u0101o\", pos: \"N\", meaning: \"chili peppers\",\n        ex: [W(\"\u518d\",\"\u518d\",\"Z\u00e0i\"), W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u4e00\u9ede\",\"\u4e00\u70b9\",\"y\u00ecdi\u01cen\"), W(\"\u8fa3\u6912\",\"\u8fa3\u6912\",\"l\u00e0ji\u0101o\"), \"\u3002\"],\n        exEn: \"Then add a bit of chili pepper.\" },\n      { t: \"\u8abf\u5473\u6599\", s: \"\u8c03\u5473\u6599\", p: \"ti\u00e1ow\u00e8ili\u00e0o\", pos: \"N\", meaning: \"seasonings\",\n        ex: [W(\"\u653e\",\"\u653e\",\"F\u00e0ng\"), W(\"\u8fa3\u6912\",\"\u8fa3\u6912\",\"l\u00e0ji\u0101o\"), W(\"\u548c\",\"\u548c\",\"h\u00e0n\"), W(\"\u8abf\u5473\u6599\",\"\u8c03\u5473\u6599\",\"ti\u00e1ow\u00e8ili\u00e0o\"), \"\u3002\"],\n        exEn: \"Add chili pepper and seasonings.\" },\n      { t: \"\u88dd\", s: \"\u88c5\", p: \"zhu\u0101ng\", pos: \"V\", meaning: \"to pack into\",\n        ex: [W(\"\u88dd\",\"\u88c5\",\"Zhu\u0101ng\"), W(\"\u9032\",\"\u8fdb\",\"j\u00ecn\"), W(\"\u73bb\u7483\",\"\u73bb\u7483\",\"b\u014dl\u00ed\"), W(\"\u7f50\",\"\u7f50\",\"gu\u00e0n\"), W(\"\u88e1\",\"\u91cc\",\"l\u01d0\"), \"\u3002\"],\n        exEn: \"Pack it into a glass jar.\" },\n      { t: \"\u73bb\u7483\", s: \"\u73bb\u7483\", p: \"b\u014dl\u00ed\", pos: \"N\", meaning: \"glass\",\n        ex: [W(\"\u88dd\",\"\u88c5\",\"Zhu\u0101ng\"), W(\"\u9032\",\"\u8fdb\",\"j\u00ecn\"), W(\"\u73bb\u7483\",\"\u73bb\u7483\",\"b\u014dl\u00ed\"), W(\"\u7f50\",\"\u7f50\",\"gu\u00e0n\"), W(\"\u88e1\",\"\u91cc\",\"l\u01d0\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\"],\n        exEn: \"Just pack it into a glass jar and it's done.\" },\n      { t: \"\u58fd\u53f8\", s: \"\u5bff\u53f8\", p: \"sh\u00f2us\u012b\", pos: \"N\", meaning: \"sushi\",\n        ex: [W(\"\u65e5\u672c\",\"\u65e5\u672c\",\"R\u00ecb\u011bn\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u58fd\u53f8\",\"\u5bff\u53f8\",\"sh\u00f2us\u012b\"), W(\"\u4e5f\",\"\u4e5f\",\"y\u011b\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u5bb9\u6613\",\"\u5bb9\u6613\",\"r\u00f3ngy\u00ec\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), \"\u3002\"],\n        exEn: \"Japanese sushi is also easy to make.\" },\n      { t: \"\u50cf\", s: \"\u50cf\", p: \"xi\u00e0ng\", pos: \"Vst\", meaning: \"such as; like\",\n        ex: [W(\"\u50cf\",\"\u50cf\",\"Xi\u00e0ng\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\u3001\", W(\"\u6625\u6372\",\"\u6625\u5377\",\"ch\u016bnju\u01cen\"), \"\u3001\", W(\"\u58fd\u53f8\",\"\u5bff\u53f8\",\"sh\u00f2us\u012b\"), W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u98df\u7269\",\"\u98df\u7269\",\"sh\u00edw\u00f9\"), \"\u3002\"],\n        exEn: \"Food like kimchi, spring rolls, and sushi.\" },\n      { t: \"\u98df\u7269\", s: \"\u98df\u7269\", p: \"sh\u00edw\u00f9\", pos: \"N\", meaning: \"food\",\n        ex: [W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"Zh\u00e8xi\u0113\"), W(\"\u98df\u7269\",\"\u98df\u7269\",\"sh\u00edw\u00f9\"), W(\"\u770b\u8d77\u4f86\",\"\u770b\u8d77\u6765\",\"k\u00e0nq\u01d0l\u00e1i\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), W(\"\u597d\u5403\",\"\u597d\u5403\",\"h\u01ceoch\u012b\"), \"\u3002\"],\n        exEn: \"This food all looks delicious.\" }\n    ],\n    'd210-word-list-4': [\n      { t: \"\u505a\u8d77\u4f86\", s: \"\u505a\u8d77\u6765\", p: \"zu\u00f2 q\u01d0l\u00e1i\", pos: \"Phrase\", meaning: \"when undertaken, to do\",\n        ex: [W(\"\u505a\u8d77\u4f86\",\"\u505a\u8d77\u6765\",\"Zu\u00f2 q\u01d0l\u00e1i\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u96e3\",\"\u96be\",\"n\u00e1n\"), \"\u3002\"],\n        exEn: \"It's not hard to make.\" }\n    ]\n  };\n\n  var DIALOGUE = [\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u6b61\u8fce\",\"\u6b22\u8fce\",\"Hu\u0101ny\u00edng\"), W(\"\u5230\",\"\u5230\",\"d\u00e0o\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u5bb6\",\"\u5bb6\",\"ji\u0101\"), W(\"\u4f86\",\"\u6765\",\"l\u00e1i\"), W(\"\u5305\",\"\u5305\",\"b\u0101o\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), \"\uff01\"],\n      en: \"Welcome to my place to make dumplings!\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u8b1d\u8b1d\",\"\u8c22\u8c22\",\"Xi\u00e8xie\"), W(\"\u8001\u5e2b\",\"\u8001\u5e08\",\"l\u01ceosh\u012b\"), \"\uff0c\", W(\"\u8acb\u554f\",\"\u8bf7\u95ee\",\"q\u01d0ngw\u00e8n\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u812b\",\"\u8131\",\"tu\u014d\"), W(\"\u978b\",\"\u978b\",\"xi\u00e9\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"Thank you, teacher, should I take off my shoes first?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u5c0d\",\"\u5bf9\",\"Du\u00ec\"), \"\uff0c\", W(\"\u8acb\",\"\u8bf7\",\"q\u01d0ng\"), W(\"\u812b\",\"\u8131\",\"tu\u014d\"), W(\"\u978b\",\"\u978b\",\"xi\u00e9\"), \"\uff0c\", W(\"\u7136\u5f8c\",\"\u7136\u540e\",\"r\u00e1nh\u00f2u\"), W(\"\u9032\u4f86\",\"\u8fdb\u6765\",\"j\u00ecnl\u00e1i\"), \"\uff0c\", W(\"\u8a18\u5f97\",\"\u8bb0\u5f97\",\"j\u00ecde\"), W(\"\u95dc\",\"\u5173\",\"gu\u0101n\"), W(\"\u9580\",\"\u95e8\",\"m\u00e9n\"), \"\uff0c\", W(\"\u5916\u9762\",\"\u5916\u9762\",\"w\u00e0imi\u00e0n\"), W(\"\u6709\u9ede\",\"\u6709\u70b9\",\"y\u01d2udi\u01cen\"), W(\"\u51b7\",\"\u51b7\",\"l\u011bng\"), \"\u3002\"],\n      en: \"Right, please take off your shoes, then come in \u2014 remember to close the door, it's a bit cold outside.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u597d\",\"\u597d\",\"H\u01ceo\"), W(\"\u7684\",\"\u7684\",\"de\"), \"\u3002\", W(\"\u6771\u5065\",\"\u4e1c\u5065\",\"D\u014dngji\u00e0n\"), W(\"\u8ddf\",\"\u8ddf\",\"g\u0113n\"), W(\"\u6708\u7f8e\",\"\u6708\u7f8e\",\"Yu\u00e8m\u011bi\"), W(\"\u5462\",\"\u5462\",\"ne\"), \"\uff1f\", W(\"\u4ed6\u5011\",\"\u4ed6\u4eec\",\"t\u0101men\"), W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u6c92\",\"\u6ca1\",\"m\u00e9i\"), W(\"\u5230\",\"\u5230\",\"d\u00e0o\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"OK. What about Dongjian and Yuemei? Haven't they arrived yet?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u4ed6\u5011\",\"\u4ed6\u4eec\",\"T\u0101men\"), W(\"\u7b49\",\"\u7b49\",\"d\u011bng\"), W(\"\u4e00\u4e0b\",\"\u4e00\u4e0b\",\"y\u00edxi\u00e0\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u5230\",\"\u5230\",\"d\u00e0o\"), \"\uff0c\", W(\"\u7f8e\u73b2\",\"\u7f8e\u73b2\",\"M\u011bil\u00edng\"), W(\"\u5df2\u7d93\",\"\u5df2\u7ecf\",\"y\u01d0j\u012bng\"), W(\"\u5230\",\"\u5230\",\"d\u00e0o\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u4f46\u662f\",\"\u4f46\u662f\",\"d\u00e0nsh\u00ec\"), W(\"\u5979\",\"\u5979\",\"t\u0101\"), W(\"\u73fe\u5728\",\"\u73b0\u5728\",\"xi\u00e0nz\u00e0i\"), W(\"\u53bb\",\"\u53bb\",\"q\u00f9\"), W(\"\u8cb7\",\"\u4e70\",\"m\u01cei\"), W(\"\u6c34\u679c\",\"\u6c34\u679c\",\"shu\u01d0gu\u01d2\"), \"\u3002\"],\n      en: \"They'll arrive in a bit \u2014 Meiling is already here, but she's gone out to buy fruit right now.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u8001\u5e2b\",\"\u8001\u5e08\",\"L\u01ceosh\u012b\"), W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u5df2\u7d93\",\"\u5df2\u7ecf\",\"y\u01d0j\u012bng\"), W(\"\u628a\",\"\u628a\",\"b\u01ce\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), W(\"\u76ae\",\"\u76ae\",\"p\u00ed\"), W(\"\u8ddf\",\"\u8ddf\",\"g\u0113n\"), W(\"\u9921\u5152\",\"\u9985\u513f\",\"xi\u00e0nr\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u6e96\u5099\",\"\u51c6\u5907\",\"zh\u01d4nb\u00e8i\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\", W(\"\u9700\u8981\",\"\u9700\u8981\",\"x\u016by\u00e0o\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u5e6b\u5fd9\",\"\u5e2e\u5fd9\",\"b\u0101ngm\u00e1ng\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"Teacher, have you already got the dumpling wrappers and filling all ready? Do you need my help?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u90fd\",\"\u90fd\",\"D\u014du\"), W(\"\u6e96\u5099\",\"\u51c6\u5907\",\"zh\u01d4nb\u00e8i\"), W(\"\u597d\",\"\u597d\",\"h\u01ceo\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\uff0c\", W(\"\u6750\u6599\",\"\u6750\u6599\",\"c\u00e1ili\u00e0o\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u7c21\u55ae\",\"\u7b80\u5355\",\"ji\u01cend\u0101n\"), \"\uff0c\", W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u770b\u5f97\u51fa\u4f86\",\"\u770b\u5f97\u51fa\u6765\",\"k\u00e0n b\u00f9 ch\u016bl\u00e1i\"), W(\"\u9921\u5152\",\"\u9985\u513f\",\"xi\u00e0nr\"), W(\"\u88e1\u9762\",\"\u91cc\u9762\",\"l\u01d0mi\u00e0n\"), W(\"\u52a0\",\"\u52a0\",\"ji\u0101\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u4ec0\u9ebc\",\"\u4ec0\u4e48\",\"sh\u00e9nme\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"All ready \u2014 the ingredients are simple. Can you tell what's in the filling?\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u770b\u4e0d\u51fa\u4f86\",\"\u770b\u4e0d\u51fa\u6765\",\"K\u00e0n b\u00f9 ch\u016bl\u00e1i\"), \"\u3002\"],\n      en: \"I can't tell.\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u8c6c\u8089\",\"\u732a\u8089\",\"Zh\u016br\u00f2u\"), \"\u3001\", W(\"\u83dc\",\"\u83dc\",\"c\u00e0i\"), \"\u3001\", W(\"\u91ac\u6cb9\",\"\u9171\u6cb9\",\"ji\u00e0ngy\u00f3u\"), \"\u3001\", W(\"\u8525\",\"\u8471\",\"c\u014dng\"), \"\uff0c\", W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u52a0\",\"\u52a0\",\"ji\u0101\"), W(\"\u4e00\u9ede\",\"\u4e00\u70b9\",\"y\u00ecdi\u01cen\"), W(\"\u9e7d\",\"\u76d0\",\"y\u00e1n\"), \"\uff0c\", W(\"\u9019\u6a23\",\"\u8fd9\u6837\",\"zh\u00e8y\u00e0ng\"), W(\"\u6bd4\u8f03\",\"\u6bd4\u8f83\",\"b\u01d0ji\u00e0o\"), W(\"\u597d\u5403\",\"\u597d\u5403\",\"h\u01ceoch\u012b\"), \"\u3002\"],\n      en: \"Pork, vegetables, soy sauce, green onion, and you add a bit of salt \u2014 it tastes better this way.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u90a3\",\"\u90a3\",\"N\u00e0\"), W(\"\u6211\u5011\",\"\u6211\u4eec\",\"w\u01d2men\"), W(\"\u600e\u9ebc\",\"\u600e\u4e48\",\"z\u011bnme\"), W(\"\u5305\",\"\u5305\",\"b\u0101o\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), \"\uff1f\"],\n      en: \"So how do we wrap the dumplings?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u5148\",\"\u5148\",\"Xi\u0101n\"), W(\"\u628a\",\"\u628a\",\"b\u01ce\"), W(\"\u76ae\",\"\u76ae\",\"p\u00ed\"), W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u624b\",\"\u624b\",\"sh\u01d2u\"), W(\"\u4e0a\",\"\u4e0a\",\"sh\u00e0ng\"), \"\uff0c\", W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u4e00\u9ede\",\"\u4e00\u70b9\",\"y\u00ecdi\u01cen\"), W(\"\u9921\u5152\",\"\u9985\u513f\",\"xi\u00e0nr\"), \"\uff0c\", W(\"\u518d\",\"\u518d\",\"z\u00e0i\"), W(\"\u628a\",\"\u628a\",\"b\u01ce\"), W(\"\u908a\",\"\u8fb9\",\"bi\u0101n\"), W(\"\u634f\",\"\u634f\",\"ni\u0113\"), W(\"\u8d77\u4f86\",\"\u8d77\u6765\",\"q\u01d0l\u00e1i\"), \"\uff0c\", W(\"\u4e0d\u8981\",\"\u4e0d\u8981\",\"b\u00fay\u00e0o\"), W(\"\u634f\",\"\u634f\",\"ni\u0113\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u592a\",\"\u592a\",\"t\u00e0i\"), W(\"\u7528\u529b\",\"\u7528\u529b\",\"y\u00f2ngl\u00ec\"), \"\uff0c\", W(\"\u8981\u4e0d\u7136\",\"\u8981\u4e0d\u7136\",\"y\u00e0ob\u00f9r\u00e1n\"), W(\"\u5bb9\u6613\",\"\u5bb9\u6613\",\"r\u00f3ngy\u00ec\"), W(\"\u7834\",\"\u7834\",\"p\u00f2\"), \"\u3002\"],\n      en: \"First put the wrapper on your hand, add a bit of filling, then pinch the edge together \u2014 don't pinch too hard, otherwise it'll easily split open.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u716e\",\"\u716e\",\"Zh\u01d4\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), W(\"\u5462\",\"\u5462\",\"ne\"), \"\uff1f\"],\n      en: \"What about when cooking them?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u6c34\u9903\",\"\u6c34\u997a\",\"Shu\u01d0ji\u01ceo\"), W(\"\u716e\",\"\u716e\",\"zh\u01d4\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6642\u5019\",\"\u65f6\u5019\",\"sh\u00edh\u00f2u\"), \"\uff0c\", W(\"\u6c34\",\"\u6c34\",\"shu\u01d0\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u5920\",\"\u591f\",\"g\u00f2u\"), W(\"\u591a\",\"\u591a\",\"du\u014d\"), \"\uff0c\", W(\"\u8981\u4e0d\u7136\",\"\u8981\u4e0d\u7136\",\"y\u00e0ob\u00f9r\u00e1n\"), W(\"\u76ae\",\"\u76ae\",\"p\u00ed\"), W(\"\u5bb9\u6613\",\"\u5bb9\u6613\",\"r\u00f3ngy\u00ec\"), W(\"\u716e\",\"\u716e\",\"zh\u01d4\"), W(\"\u7834\",\"\u7834\",\"p\u00f2\"), \"\u3002\"],\n      en: \"When boiling dumplings, there needs to be enough water, otherwise the wrapper will easily split open.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u9664\u4e86\",\"\u9664\u4e86\",\"Ch\u00fale\"), W(\"\u9903\u5b50\",\"\u997a\u5b50\",\"ji\u01ceozi\"), \"\uff0c\", W(\"\u4eca\u5929\",\"\u4eca\u5929\",\"j\u012bnti\u0101n\"), W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u5225\u7684\",\"\u522b\u7684\",\"bi\u00e9de\"), W(\"\u83dc\",\"\u83dc\",\"c\u00e0i\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"Besides dumplings, is there other food today?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u6771\u5065\",\"\u4e1c\u5065\",\"D\u014dngji\u00e0n\"), W(\"\u8aaa\",\"\u8bf4\",\"shu\u014d\"), W(\"\u8981\",\"\u8981\",\"y\u00e0o\"), W(\"\u5e36\",\"\u5e26\",\"d\u00e0i\"), W(\"\u81ea\u5df1\",\"\u81ea\u5df1\",\"z\u00ecj\u01d0\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u97d3\u570b\",\"\u97e9\u56fd\",\"H\u00e1ngu\u00f3\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\uff0c\", W(\"\u6708\u7f8e\",\"\u6708\u7f8e\",\"Yu\u00e8m\u011bi\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u5e36\",\"\u5e26\",\"d\u00e0i\"), W(\"\u8d8a\u5357\",\"\u8d8a\u5357\",\"Yu\u00e8n\u00e1n\"), W(\"\u6625\u6372\",\"\u6625\u5377\",\"ch\u016bnju\u01cen\"), \"\uff0c\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u4e86\",\"\u4e86\",\"le\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ed\"), W(\"\u9053\",\"\u9053\",\"d\u00e0o\"), W(\"\u9178\u8fa3\u6e6f\",\"\u9178\u8fa3\u6c64\",\"su\u0101nl\u00e0 t\u0101ng\"), \"\u3002\"],\n      en: \"Dongjian said he's bringing kimchi he made himself, Yuemei will bring Vietnamese spring rolls, and I also made a hot and sour soup.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u6771\u5065\",\"\u4e1c\u5065\",\"D\u014dngji\u00e0n\"), W(\"\u81ea\u5df1\",\"\u81ea\u5df1\",\"z\u00ecj\u01d0\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\uff1f\", W(\"\u4e0d\u6703\",\"\u4e0d\u4f1a\",\"b\u00fahu\u00ec\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u9ebb\u7169\",\"\u9ebb\u70e6\",\"m\u00e1f\u00e1n\"), W(\"\u55ce\",\"\u5417\",\"ma\"), \"\uff1f\"],\n      en: \"Dongjian makes kimchi himself? Isn't that a lot of trouble?\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u4ed6\",\"\u4ed6\",\"T\u0101\"), W(\"\u8aaa\",\"\u8bf4\",\"shu\u014d\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u9ebb\u7169\",\"\u9ebb\u70e6\",\"m\u00e1f\u00e1n\"), \"\uff0c\", W(\"\u53ea\u8981\",\"\u53ea\u8981\",\"zh\u01d0y\u00e0o\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u628a\",\"\u628a\",\"b\u01ce\"), W(\"\u5927\u767d\u83dc\",\"\u5927\u767d\u83dc\",\"d\u00e0b\u00e1ic\u00e0i\"), W(\"\u6d17\",\"\u6d17\",\"x\u01d0\"), W(\"\u4e7e\u6de8\",\"\u5e72\u51c0\",\"g\u0101nj\u00ecng\"), \"\uff0c\", W(\"\u52a0\",\"\u52a0\",\"ji\u0101\"), W(\"\u9e7d\",\"\u76d0\",\"y\u00e1n\"), W(\"\u62cc\",\"\u62cc\",\"b\u00e0n\"), W(\"\u4e00\",\"\u4e00\",\"y\u00ec\"), W(\"\u62cc\",\"\u62cc\",\"b\u00e0n\"), \"\uff0c\", W(\"\u518d\",\"\u518d\",\"z\u00e0i\"), W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u8fa3\u6912\",\"\u8fa3\u6912\",\"l\u00e0ji\u0101o\"), W(\"\u548c\",\"\u548c\",\"h\u00e0n\"), W(\"\u8abf\u5473\u6599\",\"\u8c03\u5473\u6599\",\"ti\u00e1ow\u00e8ili\u00e0o\"), \"\uff0c\", W(\"\u6700\u5f8c\",\"\u6700\u540e\",\"zu\u00ech\u00f2u\"), W(\"\u88dd\",\"\u88c5\",\"zhu\u0101ng\"), W(\"\u9032\",\"\u8fdb\",\"j\u00ecn\"), W(\"\u73bb\u7483\",\"\u73bb\u7483\",\"b\u014dl\u00ed\"), W(\"\u7f50\",\"\u7f50\",\"gu\u00e0n\"), W(\"\u88e1\",\"\u91cc\",\"l\u01d0\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\", W(\"\u50cf\",\"\u50cf\",\"xi\u00e0ng\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), \"\u3001\", W(\"\u6625\u6372\",\"\u6625\u5377\",\"ch\u016bnju\u01cen\"), \"\u3001\", W(\"\u65e5\u672c\",\"\u65e5\u672c\",\"R\u00ecb\u011bn\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u58fd\u53f8\",\"\u5bff\u53f8\",\"sh\u00f2us\u012b\"), \"\uff0c\", W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u6750\u6599\",\"\u6750\u6599\",\"c\u00e1ili\u00e0o\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u53f0\u7063\",\"\u53f0\u6e7e\",\"T\u00e1iw\u0101n\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u6bd4\u8f03\",\"\u6bd4\u8f83\",\"b\u01d0ji\u00e0o\"), W(\"\u5bb9\u6613\",\"\u5bb9\u6613\",\"r\u00f3ngy\u00ec\"), W(\"\u8cb7\u5f97\u5230\",\"\u4e70\u5f97\u5230\",\"m\u01ceided\u00e0o\"), \"\u3002\"],\n      en: \"He says it's not much trouble \u2014 just wash the Chinese cabbage clean, add salt and mix it, then add chili pepper and seasonings, and finally pack it into a glass jar and it's done. Things like kimchi, spring rolls, and Japanese sushi \u2014 the ingredients are all fairly easy to find in Taiwan.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u6211\",\"\u6211\",\"W\u01d2\"), W(\"\u89ba\u5f97\",\"\u89c9\u5f97\",\"ju\u00e9de\"), W(\"\u807d\u8d77\u4f86\",\"\u542c\u8d77\u6765\",\"t\u012bngq\u01d0l\u00e1i\"), W(\"\u5f88\",\"\u5f88\",\"h\u011bn\"), W(\"\u9ebb\u7169\",\"\u9ebb\u70e6\",\"m\u00e1f\u00e1n\"), \"\u3002\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u60f3\",\"\u60f3\",\"xi\u01ceng\"), W(\"\u8d95\u5feb\",\"\u8d76\u5feb\",\"g\u01cenku\u00e0i\"), W(\"\u5690\",\"\u5c1d\",\"ch\u00e1ng\"), W(\"\u5690\",\"\u5c1d\",\"ch\u00e1ng\"), W(\"\u770b\",\"\u770b\",\"k\u00e0n\"), \"\u3002\"],\n      en: \"It sounds like a lot of trouble to me. I want to hurry up and give it a try.\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u7b49\",\"\u7b49\",\"D\u011bng\"), W(\"\u4e00\u4e0b\",\"\u4e00\u4e0b\",\"y\u00edxi\u00e0\"), W(\"\u5927\u5bb6\",\"\u5927\u5bb6\",\"d\u00e0ji\u0101\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u4f86\",\"\u6765\",\"l\u00e1i\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\uff0c\", W(\"\u6211\u5011\",\"\u6211\u4eec\",\"w\u01d2men\"), W(\"\u5c31\",\"\u5c31\",\"ji\u00f9\"), W(\"\u53ef\u4ee5\",\"\u53ef\u4ee5\",\"k\u011by\u01d0\"), W(\"\u5690\",\"\u5c1d\",\"ch\u00e1ng\"), W(\"\u5690\",\"\u5c1d\",\"ch\u00e1ng\"), W(\"\u770b\",\"\u770b\",\"k\u00e0n\"), W(\"\u6771\u5065\",\"\u4e1c\u5065\",\"D\u014dngji\u00e0n\"), W(\"\u505a\",\"\u505a\",\"zu\u00f2\"), W(\"\u7684\",\"\u7684\",\"de\"), W(\"\u6ce1\u83dc\",\"\u6ce1\u83dc\",\"p\u00e0oc\u00e0i\"), W(\"\u4e86\",\"\u4e86\",\"le\"), \"\u3002\", W(\"\u8d81\",\"\u8d81\",\"ch\u00e8n\"), W(\"\u73fe\u5728\",\"\u73b0\u5728\",\"xi\u00e0nz\u00e0i\"), W(\"\u9084\",\"\u8fd8\",\"h\u00e1i\"), W(\"\u6709\",\"\u6709\",\"y\u01d2u\"), W(\"\u6642\u9593\",\"\u65f6\u95f4\",\"sh\u00edji\u0101n\"), \"\uff0c\", W(\"\u4f60\",\"\u4f60\",\"n\u01d0\"), W(\"\u5148\",\"\u5148\",\"xi\u0101n\"), W(\"\u5e6b\",\"\u5e2e\",\"b\u0101ng\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u64fa\",\"\u6446\",\"b\u01cei\"), W(\"\u7897\",\"\u7897\",\"w\u01cen\"), W(\"\u8ddf\",\"\u8ddf\",\"g\u0113n\"), W(\"\u7b77\u5b50\",\"\u7b77\u5b50\",\"ku\u00e0izi\"), \"\u3002\"],\n      en: \"Once everyone has arrived, we can try the kimchi Dongjian made. While there's still time, please set out the bowls and chopsticks for me first.\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u597d\",\"\u597d\",\"H\u01ceo\"), \"\uff0c\", W(\"\u6d17\",\"\u6d17\",\"x\u01d0\"), W(\"\u5b8c\",\"\u5b8c\",\"w\u00e1n\"), W(\"\u624b\",\"\u624b\",\"sh\u01d2u\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u99ac\u4e0a\",\"\u9a6c\u4e0a\",\"m\u01cesh\u00e0ng\"), W(\"\u56de\u4f86\",\"\u56de\u6765\",\"hu\u00edl\u00e1i\"), \"\u3002\"],\n      en: \"OK, I'll be right back after washing my hands.\" },\n    { speakerT: \"\u5f35\u8001\u5e2b\", speakerS: \"\u5f20\u8001\u5e08\",\n      tokens: [W(\"\u7897\u7b77\",\"\u7897\u7b77\",\"W\u01cenku\u00e0i\"), W(\"\u5728\",\"\u5728\",\"z\u00e0i\"), W(\"\u934b\u5b50\",\"\u9505\u5b50\",\"gu\u014dzi\"), W(\"\u65c1\u908a\",\"\u65c1\u8fb9\",\"p\u00e1ngbi\u0101n\"), \"\u3002\", W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u5bb6\",\"\u5bb6\",\"ji\u0101\"), W(\"\u684c\u5b50\",\"\u684c\u5b50\",\"zhu\u014dzi\"), W(\"\u4e0d\",\"\u4e0d\",\"b\u00f9\"), W(\"\u5927\",\"\u5927\",\"d\u00e0\"), \"\uff0c\", W(\"\u4f46\u662f\",\"\u4f46\u662f\",\"d\u00e0nsh\u00ec\"), W(\"\u6211\",\"\u6211\",\"w\u01d2\"), W(\"\u60f3\",\"\u60f3\",\"xi\u01ceng\"), W(\"\u9019\u4e9b\",\"\u8fd9\u4e9b\",\"zh\u00e8xi\u0113\"), W(\"\u98df\u7269\",\"\u98df\u7269\",\"sh\u00edw\u00f9\"), W(\"\u61c9\u8a72\",\"\u5e94\u8be5\",\"y\u012bngg\u0101i\"), W(\"\u653e\",\"\u653e\",\"f\u00e0ng\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u4e0b\",\"\u4e0b\",\"xi\u00e0\"), \"\uff0c\", W(\"\u5e0c\u671b\",\"\u5e0c\u671b\",\"x\u012bw\u00e0ng\"), W(\"\u7b49\",\"\u7b49\",\"d\u011bng\"), W(\"\u4e00\u4e0b\",\"\u4e00\u4e0b\",\"y\u00edxi\u00e0\"), W(\"\u5927\u5bb6\",\"\u5927\u5bb6\",\"d\u00e0ji\u0101\"), W(\"\u90fd\",\"\u90fd\",\"d\u014du\"), W(\"\u5403\",\"\u5403\",\"ch\u012b\"), W(\"\u5f97\",\"\u5f97\",\"de\"), W(\"\u98fd\",\"\u9971\",\"b\u01ceo\"), \"\uff01\"],\n      en: \"The bowls and chopsticks are next to the pot. My table isn't big, but I think there should be enough room for all this food \u2014 I hope everyone will be nice and full later!\" },\n    { speakerT: \"\u99ac\u4e01\", speakerS: \"\u9a6c\u4e01\",\n      tokens: [W(\"\u4e00\u5b9a\",\"\u4e00\u5b9a\",\"Y\u00edd\u00ecng\"), W(\"\u6703\",\"\u4f1a\",\"hu\u00ec\"), W(\"\u7684\",\"\u7684\",\"de\"), \"\uff0c\", W(\"\u8b1d\u8b1d\",\"\u8c22\u8c22\",\"xi\u00e8xie\"), W(\"\u8001\u5e2b\",\"\u8001\u5e08\",\"l\u01ceosh\u012b\"), \"\uff01\"],\n      en: \"Definitely \u2014 thank you, teacher!\" }\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=\"d210-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=\"d210-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 PEOPLE = [\n    { t: '\u9ad8\u7f8e\u73b2', s: '\u9ad8\u7f8e\u73b2', p: 'G\u0101o M\u011bl\u00edng', meaning: 'Gao Meiling, a woman from France' }\n  ];\n\n  var peopleEl = root.querySelector('#d210-people-list');\n  if (peopleEl) {\n    var pHtml = '';\n    PEOPLE.forEach(function (p) {\n      pHtml += '<div class=\"d210-people-card\">' +\n        '<span class=\"d210-hanzi\">' + headwordRuby(p.t, p.s, p.p, p.p) + '<\/span>' +\n        '<span class=\"d210-meaning\">' + p.meaning + '<\/span>' +\n      '<\/div>';\n    });\n    peopleEl.innerHTML = pHtml;\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=\"d210-word-card\">' +\n        '<div class=\"d210-word-top\">' +\n          '<span class=\"d210-num\">' + num + '<\/span>' +\n          '<span class=\"d210-hanzi\">' + headwordRuby(w.t, w.s, w.pt || w.p, w.ps || w.p) + '<\/span>' +\n          '<span class=\"d210-pos\">' + w.pos + '<\/span>' +\n          '<span class=\"d210-meaning\">' + w.meaning + '<\/span>' +\n          '<button class=\"d210-speaker\" data-trad=\"' + w.t + '\" data-simp=\"' + w.s + '\" aria-label=\"Play pronunciation\">' + SPEAKER_SVG + '<\/button>' +\n        '<\/div>' +\n        '<div class=\"d210-example\">' +\n          renderTokens(w.ex) +\n          '<span class=\"d210-en\">' + w.exEn + '<\/span>' +\n        '<\/div>' +\n      '<\/div>';\n    });\n    container.innerHTML = html;\n  });\n\n  var dialogueEl = root.querySelector('#d210-dialogue');\n  if (dialogueEl) {\n    var dHtml = '';\n    DIALOGUE.forEach(function (line) {\n      dHtml += '<div class=\"d210-line\">' +\n        '<span class=\"d210-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=\"d210-line-body\">' +\n          renderTokens(line.tokens) +\n          '<span class=\"d210-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('#d210-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('.d210-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('d210-py-hidden', isHidden);\n    root.classList.toggle('d210-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('#d210-flashcard');\n  var fcFront = root.querySelector('#d210-fc-front');\n  var fcBack = root.querySelector('#d210-fc-back');\n  var fcProgress = root.querySelector('#d210-fc-progress');\n  var fcPrevBtn = root.querySelector('#d210-fc-prev');\n  var fcNextBtn = root.querySelector('#d210-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=\"d210-hanzi\">' + headwordRuby(w.t, w.s, w.pt || w.p, w.ps || w.p) + '<\/span>';\n    fcBack.innerHTML = '<span class=\"d210-meaning\">' + w.meaning + '<\/span><span class=\"d210-pos\">' + w.pos + '<\/span>';\n    if (fcProgress) fcProgress.textContent = (fcIndex + 1) + ' \/ ' + ALL_WORDS.length;\n    if (fcCard) fcCard.classList.remove('d210-flipped');\n    fcFlipped = false;\n    syncPinyin();\n  }\n\n  if (fcCard) {\n    fcCard.addEventListener('click', function () {\n      fcFlipped = !fcFlipped;\n      fcCard.classList.toggle('d210-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('#d210-game-col-zh');\n  var gameColEn = root.querySelector('#d210-game-col-en');\n  var gameStatus = root.querySelector('#d210-game-status');\n  var gameWin = root.querySelector('#d210-game-win');\n  var gameNewBtn = root.querySelector('#d210-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('d210-show');\n\n    var zhOrder = shuffle(gameRound);\n    var enOrder = shuffle(gameRound);\n\n    gameColZh.innerHTML = zhOrder.map(function (w) {\n      return '<button class=\"d210-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=\"d210-tile-py\">' + (w.pt || w.p) + '<\/span>' +\n      '<\/button>';\n    }).join('');\n\n    gameColEn.innerHTML = enOrder.map(function (w) {\n      return '<button class=\"d210-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('d210-matched')) return;\n    var side = tile.getAttribute('data-side');\n\n    if (side === 'zh') {\n      if (gameSelectedZh) gameSelectedZh.classList.remove('d210-selected');\n      gameSelectedZh = tile;\n      tile.classList.add('d210-selected');\n    } else {\n      if (gameSelectedEn) gameSelectedEn.classList.remove('d210-selected');\n      gameSelectedEn = tile;\n      tile.classList.add('d210-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('d210-selected');\n          gameSelectedEn.classList.remove('d210-selected');\n          gameSelectedZh.classList.add('d210-matched');\n          gameSelectedEn.classList.add('d210-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('d210-show');\n            }\n          }\n        } else {\n          gameBusy = true;\n          var z = gameSelectedZh, en = gameSelectedEn;\n          z.classList.add('d210-wrong');\n          en.classList.add('d210-wrong');\n          setTimeout(function () {\n            z.classList.remove('d210-selected', 'd210-wrong');\n            en.classList.remove('d210-selected', 'd210-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('.d210-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\\\">\u5305<\/span><span class=\\\"lang-zh-CN\\\">\u5305<\/span> means...\", options: [\"to wrap\", \"to boil\", \"to close\", \"to add\"], answer: 0 },\n    { type: 'type', prompt: \"Type the pinyin for <span class=\\\"lang-zh-TW\\\">\u9903\u5b50<\/span><span class=\\\"lang-zh-CN\\\">\u997a\u5b50<\/span>.\", accept: [\"jiaozi\"] },\n    { type: 'mc', prompt: \"Which word means \\\"filling\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u9921\u5152<\/span><span class=\\\"lang-zh-CN\\\">\u9985\u513f<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u6750\u6599<\/span><span class=\\\"lang-zh-CN\\\">\u6750\u6599<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u8abf\u5473\u6599<\/span><span class=\\\"lang-zh-CN\\\">\u8c03\u5473\u6599<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u8fa3\u6912<\/span><span class=\\\"lang-zh-CN\\\">\u8fa3\u6912<\/span>\"], answer: 0 },\n    { type: 'type', prompt: \"Type the English word for <span class=\\\"lang-zh-TW\\\">\u812b<\/span><span class=\\\"lang-zh-CN\\\">\u8131<\/span>.\", accept: [\"to remove\", \"to take off\", \"remove\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u7834<\/span><span class=\\\"lang-zh-CN\\\">\u7834<\/span> means...\", options: [\"to break, to split open\", \"to go bad\", \"flat\", \"to be finished, none left\"], answer: 0 },\n    { type: 'mc', prompt: \"Which word means \\\"chopsticks\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u7b77\u5b50<\/span><span class=\\\"lang-zh-CN\\\">\u7b77\u5b50<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u7897<\/span><span class=\\\"lang-zh-CN\\\">\u7897<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u934b\u5b50<\/span><span class=\\\"lang-zh-CN\\\">\u9505\u5b50<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u76ae<\/span><span class=\\\"lang-zh-CN\\\">\u76ae<\/span>\"], answer: 0 },\n    { type: 'type', prompt: \"Type the pinyin for <span class=\\\"lang-zh-TW\\\">\u6750\u6599<\/span><span class=\\\"lang-zh-CN\\\">\u6750\u6599<\/span>.\", accept: [\"cailiao\"] },\n    { type: 'mc', prompt: \"Which phrase means \\\"hot and sour soup\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u9178\u8fa3\u6e6f<\/span><span class=\\\"lang-zh-CN\\\">\u9178\u8fa3\u6c64<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u6ce1\u83dc<\/span><span class=\\\"lang-zh-CN\\\">\u6ce1\u83dc<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u6625\u6372<\/span><span class=\\\"lang-zh-CN\\\">\u6625\u5377<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u58fd\u53f8<\/span><span class=\\\"lang-zh-CN\\\">\u5bff\u53f8<\/span>\"], answer: 0 },\n    { type: 'type', prompt: \"Type the English word for <span class=\\\"lang-zh-TW\\\">\u98fd<\/span><span class=\\\"lang-zh-CN\\\">\u9971<\/span>.\", accept: [\"full\", \"to be full\", \"to have eaten enough\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u8d81<\/span><span class=\\\"lang-zh-CN\\\">\u8d81<\/span> means...\", options: [\"while, take advantage of\", \"such as, like\", \"to pack into\", \"to savor, to taste\"], answer: 0 },\n    { type: 'type', prompt: \"Type the pinyin for <span class=\\\"lang-zh-TW\\\">\u5927\u767d\u83dc<\/span><span class=\\\"lang-zh-CN\\\">\u5927\u767d\u83dc<\/span>.\", accept: [\"dabaicai\"] },\n    { type: 'mc', prompt: \"Which word means \\\"to stir, to mix\\\"?\", options: [\"<span class=\\\"lang-zh-TW\\\">\u62cc<\/span><span class=\\\"lang-zh-CN\\\">\u62cc<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u88dd<\/span><span class=\\\"lang-zh-CN\\\">\u88c5<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u52a0<\/span><span class=\\\"lang-zh-CN\\\">\u52a0<\/span>\", \"<span class=\\\"lang-zh-TW\\\">\u5690<\/span><span class=\\\"lang-zh-CN\\\">\u5c1d<\/span>\"], answer: 0 },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u8abf\u5473\u6599<\/span><span class=\\\"lang-zh-CN\\\">\u8c03\u5473\u6599<\/span> means...\", options: [\"seasonings\", \"ingredients\", \"filling\", \"chili peppers\"], answer: 0 },\n    { type: 'type', prompt: \"Type the English word for <span class=\\\"lang-zh-TW\\\">\u73bb\u7483<\/span><span class=\\\"lang-zh-CN\\\">\u73bb\u7483<\/span>.\", accept: [\"glass\"] },\n    { type: 'mc', prompt: \"<span class=\\\"lang-zh-TW\\\">\u505a\u8d77\u4f86<\/span><span class=\\\"lang-zh-CN\\\">\u505a\u8d77\u6765<\/span> means...\", options: [\"when undertaken, to do\", \"to cook\", \"to savor, to taste\", \"such as, like\"], 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('#d210-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=\"d210-quiz-progress\">Question ' + (current + 1) + ' of ' + QUIZ_DATA.length + '<\/p>';\n      html += '<p class=\"d210-quiz-prompt\">' + q.prompt + '<\/p>';\n      if (q.type === 'mc') {\n        html += '<div class=\"d210-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=\"d210-quiz-opt\" data-i=\"' + i + '\">' + q.options[i] + '<\/button>';\n        }\n        html += '<\/div>';\n      } else {\n        html += '<div class=\"d210-quiz-input-row\">';\n        html += '<input type=\"text\" class=\"d210-quiz-input\" placeholder=\"Type your answer\">';\n        html += '<button type=\"button\" class=\"d210-quiz-submit\">Submit<\/button>';\n        html += '<\/div>';\n      }\n      html += '<p class=\"d210-quiz-feedback\"><\/p>';\n      html += '<button type=\"button\" class=\"d210-quiz-next\" style=\"display:none;\">Next<\/button>';\n      qRoot.innerHTML = html;\n\n      if (q.type === 'mc') {\n        var opts = qRoot.querySelectorAll('.d210-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('.d210-quiz-input');\n        var submitBtn = qRoot.querySelector('.d210-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('.d210-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 = 'd210-quiz-feedback ' + (correct ? 'correct' : 'incorrect');\n        var nextBtn = qRoot.querySelector('.d210-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=\"d210-quiz-score\">' +\n        '<span class=\"d210-quiz-score-num\">' + score + ' \/ ' + QUIZ_DATA.length + '<\/span>' +\n        '<p>Nice work! Want to try again?<\/p>' +\n        '<button type=\"button\" class=\"d210-quiz-retake\">Retake Quiz<\/button>' +\n        '<\/div>';\n      qRoot.querySelector('.d210-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('.d210-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('.d210-lede .lang-zh-CN');\n    var refTW = root.querySelector('.d210-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('.d210-quiz, .d210-game-board, .d210-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 10\u300c\u6b61\u8fce\u5230\u6211\u5bb6\u4f86\u5305\u9903\u5b50\u6b22\u8fce\u5230\u6211\u5bb6\u6765\u5305\u997a\u5b50\u300dCome to My Place to Make Dumplings. \u2014 every word from \u751f\u8a5e\u4e00 and \u751f\u8a5e\u4e8c&#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-13487","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 L10 Vocabulary and Practice - OneDotDot Chinese<\/title>\n<meta name=\"description\" content=\"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u5341\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 10\" \/>\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\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"B2 L10 Vocabulary and Practice - OneDotDot Chinese\" \/>\n<meta property=\"og:description\" content=\"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u5341\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 10\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/\" \/>\n<meta property=\"og:site_name\" content=\"OneDotDot Chinese\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-07T15:12:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-09T15:02:03+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\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/\"},\"author\":{\"name\":\"tiffany\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"headline\":\"B2 L10 Vocabulary and Practice\",\"datePublished\":\"2026-02-07T15:12:06+00:00\",\"dateModified\":\"2026-10-09T15:02:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/\"},\"wordCount\":233,\"publisher\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"image\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#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\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/\",\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/\",\"name\":\"B2 L10 Vocabulary and Practice - OneDotDot Chinese\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/\u7576\u4ee3\u4e2d\u65872.jpg\",\"datePublished\":\"2026-02-07T15:12:06+00:00\",\"dateModified\":\"2026-10-09T15:02:03+00:00\",\"description\":\"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u5341\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 10\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#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\\\/02\\\/07\\\/contemporary-chinese-vocabulary-practice-b2l10\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9801\",\"item\":\"https:\\\/\\\/tiffanysmandarin.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"B2 L10 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 L10 Vocabulary and Practice - OneDotDot Chinese","description":"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u5341\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 10","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\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/","og_locale":"en_US","og_type":"article","og_title":"B2 L10 Vocabulary and Practice - OneDotDot Chinese","og_description":"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u5341\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 10","og_url":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/","og_site_name":"OneDotDot Chinese","article_published_time":"2026-02-07T15:12:06+00:00","article_modified_time":"2026-10-09T15:02:03+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\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#article","isPartOf":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/"},"author":{"name":"tiffany","@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"headline":"B2 L10 Vocabulary and Practice","datePublished":"2026-02-07T15:12:06+00:00","dateModified":"2026-10-09T15:02:03+00:00","mainEntityOfPage":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/"},"wordCount":233,"publisher":{"@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"image":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#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\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/","url":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/","name":"B2 L10 Vocabulary and Practice - OneDotDot Chinese","isPartOf":{"@id":"https:\/\/tiffanysmandarin.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#primaryimage"},"image":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#primaryimage"},"thumbnailUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2024\/11\/\u7576\u4ee3\u4e2d\u65872.jpg","datePublished":"2026-02-07T15:12:06+00:00","dateModified":"2026-10-09T15:02:03+00:00","description":"Strengthen your vocabulary \u7576\u4ee3\u4e2d\u6587\u7b2c\u4e8c\u518a\u7b2c\u5341\u8ab2 \u55ae\u8a5e\u7df4\u7fd2 \u8907\u7fd2 \u8003\u8a66 Contemporary Chinese Vocabulary Practice Book 2 \u2013 Lesson 10","breadcrumb":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#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\/02\/07\/contemporary-chinese-vocabulary-practice-b2l10\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9801","item":"https:\/\/tiffanysmandarin.com\/"},{"@type":"ListItem","position":2,"name":"B2 L10 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\/13487","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=13487"}],"version-history":[{"count":3,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/13487\/revisions"}],"predecessor-version":[{"id":18115,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/13487\/revisions\/18115"}],"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=13487"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/categories?post=13487"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/tags?post=13487"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}