{"id":16877,"date":"2026-09-12T13:40:57","date_gmt":"2026-09-12T05:40:57","guid":{"rendered":"https:\/\/tiffanysmandarin.com\/?p=16877"},"modified":"2026-10-09T20:04:02","modified_gmt":"2026-10-09T12:04:02","slug":"book-2-l4","status":"publish","type":"post","link":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/","title":{"rendered":"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4"},"content":{"rendered":"\n<div style=\"height:3px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!--\n  \u5be6\u7528\u8996\u807d\u83ef\u8a9e (Practical Audio-Visual Chinese) Book 2 \u00b7 Lesson 4\u300c\u8acb\u5979\u56de\u4f86\u4ee5\u5f8c\uff0c\u7d66\u6211\u6253\u96fb\u8a71\u300d\n  Please Tell Her to Give Me a Call When She Gets Back \u2014 Vocabulary Embed\n  \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n  Same technical pattern as the other embeds in this series (see those\n  files' comments for the fuller rationale). Key points repeated here,\n  plus what's different for this file:\n    - No <!DOCTYPE>\/<html>\/<head>\/<body>; site's own Text Display \/ Pinyin\n      Display toggle covers zh-TW\/zh-CN as usual\n    - CSS scoped under .pavc-b2l4-vocab-embed with its own --pl4-* vars \u2014\n      same palette as the rest of the series\n    - Ruby: every example\/dialogue sentence segmented WORD BY WORD\n    - Root lookup by id (#pavc-b2l4-vocab-embed-1), not currentScript\n    - Same self-contained EN \/ \u65e5\u672c\u8a9e \/ \ud55c\uad6d\uc5b4 translation toggle as the\n      earlier files (TR()\/trSpans()\/pl4-lang-* classes; quiz's\n      QMC()\/QTYPE() + UI_STRINGS + getLang())\n    - PINYIN SYNC FIX: the site's Pinyin Display toggle only adds the\n      \"hidden\" \/ \"mouseover\" class to <rt> elements that exist at the\n      moment it's clicked. The flashcard (re-rendered on every Prev\/Next)\n      and the Match It tiles (re-rendered every New Round, and using a\n      plain span rather than <rt>) were therefore ignoring it. Now a\n      MutationObserver watches a reference <rt> in the static word list,\n      and syncPinyin() copies its current mode onto the flashcard's <rt>s\n      and onto the tiles (via pl4-py-hidden \/ pl4-py-mouseover classes on\n      the root) after every re-render and every toggle change.\n    - COPYRIGHT: no audio, no textbook dialogue text. Section 06 (\"Put It\n      Together\") is an ORIGINAL phone-call dialogue I wrote myself, with\n      new characters (\u9ad8\u6587\u5c71 and \u6797\u7f8e\u771f) and a new storyline (borrowing a\n      book) \u2014 not the textbook's own \"\u674e\u6587\u5fb7 \/ \u738b\u7f8e\u82f1\" phone-call story.\n      The example sentence under every single word card is also newly\n      written by me, not copied from the textbook's own illustrative\n      sentences.\n    - Vocabulary is the textbook's own Lesson 4 word list, taken exactly\n      as printed (headword, pinyin, English gloss) \u2014 this includes every\n      numbered main-vocabulary word (1\u201318: \u4ee5\u5f8c\/\u6253\u96fb\u8a71\/\u5582\/\u501f\/\u4ee5\u524d\/\u5927\u6982\/\n      \u9ebb\u7169\/\u544a\u8a34\/\u904e\/\u8a18\u5f97\/\u4e2d\u5b78\/\u53c8\/\u8a8d\u8b58\/\u6b21\/\u672c\u4f86\/\u5f8c\u4f86\/\u6050\u6015\/\u6c7a\u5b9a), the\n      sub-entries the textbook itself lists under some of those numbered\n      words (\u96fb\u8a71 under \u6253\u96fb\u8a71; \u7169 under \u9ebb\u7169; \u8a18 under \u8a18\u5f97; \u8a8d\u5f97 under\n      \u8a8d\u8b58; \u6015 under \u6050\u6015), and the Supplementary Vocabulary block\n      (19\u201330: \u63a5\/\u898b\u9762\/\u7559\/\u5b57\u689d\/\u865f\u78bc\/\u5f9e\u524d\/\u6d17\/\u624b\/\u9ad8\u8208\/\u982d\/\u7fa9\u5927\u5229\/\u90f5\u5dee). 35\n      word cards total\n    - Traditional\/simplified pairs checked individually \u2014 real\n      differences in \u4ee5\u5f8c\/\u4ee5\u540e, \u6253\u96fb\u8a71\/\u6253\u7535\u8bdd, \u96fb\u8a71\/\u7535\u8bdd, \u9ebb\u7169\/\u9ebb\u70e6,\n      \u7169\/\u70e6, \u544a\u8a34\/\u544a\u8bc9, \u904e\/\u8fc7, \u8a18\u5f97\/\u8bb0\u5f97, \u8a18\/\u8bb0, \u4e2d\u5b78\/\u4e2d\u5b66, \u8a8d\u8b58\/\u8ba4\u8bc6,\n      \u8a8d\u5f97\/\u8ba4\u5f97, \u5f8c\u4f86\/\u540e\u6765, \u6c7a\u5b9a\/\u51b3\u5b9a, \u898b\u9762\/\u89c1\u9762, \u5b57\u689d\/\u5b57\u6761, \u865f\u78bc\/\u53f7\u7801,\n      \u5f9e\u524d\/\u4ece\u524d, \u9ad8\u8208\/\u9ad8\u5174, \u982d\/\u5934, \u7fa9\u5927\u5229\/\u4e49\u5927\u5229, \u90f5\u5dee\/\u90ae\u5dee \u2014 all\n      handled via WD(); \u5582, \u501f, \u4ee5\u524d, \u5927\u6982, \u53c8, \u6b21, \u672c\u4f86, \u6050\u6015, \u6015, \u63a5,\n      \u7559, \u6d17, \u624b are identical across scripts and use W()\n    - Japanese\/Korean glosses are natural translations of the meaning,\n      done by me \u2014 not lifted from any bilingual edition of the textbook\n    - No literal `&&` inside the <script> tag (WordPress content filter risk)\n    - Top-of-page support note, same as the rest of the series\n-->\n<div class=\"pavc-b2l4-vocab-embed\" id=\"pavc-b2l4-vocab-embed-1\">\n<style>\n.pavc-b2l4-vocab-embed {\n  --pl4-oxblood: #7b2d26;\n  --pl4-oxblood-dark: #5e211c;\n  --pl4-mustard: #c9922b;\n  --pl4-sage: #7c8b6f;\n  --pl4-bone: #f7f1e6;\n  --pl4-ink: #2c2620;\n  --pl4-line: #e4d9c4;\n  font-family: 'Work Sans', -apple-system, sans-serif;\n  color: var(--pl4-ink);\n  background: #fff;\n  max-width: 760px;\n  margin: 0 auto;\n  padding: 8px 4px 24px;\n  line-height: 1.6;\n}\n.pavc-b2l4-vocab-embed * { box-sizing: border-box; }\n.pavc-b2l4-vocab-embed h1,\n.pavc-b2l4-vocab-embed h2,\n.pavc-b2l4-vocab-embed h3 {\n  font-family: 'Bitter', Georgia, serif;\n  color: var(--pl4-oxblood-dark);\n  margin: 0 0 8px;\n}\n.pavc-b2l4-vocab-embed .pl4-support-note {\n  font-size: 0.85rem;\n  color: var(--pl4-sage);\n  border-bottom: 1px solid var(--pl4-line);\n  padding-bottom: 12px;\n  margin: 0 0 16px;\n}\n.pavc-b2l4-vocab-embed .pl4-lede {\n  margin: 0 0 16px;\n  padding: 14px 16px;\n  background: var(--pl4-bone);\n  border-left: 4px solid var(--pl4-mustard);\n  border-radius: 4px;\n  font-size: 0.98rem;\n}\n.pavc-b2l4-vocab-embed .pl4-lede b { color: var(--pl4-oxblood-dark); }\n\n.pavc-b2l4-vocab-embed .pl4-lang-toggle {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  margin: 0 0 24px;\n  flex-wrap: wrap;\n}\n.pavc-b2l4-vocab-embed .pl4-lang-label {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.75rem;\n  color: var(--pl4-sage);\n  letter-spacing: 0.06em;\n}\n.pavc-b2l4-vocab-embed .pl4-lang-btn {\n  font-family: 'Work Sans', sans-serif;\n  font-size: 0.85rem;\n  border: 1px solid var(--pl4-oxblood);\n  color: var(--pl4-oxblood);\n  background: #fff;\n  padding: 5px 14px;\n  border-radius: 20px;\n  cursor: pointer;\n}\n.pavc-b2l4-vocab-embed .pl4-lang-btn:hover { background: var(--pl4-bone); }\n.pavc-b2l4-vocab-embed .pl4-lang-btn.pl4-lang-active { background: var(--pl4-oxblood); color: #fff; }\n\n.pavc-b2l4-vocab-embed .pl4-tr { display: none; }\n.pavc-b2l4-vocab-embed.pl4-lang-en .pl4-tr-en { display: inline; }\n.pavc-b2l4-vocab-embed.pl4-lang-ja .pl4-tr-ja { display: inline; }\n.pavc-b2l4-vocab-embed.pl4-lang-ko .pl4-tr-ko { display: inline; }\n\n.pavc-b2l4-vocab-embed .pl4-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(--pl4-oxblood);\n  padding: 3px 9px;\n  border-radius: 3px;\n  margin: 32px 0 10px;\n}\n.pavc-b2l4-vocab-embed .pl4-word-card {\n  border: 1px solid var(--pl4-line);\n  border-radius: 8px;\n  padding: 12px 14px;\n  margin-bottom: 10px;\n  background: #fff;\n}\n.pavc-b2l4-vocab-embed .pl4-word-top {\n  display: flex;\n  align-items: baseline;\n  gap: 10px;\n  flex-wrap: wrap;\n}\n.pavc-b2l4-vocab-embed .pl4-num {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.75rem;\n  color: var(--pl4-mustard);\n  min-width: 22px;\n}\n.pavc-b2l4-vocab-embed .pl4-hanzi { font-size: 1.35rem; font-weight: 600; }\n.pavc-b2l4-vocab-embed ruby {\n  ruby-position: over;\n  margin-right: 2px;\n  color: var(--pl4-ink) !important;\n  font-size: inherit !important;\n}\n.pavc-b2l4-vocab-embed .rb {\n  color: var(--pl4-ink) !important;\n  font-size: inherit !important;\n}\n.pavc-b2l4-vocab-embed rt {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.6rem !important;\n  color: var(--pl4-sage) !important;\n  font-weight: 400;\n}\n.pavc-b2l4-vocab-embed rt.hidden { display: none; }\n.pavc-b2l4-vocab-embed rt.mouseover { opacity: 0; }\n.pavc-b2l4-vocab-embed rt.mouseover:hover { opacity: 1; }\n.pavc-b2l4-vocab-embed .pl4-meaning { font-style: italic; color: #6b5f52; font-size: 0.92rem; }\n.pavc-b2l4-vocab-embed .pl4-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(--pl4-bone);\n  color: var(--pl4-oxblood);\n  border-radius: 50%;\n  cursor: pointer;\n  margin-left: auto;\n}\n.pavc-b2l4-vocab-embed .pl4-speaker:hover { background: var(--pl4-mustard); color: #fff; }\n.pavc-b2l4-vocab-embed .pl4-example {\n  margin-top: 8px;\n  padding-top: 8px;\n  border-top: 1px dashed var(--pl4-line);\n  font-size: 0.95rem;\n}\n.pavc-b2l4-vocab-embed .pl4-example .pl4-sent-word { display: inline-flex; }\n.pavc-b2l4-vocab-embed .pl4-example .pl4-punct { margin-right: 2px; }\n.pavc-b2l4-vocab-embed .pl4-example .pl4-en {\n  display: block;\n  color: #6b5f52;\n  font-size: 0.85rem;\n  margin-top: 4px;\n}\n.pavc-b2l4-vocab-embed .pl4-dialogue-note { font-size: 0.85rem; color: #6b5f52; margin: 0 0 10px; }\n.pavc-b2l4-vocab-embed .pl4-dialogue {\n  background: var(--pl4-bone);\n  border-radius: 8px;\n  padding: 16px 18px;\n  margin-top: 8px;\n}\n.pavc-b2l4-vocab-embed .pl4-line {\n  display: flex;\n  gap: 8px;\n  margin-bottom: 12px;\n  align-items: flex-start;\n  flex-wrap: wrap;\n}\n.pavc-b2l4-vocab-embed .pl4-speaker-tag {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.72rem;\n  color: var(--pl4-oxblood);\n  min-width: 46px;\n  padding-top: 3px;\n}\n.pavc-b2l4-vocab-embed .pl4-line-body { flex: 1; min-width: 200px; }\n.pavc-b2l4-vocab-embed .pl4-line-en { display: block; color: #6b5f52; font-size: 0.82rem; margin-top: 2px; }\n\n.pavc-b2l4-vocab-embed .pl4-fc-hint { font-size: 0.85rem; color: #6b5f52; margin: 0 0 12px; text-align: center; }\n.pavc-b2l4-vocab-embed .pl4-flashcard-wrap { max-width: 320px; margin: 0 auto 14px; perspective: 1200px; }\n.pavc-b2l4-vocab-embed .pl4-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.pavc-b2l4-vocab-embed .pl4-flashcard.pl4-flipped { transform: rotateY(180deg); }\n.pavc-b2l4-vocab-embed .pl4-fc-face {\n  position: absolute;\n  inset: 0;\n  backface-visibility: hidden;\n  border: 1px solid var(--pl4-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.pavc-b2l4-vocab-embed .pl4-fc-back { transform: rotateY(180deg); background: var(--pl4-bone); }\n.pavc-b2l4-vocab-embed .pl4-fc-front .pl4-hanzi { font-size: 4rem !important; }\n.pavc-b2l4-vocab-embed .pl4-flashcard-wrap rt { font-size: 1.2rem !important; }\n.pavc-b2l4-vocab-embed .pl4-fc-back .pl4-meaning { font-style: italic; color: var(--pl4-oxblood-dark); font-size: 1.5rem; }\n.pavc-b2l4-vocab-embed .pl4-flashcard-controls { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 28px; }\n.pavc-b2l4-vocab-embed .pl4-game-btn {\n  font-family: 'Work Sans', sans-serif;\n  font-size: 0.85rem;\n  border: 1px solid var(--pl4-oxblood);\n  color: var(--pl4-oxblood);\n  background: #fff;\n  padding: 6px 14px;\n  border-radius: 20px;\n  cursor: pointer;\n}\n.pavc-b2l4-vocab-embed .pl4-game-btn:hover { background: var(--pl4-oxblood); color: #fff; }\n.pavc-b2l4-vocab-embed .pl4-game-bar { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }\n.pavc-b2l4-vocab-embed .pl4-game-status { font-family: 'IBM Plex Mono', monospace; font-size: 0.82rem; color: var(--pl4-sage); }\n.pavc-b2l4-vocab-embed .pl4-game-board { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }\n.pavc-b2l4-vocab-embed .pl4-game-col { display: flex; flex-direction: column; gap: 8px; }\n.pavc-b2l4-vocab-embed .pl4-tile {\n  font-family: 'Work Sans', sans-serif;\n  text-align: left;\n  border: 1px solid var(--pl4-line);\n  background: #fff;\n  border-radius: 6px;\n  padding: 10px 12px;\n  cursor: pointer;\n  font-size: 0.95rem;\n  color: var(--pl4-ink);\n  transition: background 0.15s, border-color 0.15s, transform 0.1s;\n}\n.pavc-b2l4-vocab-embed .pl4-tile .pl4-tile-py {\n  display: block;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 0.7rem;\n  color: var(--pl4-sage);\n  margin-top: 2px;\n}\n\/* Match It tile pinyin follows the site's Pinyin Display toggle *\/\n.pavc-b2l4-vocab-embed.pl4-py-hidden .pl4-tile .pl4-tile-py { display: none; }\n.pavc-b2l4-vocab-embed.pl4-py-mouseover .pl4-tile .pl4-tile-py { opacity: 0; }\n.pavc-b2l4-vocab-embed.pl4-py-mouseover .pl4-tile:hover .pl4-tile-py { opacity: 1; }\n.pavc-b2l4-vocab-embed .pl4-tile:hover:not(.pl4-matched):not(.pl4-selected) { border-color: var(--pl4-mustard); }\n.pavc-b2l4-vocab-embed .pl4-tile.pl4-selected { border-color: var(--pl4-oxblood); background: var(--pl4-bone); }\n.pavc-b2l4-vocab-embed .pl4-tile.pl4-matched { border-color: var(--pl4-sage); background: #eef2e9; color: var(--pl4-sage); cursor: default; }\n.pavc-b2l4-vocab-embed .pl4-tile.pl4-wrong { border-color: #b5453d; background: #fbeceb; animation: pl4-shake 0.3s; }\n@keyframes pl4-shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }\n.pavc-b2l4-vocab-embed .pl4-game-win { text-align: center; padding: 14px; font-family: 'Bitter', serif; color: var(--pl4-oxblood-dark); display: none; }\n.pavc-b2l4-vocab-embed .pl4-game-win.pl4-show { display: block; }\n@media (max-width: 480px) { .pavc-b2l4-vocab-embed .pl4-game-board { grid-template-columns: 1fr; } }\n.pavc-b2l4-vocab-embed .pl4-quiz { background: #fff; border: 1px solid var(--pl4-line); border-radius: 12px; padding: 20px 22px; margin-top: 8px; }\n.pavc-b2l4-vocab-embed .pl4-quiz-progress { font-size: 0.82rem; color: var(--pl4-sage); margin: 0 0 10px; font-family: 'IBM Plex Mono', monospace; }\n.pavc-b2l4-vocab-embed .pl4-quiz-prompt { font-size: 1.1rem; margin: 0 0 14px; }\n.pavc-b2l4-vocab-embed .pl4-quiz-options { display: flex; flex-direction: column; gap: 8px; margin: 0 0 10px; }\n.pavc-b2l4-vocab-embed .pl4-quiz-opt { text-align: left; border: 1px solid var(--pl4-line); background: var(--pl4-bone); border-radius: 8px; padding: 10px 14px; cursor: pointer; font-size: 0.98rem; color: var(--pl4-ink); }\n.pavc-b2l4-vocab-embed .pl4-quiz-opt:hover { background: #f0e6d2; }\n.pavc-b2l4-vocab-embed .pl4-quiz-opt.correct { background: #e3efdd; border-color: #7fae6d; color: #3d5c34; }\n.pavc-b2l4-vocab-embed .pl4-quiz-opt.incorrect { background: #f5e0dc; border-color: var(--pl4-oxblood); color: var(--pl4-oxblood-dark); }\n.pavc-b2l4-vocab-embed .pl4-quiz-opt[disabled] { cursor: default; }\n.pavc-b2l4-vocab-embed .pl4-quiz-input-row { display: flex; gap: 8px; margin: 0 0 10px; flex-wrap: wrap; }\n.pavc-b2l4-vocab-embed .pl4-quiz-input { flex: 1 1 200px; border: 1px solid var(--pl4-line); border-radius: 8px; padding: 9px 12px; font-size: 0.98rem; }\n.pavc-b2l4-vocab-embed .pl4-quiz-submit, .pavc-b2l4-vocab-embed .pl4-quiz-next, .pavc-b2l4-vocab-embed .pl4-quiz-retake { border: none; background: var(--pl4-oxblood); color: #fff; border-radius: 20px; padding: 8px 18px; font-size: 0.9rem; cursor: pointer; }\n.pavc-b2l4-vocab-embed .pl4-quiz-submit:hover, .pavc-b2l4-vocab-embed .pl4-quiz-next:hover, .pavc-b2l4-vocab-embed .pl4-quiz-retake:hover { background: var(--pl4-oxblood-dark); }\n.pavc-b2l4-vocab-embed .pl4-quiz-feedback { font-size: 0.95rem; margin: 0 0 10px; min-height: 1.4em; }\n.pavc-b2l4-vocab-embed .pl4-quiz-feedback.correct { color: #3d5c34; }\n.pavc-b2l4-vocab-embed .pl4-quiz-feedback.incorrect { color: var(--pl4-oxblood-dark); }\n.pavc-b2l4-vocab-embed .pl4-quiz-score { text-align: center; }\n.pavc-b2l4-vocab-embed .pl4-quiz-score .pl4-quiz-score-num { font-size: 2.2rem; font-weight: 700; color: var(--pl4-oxblood-dark); display: block; margin-bottom: 8px; font-family: 'Bitter', serif; }\n<\/style>\n\n<p class=\"pl4-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=\"pl4-lede\">\n<b><span class=\"lang-zh-TW\">\u5be6\u7528\u8996\u807d\u83ef\u8a9e<\/span><span class=\"lang-zh-CN\">\u5b9e\u7528\u89c6\u542c\u534e\u8bed<\/span> Book 2 \u00b7 Lesson 4\u300c\u8acb\u5979\u56de\u4f86\u4ee5\u5f8c\uff0c\u7d66\u6211\u6253\u96fb\u8a71\u300dPlease Tell Her to Give Me a Call When She Gets Back<\/b> \u2014 this lesson&#8217;s full vocabulary list (including the Supplementary Vocabulary) with pinyin, meaning, and an example sentence for every word, segmented word by word so you can see how each piece works on its own.\n<\/p>\n\n<div class=\"pl4-lang-toggle\">\n  <span class=\"pl4-lang-label\">TRANSLATION<\/span>\n  <button type=\"button\" class=\"pl4-lang-btn pl4-lang-active\" data-lang=\"en\">EN<\/button>\n  <button type=\"button\" class=\"pl4-lang-btn\" data-lang=\"ja\">\u65e5\u672c\u8a9e<\/button>\n  <button type=\"button\" class=\"pl4-lang-btn\" data-lang=\"ko\">\ud55c\uad6d\uc5b4<\/button>\n<\/div>\n\n<div class=\"pl4-sec-eyebrow\">01 \u2014 ON THE PHONE<\/div>\n<div id=\"pl4-word-list-1\"><\/div>\n\n<div class=\"pl4-sec-eyebrow\">02 \u2014 TIME WORDS<\/div>\n<div id=\"pl4-word-list-2\"><\/div>\n\n<div class=\"pl4-sec-eyebrow\">03 \u2014 ACTIONS &amp; STATES<\/div>\n<div id=\"pl4-word-list-3\"><\/div>\n\n<div class=\"pl4-sec-eyebrow\">04 \u2014 MODAL &amp; DEGREE WORDS<\/div>\n<div id=\"pl4-word-list-4\"><\/div>\n\n<div class=\"pl4-sec-eyebrow\">05 \u2014 OTHER NOUNS<\/div>\n<div id=\"pl4-word-list-5\"><\/div>\n\n<div class=\"pl4-sec-eyebrow\">06 \u2014 PUT IT TOGETHER<\/div>\n<p class=\"pl4-dialogue-note\"><em>Note: this dialogue is not from the textbook \u2014 it&#8217;s a short phone-call scene I made up (new characters, new storyline) using this lesson&#8217;s vocabulary, so you can see the words used together. For the actual Lesson 4 dialogues, I&#8217;d recommend picking up a copy of the textbook itself.<\/em><\/p>\n<div class=\"pl4-dialogue\" id=\"pl4-dialogue\"><\/div>\n\n<div class=\"pl4-sec-eyebrow\">07 \u2014 FLASHCARDS<\/div>\n<p class=\"pl4-fc-hint\">Tap the card to flip it, then use the arrows to move through the deck.<\/p>\n<div class=\"pl4-flashcard-wrap\">\n  <div class=\"pl4-flashcard\" id=\"pl4-flashcard\">\n    <div class=\"pl4-fc-face pl4-fc-front\" id=\"pl4-fc-front\"><\/div>\n    <div class=\"pl4-fc-face pl4-fc-back\" id=\"pl4-fc-back\"><\/div>\n  <\/div>\n<\/div>\n<div class=\"pl4-flashcard-controls\">\n  <button class=\"pl4-game-btn\" id=\"pl4-fc-prev\">\u2039 Prev<\/button>\n  <span class=\"pl4-game-status\" id=\"pl4-fc-progress\">1 \/ 35<\/span>\n  <button class=\"pl4-game-btn\" id=\"pl4-fc-next\">Next \u203a<\/button>\n<\/div>\n\n<div class=\"pl4-sec-eyebrow\">08 \u2014 MATCH IT<\/div>\n<p style=\"font-size:0.9rem;color:#6b5f52;margin:0 0 10px;\">Tap a Chinese word, then tap the meaning that matches it (in whichever translation language is selected above). Get all 8 pairs to finish the round.<\/p>\n<div class=\"pl4-game-bar\">\n  <button class=\"pl4-game-btn\" id=\"pl4-game-new\">New Round<\/button>\n  <span class=\"pl4-game-status\" id=\"pl4-game-status\">0 \/ 8 matched<\/span>\n<\/div>\n<div class=\"pl4-game-board\">\n  <div class=\"pl4-game-col\" id=\"pl4-game-col-zh\"><\/div>\n  <div class=\"pl4-game-col\" id=\"pl4-game-col-en\"><\/div>\n<\/div>\n<div class=\"pl4-game-win\" id=\"pl4-game-win\">\ud83c\udf89 All matched! Nice work.<\/div>\n\n<div class=\"pl4-sec-eyebrow\">09 \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-pinyin. Questions pick up whichever translation language is selected above; switching mid-question applies from the next question onward.<\/p>\n<div class=\"pl4-quiz\" id=\"pl4-quiz\"><\/div>\n\n<script>\n(function () {\n  var root = document.getElementById('pavc-b2l4-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  function WD(t, s, pt, ps) { return { t: t, s: s, pt: pt, ps: ps }; }\n  function TR(en, ja, ko) { return { en: en, ja: ja, ko: ko }; }\n\n  var GROUPS = {\n    'pl4-word-list-1': [\n      { t: '\u5582', s: '\u5582', p: 'w\u00e9i', meaning: TR('hello (on the phone\/intercom)', '\u3082\u3057\u3082\u3057(\u96fb\u8a71\u3067)', '\uc5ec\ubcf4\uc138\uc694(\uc804\ud654\uc0c1)'),\n        ex: [W('\u5582','\u5582','W\u00e9i'), '\uff0c', W('\u8acb\u554f','\u8bf7\u95ee','q\u01d0ngw\u00e8n'), W('\u738b','\u738b','W\u00e1ng'), W('\u5c0f\u59d0','\u5c0f\u59d0','Xi\u01ceoji\u011b'), W('\u5728','\u5728','z\u00e0i'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('Hello, is Miss Wang there please?', '\u3082\u3057\u3082\u3057\u3001\u738b\u3055\u3093\u306f\u3044\u3089\u3063\u3057\u3083\u3044\u307e\u3059\u304b\u3002', '\uc5ec\ubcf4\uc138\uc694, \uc655 \uc528 \uacc4\uc138\uc694?') },\n      { t: '\u6253\u96fb\u8a71', s: '\u6253\u7535\u8bdd', p: 'd\u01cedi\u00e0nhu\u00e0', meaning: TR('to make a phone call', '\u96fb\u8a71\u3092\u304b\u3051\u308b', '\uc804\ud654\ub97c \uac78\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u60f3','\u60f3','xi\u01ceng'), W('\u7d66','\u7ed9','g\u011bi'), W('\u8001\u5e2b','\u8001\u5e08','l\u01ceosh\u012b'), WD('\u6253\u96fb\u8a71','\u6253\u7535\u8bdd','d\u01ce di\u00e0nhu\u00e0','d\u01ce di\u00e0nhu\u00e0'), '\u3002'],\n        exEn: TR('I want to make a call to the teacher.', '\u5148\u751f\u306b\u96fb\u8a71\u3092\u304b\u3051\u305f\u3044\u3067\u3059\u3002', '\uc800\ub294 \uc120\uc0dd\ub2d8\uaed8 \uc804\ud654\ub97c \uac78\uace0 \uc2f6\uc5b4\uc694.') },\n      { t: '\u96fb\u8a71', s: '\u7535\u8bdd', p: 'di\u00e0nhu\u00e0', meaning: TR('telephone, call', '\u96fb\u8a71', '\uc804\ud654'),\n        ex: [W('\u4f60','\u4f60','N\u01d0'), W('\u7684','\u7684','de'), WD('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0','di\u00e0nhu\u00e0'), W('\u865f\u78bc','\u53f7\u7801','h\u00e0om\u01ce'), W('\u662f','\u662f','sh\u00ec'), W('\u4ec0\u9ebc','\u4ec0\u4e48','sh\u00e9nme'), '\uff1f'],\n        exEn: TR('What\\u2019s your phone number?', '\u3042\u306a\u305f\u306e\u96fb\u8a71\u756a\u53f7\u306f\u4f55\u3067\u3059\u304b\u3002', '\ub2f9\uc2e0\uc758 \uc804\ud654\ubc88\ud638\ub294 \ubb50\uc608\uc694?') },\n      { t: '\u63a5', s: '\u63a5', p: 'ji\u0113', meaning: TR('to receive (a call\/guest); to meet, to come into contact with', '(\u96fb\u8a71\u306b)\u51fa\u308b;\u8fce\u3048\u308b', '(\uc804\ud654\ub97c) \ubc1b\ub2e4; \ub9de\uc774\ud558\ub2e4'),\n        ex: [W('\u6c92\u6709','\u6ca1\u6709','M\u00e9iy\u01d2u'), W('\u4eba','\u4eba','r\u00e9n'), W('\u63a5','\u63a5','ji\u0113'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), '\u3002'],\n        exEn: TR('No one is answering the phone.', '\u8ab0\u3082\u96fb\u8a71\u306b\u51fa\u307e\u305b\u3093\u3002', '\uc544\ubb34\ub3c4 \uc804\ud654\ub97c \uc548 \ubc1b\uc544\uc694.') },\n      { t: '\u7559', s: '\u7559', p: 'li\u00fa', meaning: TR('to leave (a message\/thing); to stay, to remain', '\u6b8b\u3059;\u7559\u307e\u308b', '\ub0a8\uae30\ub2e4; \uba38\ubb34\ub974\ub2e4'),\n        ex: [W('\u4ed6','\u4ed6','T\u0101'), W('\u4e0d','\u4e0d','b\u00fa'), W('\u5728','\u5728','z\u00e0i'), '\uff0c', W('\u4f60','\u4f60','n\u01d0'), W('\u8981','\u8981','y\u00e0o'), W('\u7559','\u7559','li\u00fa'), W('\u8a71','\u8bdd','hu\u00e0'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('He\\u2019s not here, do you want to leave a message?', '\u5f7c\u306f\u4eca\u3044\u307e\u305b\u3093\u3001\u4f1d\u8a00\u3092\u6b8b\u3057\u307e\u3059\u304b\u3002', '\uadf8\ub294 \uc9c0\uae08 \uc5c6\uc5b4\uc694, \uba54\uc2dc\uc9c0\ub97c \ub0a8\uae30\uc2dc\uaca0\uc5b4\uc694?') },\n      { t: '\u5b57\u689d', s: '\u5b57\u6761', p: 'z\u00ecti\u00e1o', meaning: TR('a note', '\u30e1\u30e2', '\uba54\ubaa8, \ucabd\uc9c0'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u7d66','\u7ed9','g\u011bi'), W('\u4ed6','\u4ed6','t\u0101'), W('\u7559','\u7559','li\u00fale'), W('\u4e86','\u4e86','le'), W('\u4e00','\u4e00','y\u00ec'), W('\u5f35','\u5f20','zh\u0101ng'), WD('\u5b57\u689d','\u5b57\u6761','z\u00ecti\u00e1o','z\u00ecti\u00e1o'), '\u3002'],\n        exEn: TR('I left him a note.', '\u79c1\u306f\u5f7c\u306b\u30e1\u30e2\u3092\u6b8b\u3057\u307e\u3057\u305f\u3002', '\uc800\ub294 \uadf8\uc5d0\uac8c \uba54\ubaa8\ub97c \ub0a8\uacbc\uc5b4\uc694.') },\n      { t: '\u865f\u78bc', s: '\u53f7\u7801', p: 'h\u00e0om\u01ce', meaning: TR('number', '\u756a\u53f7', '\ubc88\ud638'),\n        ex: [W('\u8acb','\u8bf7','Q\u01d0ng'), W('\u544a\u8a34','\u544a\u8bc9','g\u00e0os\u00f9'), W('\u6211','\u6211','w\u01d2'), W('\u4f60','\u4f60','n\u01d0'), W('\u7684','\u7684','de'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), WD('\u865f\u78bc','\u53f7\u7801','h\u00e0om\u01ce','h\u00e0om\u01ce'), '\u3002'],\n        exEn: TR('Please tell me your phone number.', '\u3042\u306a\u305f\u306e\u96fb\u8a71\u756a\u53f7\u3092\u6559\u3048\u3066\u304f\u3060\u3055\u3044\u3002', '\ub2f9\uc2e0\uc758 \uc804\ud654\ubc88\ud638\ub97c \uc54c\ub824\uc8fc\uc138\uc694.') },\n      { t: '\u898b\u9762', s: '\u89c1\u9762', p: 'ji\u00e0nmi\u00e0n', meaning: TR('to meet someone, to see someone', '\u4f1a\u3046', '\ub9cc\ub098\ub2e4'),\n        ex: [W('\u6211\u5011','\u6211\u4eec','W\u01d2men'), W('\u660e\u5929','\u660e\u5929','m\u00edngti\u0101n'), WD('\u898b\u9762','\u89c1\u9762','ji\u00e0nmi\u00e0n','ji\u00e0nmi\u00e0n'), '\uff0c', W('\u597d','\u597d','h\u01ceo'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('Let\\u2019s meet tomorrow, OK?', '\u660e\u65e5\u4f1a\u3044\u307e\u3057\u3087\u3046\u304b\u3002', '\uc6b0\ub9ac \ub0b4\uc77c \ub9cc\ub0a0\uae4c\uc694?') }\n    ],\n    'pl4-word-list-2': [\n      { t: '\u4ee5\u5f8c', s: '\u4ee5\u540e', p: 'y\u01d0h\u00f2u', meaning: TR('afterwards, after', '\u305d\u306e\u5f8c', '~\ud6c4\uc5d0, \uc55e\uc73c\ub85c'),\n        ex: [W('\u4e0b\u8ab2','\u4e0b\u8bfe','Xi\u00e0k\u00e8'), WD('\u4ee5\u5f8c','\u4ee5\u540e','y\u01d0h\u00f2u','y\u01d0h\u00f2u'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u8981','\u8981','y\u00e0o'), W('\u53bb','\u53bb','q\u00f9'), W('\u5716\u66f8\u9928','\u56fe\u4e66\u9986','t\u00fash\u016bgu\u01cen'), '\u3002'],\n        exEn: TR('After class, I want to go to the library.', '\u6388\u696d\u306e\u5f8c\u3001\u79c1\u306f\u56f3\u66f8\u9928\u306b\u884c\u304d\u305f\u3044\u3067\u3059\u3002', '\uc218\uc5c5 \ud6c4\uc5d0 \uc800\ub294 \ub3c4\uc11c\uad00\uc5d0 \uac00\uace0 \uc2f6\uc5b4\uc694.') },\n      { t: '\u4ee5\u524d', s: '\u4ee5\u524d', p: 'y\u01d0qi\u00e1n', meaning: TR('before, ago, formerly', '\u4ee5\u524d', '\uc608\uc804\uc5d0, ~\uc804\uc5d0'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u4ee5\u524d','\u4ee5\u524d','y\u01d0qi\u00e1n'), W('\u4e0d','\u4e0d','b\u00fa'), W('\u6703','\u4f1a','hu\u00ec'), W('\u8aaa','\u8bf4','shu\u014d'), W('\u4e2d\u6587','\u4e2d\u6587','Zh\u014dngw\u00e9n'), '\u3002'],\n        exEn: TR('I couldn\\u2019t speak Chinese before.', '\u79c1\u306f\u4ee5\u524d\u4e2d\u56fd\u8a9e\u304c\u8a71\u305b\u307e\u305b\u3093\u3067\u3057\u305f\u3002', '\uc800\ub294 \uc608\uc804\uc5d0 \uc911\uad6d\uc5b4\ub97c \ubabb\ud588\uc5b4\uc694.') },\n      { t: '\u5f9e\u524d', s: '\u4ece\u524d', p: 'c\u00f3ngqi\u00e1n', meaning: TR('formerly, in the past, used to', '\u6614', '\uc61b\ub0a0\uc5d0, \uc608\uc804\uc5d0'),\n        ex: [W('\u5f9e\u524d','\u4ece\u524d','C\u00f3ngqi\u00e1n'), W('\u9019\u88e1','\u8fd9\u91cc','zh\u00e8l\u01d0'), W('\u6c92\u6709','\u6ca1\u6709','m\u00e9iy\u01d2u'), W('\u5927\u6a13','\u5927\u697c','d\u00e0l\u00f3u'), '\u3002'],\n        exEn: TR('In the past there were no buildings here.', '\u6614\u3053\u3053\u306b\u306f\u30d3\u30eb\u304c\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002', '\uc608\uc804\uc5d0\ub294 \uc5ec\uae30\uc5d0 \uac74\ubb3c\uc774 \uc5c6\uc5c8\uc5b4\uc694.') },\n      { t: '\u672c\u4f86', s: '\u672c\u6765', p: 'b\u011bnl\u00e1i', meaning: TR('originally', '\u3082\u3068\u3082\u3068', '\uc6d0\ub798'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u672c\u4f86','\u672c\u6765','b\u011bnl\u00e1i'), W('\u60f3','\u60f3','xi\u01ceng'), W('\u5b78','\u5b66','xu\u00e9'), W('\u6cd5\u6587','\u6cd5\u6587','F\u01cew\u00e9n'), '\uff0c', W('\u5f8c\u4f86','\u540e\u6765','h\u00f2ul\u00e1i'), W('\u5b78','\u5b66','xu\u00e9le'), W('\u4e86','\u4e86','le'), W('\u4e2d\u6587','\u4e2d\u6587','Zh\u014dngw\u00e9n'), '\u3002'],\n        exEn: TR('I originally wanted to learn French, but later I learned Chinese.', '\u79c1\u306f\u3082\u3068\u3082\u3068\u30d5\u30e9\u30f3\u30b9\u8a9e\u3092\u5b66\u3073\u305f\u304b\u3063\u305f\u3067\u3059\u304c\u3001\u5f8c\u3067\u4e2d\u56fd\u8a9e\u3092\u5b66\u3073\u307e\u3057\u305f\u3002', '\uc800\ub294 \uc6d0\ub798 \ud504\ub791\uc2a4\uc5b4\ub97c \ubc30\uc6b0\uace0 \uc2f6\uc5c8\ub294\ub370, \ub098\uc911\uc5d0 \uc911\uad6d\uc5b4\ub97c \ubc30\uc6e0\uc5b4\uc694.') },\n      { t: '\u5f8c\u4f86', s: '\u540e\u6765', p: 'h\u00f2ul\u00e1i', meaning: TR('afterwards, later on', '\u305d\u306e\u5f8c', '\uadf8 \ud6c4\uc5d0, \ub098\uc911\uc5d0'),\n        ex: [WD('\u5f8c\u4f86','\u540e\u6765','H\u00f2ul\u00e1i','h\u00f2ul\u00e1i'), W('\u4ed6','\u4ed6','t\u0101'), W('\u6c7a\u5b9a','\u51b3\u5b9a','ju\u00e9d\u00ecng'), W('\u5b78','\u5b66','xu\u00e9'), W('\u4e2d\u6587','\u4e2d\u6587','Zh\u014dngw\u00e9n'), '\u3002'],\n        exEn: TR('Afterwards he decided to learn Chinese.', '\u305d\u306e\u5f8c\u3001\u5f7c\u306f\u4e2d\u56fd\u8a9e\u3092\u5b66\u3076\u3053\u3068\u306b\u6c7a\u3081\u307e\u3057\u305f\u3002', '\uadf8 \ud6c4\uc5d0 \uadf8\ub294 \uc911\uad6d\uc5b4\ub97c \ubc30\uc6b0\uae30\ub85c \uacb0\uc815\ud588\uc5b4\uc694.') },\n      { t: '\u53c8', s: '\u53c8', p: 'y\u00f2u', meaning: TR('again (in the past)', '\u307e\u305f(\u904e\u53bb)', '\ub610(\uacfc\uac70)'),\n        ex: [W('\u4ed6','\u4ed6','T\u0101'), W('\u4eca\u5929','\u4eca\u5929','j\u012bnti\u0101n'), W('\u53c8','\u53c8','y\u00f2u'), W('\u6253','\u6253','d\u01ce'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), W('\u4f86','\u6765','l\u00e1ile'), W('\u4e86','\u4e86','le'), '\u3002'],\n        exEn: TR('He called again today.', '\u5f7c\u306f\u4eca\u65e5\u307e\u305f\u96fb\u8a71\u3092\u304b\u3051\u3066\u304d\u307e\u3057\u305f\u3002', '\uadf8\ub294 \uc624\ub298 \ub610 \uc804\ud654\ub97c \uac78\uc5b4\uc654\uc5b4\uc694.') },\n      { t: '\u6b21', s: '\u6b21', p: 'c\u00ec', meaning: TR('measure word for the number of times', '\u301c\u56de(\u91cf\u8a5e)', '~\ubc88(\uc591\uc0ac)'),\n        ex: [W('\u9019','\u8fd9','Zh\u00e8'), W('\u662f','\u662f','sh\u00ec'), W('\u6211','\u6211','w\u01d2'), W('\u7b2c\u4e00','\u7b2c\u4e00','d\u00ecy\u012b'), W('\u6b21','\u6b21','c\u00ec'), W('\u4f86','\u6765','l\u00e1i'), W('\u81fa\u7063','\u53f0\u6e7e','T\u00e1iw\u0101n'), '\u3002'],\n        exEn: TR('This is the first time I\\u2019ve come to Taiwan.', '\u3053\u308c\u306f\u79c1\u304c\u53f0\u6e7e\u306b\u6765\u308b\u306e\u304c\u521d\u3081\u3066\u3067\u3059\u3002', '\uc774\ubc88\uc774 \uc81c\uac00 \ub300\ub9cc\uc5d0 \ucc98\uc74c \uc624\ub294 \uac70\uc608\uc694.') }\n    ],\n    'pl4-word-list-3': [\n      { t: '\u501f', s: '\u501f', p: 'ji\u00e8', meaning: TR('to borrow, to lend', '\u501f\u308a\u308b;\u8cb8\u3059', '\ube4c\ub9ac\ub2e4; \ube4c\ub824\uc8fc\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u53ef\u4ee5','\u53ef\u4ee5','k\u011by\u01d0'), W('\u8ddf','\u8ddf','g\u0113n'), W('\u4f60','\u4f60','n\u01d0'), W('\u501f','\u501f','ji\u00e8'), W('\u4e00','\u4e00','y\u00ec'), W('\u679d','\u679d','zh\u012b'), W('\u7b46','\u7b14','b\u01d0'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('Can I borrow a pen from you?', '\u30da\u30f3\u3092\u4e00\u672c\u8cb8\u3057\u3066\u3082\u3089\u3048\u307e\u3059\u304b\u3002', '\ud39c \ud558\ub098 \ube4c\ub824\ub3c4 \ub420\uae4c\uc694?') },\n      { t: '\u544a\u8a34', s: '\u544a\u8bc9', p: 'g\u00e0os\u00f9', meaning: TR('to tell, to inform', '\u4f1d\u3048\u308b\u3001\u6559\u3048\u308b', '\uc54c\ub9ac\ub2e4, \ub9d0\ud574\uc8fc\ub2e4'),\n        ex: [W('\u8acb','\u8bf7','Q\u01d0ng'), WD('\u544a\u8a34','\u544a\u8bc9','g\u00e0os\u00f9','g\u00e0os\u00f9'), W('\u5979','\u5979','t\u0101'), W('\u6211','\u6211','w\u01d2'), W('\u4f86','\u6765','l\u00e1igu\u00f2'), W('\u904e','\u8fc7','gu\u00f2'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), '\u3002'],\n        exEn: TR('Please tell her I called.', '\u79c1\u304c\u96fb\u8a71\u3057\u305f\u3053\u3068\u3092\u5f7c\u5973\u306b\u4f1d\u3048\u3066\u304f\u3060\u3055\u3044\u3002', '\uc81c\uac00 \uc804\ud654\ud588\ub2e4\uace0 \uadf8\ub140\uc5d0\uac8c \uc804\ud574 \uc8fc\uc138\uc694.') },\n      { t: '\u904e', s: '\u8fc7', p: 'gu\u00f2', meaning: TR('suffix marking a past experience', '\u301c\u3057\u305f\u3053\u3068\u304c\u3042\u308b(\u7d4c\u9a13\u3092\u8868\u3059\u63a5\u5c3e\u8f9e)', '~\ud55c \uc801\uc774 \uc788\ub2e4(\uacbd\ud5d8\uc744 \ub098\ud0c0\ub0b4\ub294 \uc811\ubbf8\uc0ac)'),\n        ex: [W('\u4f60','\u4f60','N\u01d0'), W('\u53bb','\u53bb','q\u00f9'), WD('\u904e','\u8fc7','gu\u00f2','gu\u00f2'), W('\u6cd5\u570b','\u6cd5\u56fd','F\u01cegu\u00f3'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('Have you ever been to France?', '\u3042\u306a\u305f\u306f\u30d5\u30e9\u30f3\u30b9\u306b\u884c\u3063\u305f\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u304b\u3002', '\ud504\ub791\uc2a4\uc5d0 \uac00 \ubcf8 \uc801 \uc788\uc5b4\uc694?') },\n      { t: '\u8a18\u5f97', s: '\u8bb0\u5f97', p: 'j\u00ecde', meaning: TR('to remember', '\u899a\u3048\u3066\u3044\u308b', '\uae30\uc5b5\ud558\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u4e0d','\u4e0d','b\u00fa'), WD('\u8a18\u5f97','\u8bb0\u5f97','j\u00ecde','j\u00ecde'), W('\u4ed6','\u4ed6','t\u0101de'), W('\u7684','\u7684','de'), W('\u540d\u5b57','\u540d\u5b57','m\u00edngzi'), W('\u4e86','\u4e86','le'), '\u3002'],\n        exEn: TR('I don\\u2019t remember his name.', '\u79c1\u306f\u5f7c\u306e\u540d\u524d\u3092\u899a\u3048\u3066\u3044\u307e\u305b\u3093\u3002', '\uc800\ub294 \uadf8\uc758 \uc774\ub984\uc774 \uae30\uc5b5\ub098\uc9c0 \uc54a\uc544\uc694.') },\n      { t: '\u8a18', s: '\u8bb0', p: 'j\u00ec', meaning: TR('to record, to write, to jot down', '\u8a18\u9332\u3059\u308b\u3001\u66f8\u304d\u7559\u3081\u308b', '\uae30\ub85d\ud558\ub2e4, \uc801\uc5b4\ub450\ub2e4'),\n        ex: [W('\u8acb','\u8bf7','Q\u01d0ng'), W('\u628a','\u628a','b\u01ce'), W('\u865f\u78bc','\u53f7\u7801','h\u00e0om\u01ce'), W('\u8a18','\u8bb0','j\u00ec'), W('\u4e0b\u4f86','\u4e0b\u6765','xi\u00e0l\u00e1i'), '\u3002'],\n        exEn: TR('Please jot down the number.', '\u756a\u53f7\u3092\u66f8\u304d\u7559\u3081\u3066\u304f\u3060\u3055\u3044\u3002', '\ubc88\ud638\ub97c \uc801\uc5b4 \ub450\uc138\uc694.') },\n      { t: '\u8a8d\u8b58', s: '\u8ba4\u8bc6', p: 'r\u00e8nshi', meaning: TR('to know (a person), to recognize', '\u77e5\u308a\u5408\u3046\u3001\u77e5\u3063\u3066\u3044\u308b', '\uc54c\ub2e4, \uc778\uc2dd\ud558\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), WD('\u8a8d\u8b58','\u8ba4\u8bc6','r\u00e8nshi','r\u00e8nshi'), W('\u4e00','\u4e00','y\u00edw\u00e8i'), W('\u4f4d','\u4f4d','w\u00e8i'), W('\u6cd5\u6587','\u6cd5\u6587','F\u01cew\u00e9n'), W('\u8001\u5e2b','\u8001\u5e08','l\u01ceosh\u012b'), '\u3002'],\n        exEn: TR('I know a French teacher.', '\u79c1\u306f\u30d5\u30e9\u30f3\u30b9\u8a9e\u306e\u5148\u751f\u3092\u4e00\u4eba\u77e5\u3063\u3066\u3044\u307e\u3059\u3002', '\uc800\ub294 \ud504\ub791\uc2a4\uc5b4 \uc120\uc0dd\ub2d8\uc744 \ud55c \ubd84 \uc54c\uc544\uc694.') },\n      { t: '\u8a8d\u5f97', s: '\u8ba4\u5f97', p: 'r\u00e8nde', meaning: TR('to know, to recognize', '\u898b\u899a\u3048\u304c\u3042\u308b', '\uc54c\uc544\ubcf4\ub2e4'),\n        ex: [W('\u4f60','\u4f60','N\u01d0'), WD('\u8a8d\u5f97','\u8ba4\u5f97','r\u00e8nde','r\u00e8nde'), W('\u9019\u500b','\u8fd9\u4e2a','zh\u00e8ige'), W('\u5b57','\u5b57','z\u00ec'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('Do you recognize this character?', '\u3053\u306e\u6f22\u5b57\u3092\u77e5\u3063\u3066\u3044\u307e\u3059\u304b\u3002', '\uc774 \uae00\uc790\ub97c \uc544\uc138\uc694?') },\n      { t: '\u6c7a\u5b9a', s: '\u51b3\u5b9a', p: 'ju\u00e9d\u00ecng', meaning: TR('to decide', '\u6c7a\u3081\u308b', '\uacb0\uc815\ud558\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), WD('\u6c7a\u5b9a','\u51b3\u5b9a','ju\u00e9d\u00ecng','ju\u00e9d\u00ecng'), W('\u660e\u5e74','\u660e\u5e74','m\u00edngni\u00e1n'), W('\u53bb','\u53bb','q\u00f9'), W('\u82f1\u570b','\u82f1\u56fd','Y\u012bnggu\u00f3'), W('\u5ff5\u66f8','\u5ff5\u4e66','ni\u00e0nsh\u016b'), '\u3002'],\n        exEn: TR('I\\u2019ve decided to go study in England next year.', '\u79c1\u306f\u6765\u5e74\u30a4\u30ae\u30ea\u30b9\u3078\u52c9\u5f37\u3057\u306b\u884c\u304f\u3053\u3068\u306b\u6c7a\u3081\u307e\u3057\u305f\u3002', '\uc800\ub294 \ub0b4\ub144\uc5d0 \uc601\uad6d\uc73c\ub85c \uacf5\ubd80\ud558\ub7ec \uac00\uae30\ub85c \uacb0\uc815\ud588\uc5b4\uc694.') },\n      { t: '\u6d17', s: '\u6d17', p: 'x\u01d0', meaning: TR('to wash', '\u6d17\u3046', '\uc53b\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u6bcf\u5929','\u6bcf\u5929','m\u011biti\u0101n'), W('\u6d17','\u6d17','x\u01d0'), W('\u8863\u670d','\u8863\u670d','y\u012bf\u00fa'), '\u3002'],\n        exEn: TR('I wash clothes every day.', '\u79c1\u306f\u6bce\u65e5\u6d17\u6fef\u3092\u3057\u307e\u3059\u3002', '\uc800\ub294 \ub9e4\uc77c \ube68\ub798\ub97c \ud574\uc694.') },\n      { t: '\u9ad8\u8208', s: '\u9ad8\u5174', p: 'g\u0101ox\u00ecng', meaning: TR('to be happy', '\u5b09\u3057\u3044', '\uae30\uc058\ub2e4'),\n        ex: [WD('\u8a8d\u8b58','\u8ba4\u8bc6','R\u00e8nshi','r\u00e8nshi'), W('\u4f60','\u4f60','n\u01d0'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u5f88','\u5f88','h\u011bn'), WD('\u9ad8\u8208','\u9ad8\u5174','g\u0101ox\u00ecng','g\u0101ox\u00ecng'), '\u3002'],\n        exEn: TR('I\\u2019m happy to know you.', '\u3042\u306a\u305f\u3068\u77e5\u308a\u5408\u3048\u3066\u5b09\u3057\u3044\u3067\u3059\u3002', '\ub2f9\uc2e0\uc744 \uc54c\uac8c \ub418\uc5b4 \uae30\ubed0\uc694.') }\n    ],\n    'pl4-word-list-4': [\n      { t: '\u5927\u6982', s: '\u5927\u6982', p: 'd\u00e0g\u00e0i', meaning: TR('probably', '\u305f\u3076\u3093', '\uc544\ub9c8'),\n        ex: [W('\u4ed6','\u4ed6','T\u0101'), W('\u5927\u6982','\u5927\u6982','d\u00e0g\u00e0i'), W('\u516d','\u516d','li\u00f9'), W('\u9ede','\u70b9','di\u01cen'), W('\u56de\u4f86','\u56de\u6765','hu\u00edlai'), '\u3002'],\n        exEn: TR('He\\u2019ll probably be back at six.', '\u5f7c\u306f\u305f\u3076\u3093\u516d\u6642\u306b\u5e30\u3063\u3066\u304d\u307e\u3059\u3002', '\uadf8\ub294 \uc544\ub9c8 6\uc2dc\uc5d0 \ub3cc\uc544\uc62c \uac70\uc608\uc694.') },\n      { t: '\u9ebb\u7169', s: '\u9ebb\u70e6', p: 'm\u00e1fan', meaning: TR('troublesome; to bother', '\u9762\u5012\u3060;\u8ff7\u60d1\u3092\u304b\u3051\u308b', '\ubc88\uac70\ub86d\ub2e4; \ud3d0\ub97c \ub07c\uce58\ub2e4'),\n        ex: [WD('\u9ebb\u7169','\u9ebb\u70e6','M\u00e1fan','m\u00e1fan'), W('\u4f60','\u4f60','n\u01d0'), W('\u66ff','\u66ff','t\u00ec'), W('\u6211','\u6211','w\u01d2'), W('\u544a\u8a34','\u544a\u8bc9','g\u00e0os\u00f9'), W('\u5979','\u5979','t\u0101'), '\u3002'],\n        exEn: TR('Please be so kind as to tell her for me.', '\u304a\u624b\u6570\u3067\u3059\u304c\u3001\u5f7c\u5973\u306b\u4f1d\u3048\u3066\u304f\u3060\u3055\u3044\u3002', '\ubc88\uac70\ub85c\uc6b0\uc2dc\uaca0\uc9c0\ub9cc \uadf8\ub140\uc5d0\uac8c \uc804\ud574 \uc8fc\uc138\uc694.') },\n      { t: '\u7169', s: '\u70e6', p: 'f\u00e1n', meaning: TR('to be vexed, annoyed; to annoy', '\u3046\u3093\u3056\u308a\u3059\u308b;\u7169\u308f\u305b\u308b', '\uc9dc\uc99d\ub098\ub2e4; \uadc0\ucc2e\uac8c \ud558\ub2e4'),\n        ex: [W('\u5225','\u522b','Bi\u00e9'), WD('\u7169','\u70e6','f\u00e1n','f\u00e1n'), W('\u6211','\u6211','w\u01d2'), '\uff0c', W('\u597d','\u597d','h\u01ceo'), W('\u55ce','\u5417','ma'), '\uff1f'],\n        exEn: TR('Don\\u2019t bother me, OK?', '\u79c1\u3092\u7169\u308f\u305b\u306a\u3044\u3067\u304f\u3060\u3055\u3044\u3002', '\uc800\ub97c \uadc0\ucc2e\uac8c \ud558\uc9c0 \ub9c8\uc138\uc694.') },\n      { t: '\u6050\u6015', s: '\u6050\u6015', p: 'k\u01d2ngp\u00e0', meaning: TR('I\\u2019m afraid that, perhaps', '\u6b8b\u5ff5\u306a\u304c\u3089\u3001\u6050\u3089\u304f', '\uc544\uc27d\uc9c0\ub9cc, \uc544\ub9c8'),\n        ex: [W('\u6050\u6015','\u6050\u6015','K\u01d2ngp\u00e0'), W('\u4ed6','\u4ed6','t\u0101'), W('\u4eca\u5929','\u4eca\u5929','j\u012bnti\u0101n'), W('\u4e0d\u80fd','\u4e0d\u80fd','b\u00f9n\u00e9ng'), W('\u4f86','\u6765','l\u00e1i'), W('\u4e86','\u4e86','le'), '\u3002'],\n        exEn: TR('I\\u2019m afraid he can\\u2019t come today.', '\u6b8b\u5ff5\u306a\u304c\u3089\u5f7c\u306f\u4eca\u65e5\u6765\u3089\u308c\u307e\u305b\u3093\u3002', '\uc544\uc27d\uc9c0\ub9cc \uadf8\ub294 \uc624\ub298 \ubabb \uc62c \uac83 \uac19\uc544\uc694.') },\n      { t: '\u6015', s: '\u6015', p: 'p\u00e0', meaning: TR('to fear', '\u6016\u304c\u308b', '\ubb34\uc11c\uc6cc\ud558\ub2e4'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u59b9\u59b9','\u59b9\u59b9','m\u00e8imei'), W('\u5f88','\u5f88','h\u011bn'), W('\u6015','\u6015','p\u00e0'), W('\u72d7','\u72d7','g\u01d2u'), '\u3002'],\n        exEn: TR('My younger sister is very afraid of dogs.', '\u79c1\u306e\u59b9\u306f\u72ac\u3092\u3068\u3066\u3082\u6016\u304c\u308a\u307e\u3059\u3002', '\uc81c \uc5ec\ub3d9\uc0dd\uc740 \uac1c\ub97c \ub9e4\uc6b0 \ubb34\uc11c\uc6cc\ud574\uc694.') }\n    ],\n    'pl4-word-list-5': [\n      { t: '\u4e2d\u5b78', s: '\u4e2d\u5b66', p: 'zh\u014dngxu\u00e9', meaning: TR('middle school', '\u4e2d\u5b66\u6821', '\uc911\ud559\uad50'),\n        ex: [W('\u6211','\u6211','W\u01d2'), W('\u59d0\u59d0','\u59d0\u59d0','ji\u011bjie'), W('\u5728','\u5728','z\u00e0i'), WD('\u4e2d\u5b78','\u4e2d\u5b66','zh\u014dngxu\u00e9','zh\u014dngxu\u00e9'), W('\u6559','\u6559','ji\u0101o'), W('\u82f1\u6587','\u82f1\u6587','Y\u012bngw\u00e9n'), '\u3002'],\n        exEn: TR('My older sister teaches English at a middle school.', '\u79c1\u306e\u59c9\u306f\u4e2d\u5b66\u6821\u3067\u82f1\u8a9e\u3092\u6559\u3048\u3066\u3044\u307e\u3059\u3002', '\uc81c \uc5b8\ub2c8\ub294 \uc911\ud559\uad50\uc5d0\uc11c \uc601\uc5b4\ub97c \uac00\ub974\uccd0\uc694.') },\n      { t: '\u624b', s: '\u624b', p: 'sh\u01d2u', meaning: TR('hand', '\u624b', '\uc190'),\n        ex: [W('\u8acb','\u8bf7','Q\u01d0ng'), W('\u6d17','\u6d17','x\u01d0'), W('\u624b','\u624b','sh\u01d2u'), '\uff0c', W('\u518d','\u518d','z\u00e0i'), W('\u5403\u98ef','\u5403\u996d','ch\u012bf\u00e0n'), '\u3002'],\n        exEn: TR('Please wash your hands before eating.', '\u624b\u3092\u6d17\u3063\u3066\u304b\u3089\u3054\u98ef\u3092\u98df\u3079\u3066\u304f\u3060\u3055\u3044\u3002', '\uc190\uc744 \uc53b\uace0 \ub098\uc11c \ubc25\uc744 \uba39\uc73c\uc138\uc694.') },\n      { t: '\u982d', s: '\u5934', p: 't\u00f3u', meaning: TR('the first; head', '\u6700\u521d\u306e;\u982d', '\ucd5c\ucd08\uc758; \uba38\ub9ac'),\n        ex: [W('\u9019','\u8fd9','Zh\u00e8'), W('\u662f','\u662f','sh\u00ec'), W('\u6211','\u6211','w\u01d2'), WD('\u982d','\u5934','t\u00f3u','t\u00f3u'), W('\u4e00','\u4e00','y\u00ed'), W('\u6b21','\u6b21','c\u00ec'), W('\u6253','\u6253','d\u01ce'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), W('\u7d66','\u7ed9','g\u011bi'), W('\u8001\u5e2b','\u8001\u5e08','l\u01ceosh\u012b'), '\u3002'],\n        exEn: TR('This is the first time I\\u2019ve called the teacher.', '\u3053\u308c\u306f\u79c1\u304c\u5148\u751f\u306b\u96fb\u8a71\u3092\u304b\u3051\u308b\u306e\u304c\u521d\u3081\u3066\u3067\u3059\u3002', '\uc774\ubc88\uc774 \uc81c\uac00 \uc120\uc0dd\ub2d8\uaed8 \ucc98\uc74c \uc804\ud654\ud558\ub294 \uac70\uc608\uc694.') },\n      { t: '\u7fa9\u5927\u5229', s: '\u4e49\u5927\u5229', p: 'Y\u00ecd\u00e0l\u00ec', meaning: TR('Italy', '\u30a4\u30bf\u30ea\u30a2', '\uc774\ud0c8\ub9ac\uc544'),\n        ex: [W('\u4ed6','\u4ed6','T\u0101'), W('\u6253\u7b97','\u6253\u7b97','d\u01cesu\u00e0n'), W('\u53bb','\u53bb','q\u00f9'), WD('\u7fa9\u5927\u5229','\u4e49\u5927\u5229','Y\u00ecd\u00e0l\u00ec','Y\u00ecd\u00e0l\u00ec'), W('\u5ff5\u66f8','\u5ff5\u4e66','ni\u00e0nsh\u016b'), '\u3002'],\n        exEn: TR('He plans to go study in Italy.', '\u5f7c\u306f\u30a4\u30bf\u30ea\u30a2\u3078\u52c9\u5f37\u3057\u306b\u884c\u304f\u3064\u3082\u308a\u3067\u3059\u3002', '\uadf8\ub294 \uc774\ud0c8\ub9ac\uc544\ub85c \uacf5\ubd80\ud558\ub7ec \uac08 \uacc4\ud68d\uc774\uc5d0\uc694.') },\n      { t: '\u90f5\u5dee', s: '\u90ae\u5dee', p: 'y\u00f3uch\u0101i', meaning: TR('mail carrier, postman', '\u90f5\u4fbf\u914d\u9054\u54e1', '\uc6b0\uccb4\ubd80'),\n        ex: [WD('\u90f5\u5dee','\u90ae\u5dee','Y\u00f3uch\u0101i','y\u00f3uch\u0101i'), W('\u6bcf\u5929','\u6bcf\u5929','m\u011biti\u0101n'), W('\u65e9\u4e0a','\u65e9\u4e0a','z\u01ceoshang'), W('\u4f86','\u6765','l\u00e1i'), W('\u6211','\u6211','w\u01d2'), W('\u5bb6','\u5bb6','ji\u0101'), '\u3002'],\n        exEn: TR('The mail carrier comes to my house every morning.', '\u90f5\u4fbf\u5c4b\u3055\u3093\u306f\u6bce\u671d\u79c1\u306e\u5bb6\u306b\u6765\u307e\u3059\u3002', '\uc6b0\uccb4\ubd80\ub294 \ub9e4\uc77c \uc544\uce68 \uc800\ud76c \uc9d1\uc5d0 \uc640\uc694.') }\n    ]\n  };\n\n  var DIALOGUE = [\n    { speakerT: '\u9ad8\u5148\u751f', speakerS: '\u9ad8\u5148\u751f',\n      tokens: [W('\u5582','\u5582','W\u00e9i'), '\uff0c', W('\u8acb\u554f','\u8bf7\u95ee','q\u01d0ngw\u00e8n'), W('\u6797','\u6797','L\u00edn'), W('\u5c0f\u59d0','\u5c0f\u59d0','Xi\u01ceoji\u011b'), W('\u5728','\u5728','z\u00e0i'), W('\u5bb6','\u5bb6','ji\u0101'), W('\u55ce','\u5417','ma'), '\uff1f'],\n      en: TR('Hello, is Miss Lin home?', '\u3082\u3057\u3082\u3057\u3001\u6797\u3055\u3093\u306f\u3054\u5728\u5b85\u3067\u3059\u304b\u3002', '\uc5ec\ubcf4\uc138\uc694, \ub9b0 \uc528 \ub301\uc5d0 \uacc4\uc138\uc694?') },\n    { speakerT: '\u6797\u5c0f\u59d0\u7684\u5f1f\u5f1f', speakerS: '\u6797\u5c0f\u59d0\u7684\u5f1f\u5f1f',\n      tokens: [W('\u5c0d\u4e0d\u8d77','\u5bf9\u4e0d\u8d77','Du\u00ecb\u00f9q\u01d0'), '\uff0c', W('\u5979','\u5979','t\u0101'), W('\u4e0d','\u4e0d','b\u00fa'), W('\u5728','\u5728','z\u00e0i'), '\uff0c', W('\u4f60','\u4f60','n\u01d0'), W('\u662f','\u662f','sh\u00ec'), W('\u54ea','\u54ea','n\u01ce'), W('\u4f4d','\u4f4d','w\u00e8i'), '\uff1f'],\n      en: TR('Sorry, she\\u2019s not here. Who is this?', '\u3059\u307f\u307e\u305b\u3093\u3001\u5f7c\u5973\u306f\u4eca\u3044\u307e\u305b\u3093\u3002\u3069\u3061\u3089\u69d8\u3067\u3059\u304b\u3002', '\uc8c4\uc1a1\ud574\uc694, \uadf8\ub140\ub294 \uc9c0\uae08 \uc5c6\uc5b4\uc694. \ub204\uad6c\uc138\uc694?') },\n    { speakerT: '\u9ad8\u5148\u751f', speakerS: '\u9ad8\u5148\u751f',\n      tokens: [W('\u6211','\u6211','W\u01d2'), W('\u662f','\u662f','sh\u00ec'), W('\u5979','\u5979','t\u0101de'), W('\u7684','\u7684','de'), W('\u670b\u53cb','\u670b\u53cb','p\u00e9ngy\u01d2u'), '\uff0c', W('\u9ad8','\u9ad8','G\u0101o'), W('\u6587\u5c71','\u6587\u5c71','W\u00e9nsh\u0101n'), '\u3002', W('\u5979','\u5979','T\u0101'), W('\u4ec0\u9ebc','\u4ec0\u4e48','sh\u00e9nme'), W('\u6642\u5019','\u65f6\u5019','sh\u00edh\u00f2u'), W('\u56de\u4f86','\u56de\u6765','hu\u00edlai'), '\uff1f'],\n      en: TR('I\\u2019m her friend, Gao Wenshan. When will she be back?', '\u79c1\u306f\u5f7c\u5973\u306e\u53cb\u9054\u306e\u9ad8\u6587\u5c71\u3067\u3059\u3002\u5f7c\u5973\u306f\u3044\u3064\u5e30\u3063\u3066\u304d\u307e\u3059\u304b\u3002', '\uc800\ub294 \uadf8\ub140\uc758 \uce5c\uad6c \uac00\uc624\uc6d0\uc0b0\uc774\uc5d0\uc694. \uadf8\ub140\ub294 \uc5b8\uc81c \ub3cc\uc544\uc640\uc694?') },\n    { speakerT: '\u6797\u5c0f\u59d0\u7684\u5f1f\u5f1f', speakerS: '\u6797\u5c0f\u59d0\u7684\u5f1f\u5f1f',\n      tokens: [W('\u6211','\u6211','W\u01d2'), W('\u4e0d','\u4e0d','b\u00f9'), W('\u77e5\u9053','\u77e5\u9053','zh\u012bd\u00e0o'), '\uff0c', W('\u4e0d\u904e','\u4e0d\u8fc7','b\u00fagu\u00f2'), W('\u5927\u6982','\u5927\u6982','d\u00e0g\u00e0i'), W('\u516d','\u516d','li\u00f9'), W('\u9ede','\u70b9','di\u01cen'), WD('\u4ee5\u5f8c','\u4ee5\u540e','y\u01d0h\u00f2u','y\u01d0h\u00f2u'), W('\u56de\u4f86','\u56de\u6765','hu\u00edlai'), '\u3002'],\n      en: TR('I don\\u2019t know, but she\\u2019ll probably be back after six.', '\u308f\u304b\u308a\u307e\u305b\u3093\u304c\u3001\u305f\u3076\u30936\u6642\u4ee5\u964d\u306b\u623b\u308a\u307e\u3059\u3002', '\ubaa8\ub974\uaca0\uc9c0\ub9cc, \uc544\ub9c8 6\uc2dc \uc774\ud6c4\uc5d0 \ub3cc\uc544\uc62c \uac70\uc608\uc694.') },\n    { speakerT: '\u9ad8\u5148\u751f', speakerS: '\u9ad8\u5148\u751f',\n      tokens: [WD('\u9ebb\u7169','\u9ebb\u70e6','M\u00e1fan','m\u00e1fan'), W('\u4f60','\u4f60','n\u01d0'), W('\u544a\u8a34','\u544a\u8bc9','g\u00e0os\u00f9'), W('\u5979','\u5979','t\u0101'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u60f3','\u60f3','xi\u01ceng'), W('\u8ddf','\u8ddf','g\u0113n'), W('\u5979','\u5979','t\u0101'), W('\u501f','\u501f','ji\u00e8'), W('\u4e00','\u4e00','y\u00ec'), W('\u672c','\u672c','b\u011bn'), W('\u66f8','\u4e66','sh\u016b'), '\uff0c', W('\u53ef\u4ee5','\u53ef\u4ee5','k\u011by\u01d0'), W('\u55ce','\u5417','ma'), '\uff1f'],\n      en: TR('Could you tell her I\\u2019d like to borrow a book from her?', '\u304a\u624b\u6570\u3067\u3059\u304c\u3001\u5f7c\u5973\u306b\u672c\u3092\u4e00\u518a\u501f\u308a\u305f\u3044\u3068\u4f1d\u3048\u3066\u3044\u305f\u3060\u3051\u307e\u3059\u304b\u3002', '\ubc88\uac70\ub85c\uc6b0\uc2dc\uaca0\uc9c0\ub9cc, \uadf8\ub140\uc5d0\uac8c \ucc45 \ud55c \uad8c\uc744 \ube4c\ub9ac\uace0 \uc2f6\ub2e4\uace0 \uc804\ud574 \uc8fc\uc2dc\uaca0\uc5b4\uc694?') },\n    { speakerT: '\u6797\u5c0f\u59d0\u7684\u5f1f\u5f1f', speakerS: '\u6797\u5c0f\u59d0\u7684\u5f1f\u5f1f',\n      tokens: [W('\u597d','\u597d','H\u01ceo'), W('\u7684','\u7684','de'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u5e6b','\u5e2e','b\u0101ng'), W('\u4f60','\u4f60','n\u01d0'), W('\u7559','\u7559','li\u00fa'), W('\u4e00','\u4e00','y\u00ec'), W('\u5f35','\u5f20','zh\u0101ng'), W('\u5b57\u689d','\u5b57\u6761','z\u00ecti\u00e1o'), '\u3002'],\n      en: TR('OK, I\\u2019ll leave her a note for you.', '\u308f\u304b\u308a\u307e\u3057\u305f\u3001\u3042\u306a\u305f\u306e\u305f\u3081\u306b\u30e1\u30e2\u3092\u6b8b\u3057\u3066\u304a\u304d\u307e\u3059\u3002', '\uc54c\uaca0\uc5b4\uc694, \ub2f9\uc2e0\uc744 \uc704\ud574 \uba54\ubaa8\ub97c \ub0a8\uaca8 \ub458\uac8c\uc694.') },\n    { speakerT: '\u9ad8\u5148\u751f', speakerS: '\u9ad8\u5148\u751f',\n      tokens: [W('\u8b1d\u8b1d','\u8c22\u8c22','Xi\u00e8xie'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u7684','\u7684','de'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), W('\u865f\u78bc','\u53f7\u7801','h\u00e0om\u01ce'), W('\u662f','\u662f','sh\u00ec'), W('2345','2345','\u00e8r s\u0101n s\u00ec w\u01d4'), '-', W('6789','6789','li\u00f9 q\u012b b\u0101 ji\u01d4'), '\u3002'],\n      en: TR('Thanks. My phone number is 2345-6789.', '\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\u79c1\u306e\u96fb\u8a71\u756a\u53f7\u306f2345-6789\u3067\u3059\u3002', '\uac10\uc0ac\ud569\ub2c8\ub2e4. \uc81c \uc804\ud654\ubc88\ud638\ub294 2345-6789\uc608\uc694.') },\n    { speakerT: '\u6797\u5c0f\u59d0', speakerS: '\u6797\u5c0f\u59d0',\n      tokens: [W('\u5582','\u5582','W\u00e9i'), '\uff0c', W('\u9ad8','\u9ad8','G\u0101o'), W('\u6587\u5c71','\u6587\u5c71','W\u00e9nsh\u0101n'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u662f','\u662f','sh\u00ec'), W('\u6797','\u6797','L\u00edn'), W('\u7f8e\u771f','\u7f8e\u771f','M\u011bizh\u0113n'), '\uff0c', W('\u4f60','\u4f60','n\u01d0'), W('\u525b\u624d','\u521a\u624d','g\u0101ngc\u00e1i'), W('\u6253','\u6253','d\u01ce'), W('\u96fb\u8a71','\u7535\u8bdd','di\u00e0nhu\u00e0'), W('\u4f86','\u6765','l\u00e1i'), W('\u627e','\u627e','zh\u01ceo'), W('\u6211','\u6211','w\u01d2'), W('\u55ce','\u5417','ma'), '\uff1f'],\n      en: TR('Hello, Wenshan, this is Meizhen Lin \u2014 did you call for me just now?', '\u3082\u3057\u3082\u3057\u3001\u6587\u5c71\u3055\u3093\u3001\u6797\u7f8e\u771f\u3067\u3059\u3002\u3055\u3063\u304d\u79c1\u306b\u96fb\u8a71\u3092\u304f\u308c\u307e\u3057\u305f\u304b\u3002', '\uc5ec\ubcf4\uc138\uc694, \uc6d0\uc0b0 \uc528, \uc800 \ub9b0\uba54\uc774\uc804\uc774\uc5d0\uc694. \ubc29\uae08 \uc800\ud55c\ud14c \uc804\ud654\ud558\uc168\uc5b4\uc694?') },\n    { speakerT: '\u9ad8\u5148\u751f', speakerS: '\u9ad8\u5148\u751f',\n      tokens: [W('\u5c0d','\u5bf9','Du\u00ec'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u60f3','\u60f3','xi\u01ceng'), W('\u8ddf','\u8ddf','g\u0113n'), W('\u4f60','\u4f60','n\u01d0'), W('\u501f','\u501f','ji\u00e8'), W('\u66f8','\u4e66','sh\u016b'), '\uff0c', W('\u4e0d','\u4e0d','b\u00f9'), W('\u77e5\u9053','\u77e5\u9053','zh\u012bd\u00e0o'), W('\u4f60','\u4f60','n\u01d0'), W('\u8a8d','\u8ba4','r\u00e8n'), W('\u4e0d','\u4e0d','b\u00fa'), W('\u8a8d\u8b58','\u8ba4\u8bc6','r\u00e8nshi'), W('\u5c0f\u738b','\u5c0f\u738b','Xi\u01ceo W\u00e1ng'), '\uff1f', W('\u4ed6','\u4ed6','T\u0101'), W('\u8aaa','\u8bf4','shu\u014d'), W('\u4ed6','\u4ed6','t\u0101'), W('\u4e5f','\u4e5f','y\u011b'), W('\u60f3','\u60f3','xi\u01ceng'), W('\u8ddf','\u8ddf','g\u0113n'), W('\u4f60','\u4f60','n\u01d0'), W('\u501f','\u501f','ji\u00e8'), W('\u9019','\u8fd9','zh\u00e8'), W('\u672c','\u672c','b\u011bn'), W('\u66f8','\u4e66','sh\u016b'), '\u3002'],\n      en: TR('Right, I\\u2019d like to borrow a book from you \u2014 I wonder, do you know Xiao Wang? He said he also wants to borrow this book from you.', '\u306f\u3044\u3001\u3042\u306a\u305f\u304b\u3089\u672c\u3092\u501f\u308a\u305f\u3044\u306e\u3067\u3059\u304c\u3001\u5c0f\u738b\u3092\u77e5\u3063\u3066\u3044\u307e\u3059\u304b\u3002\u5f7c\u3082\u3042\u306a\u305f\u304b\u3089\u3053\u306e\u672c\u3092\u501f\u308a\u305f\u3044\u3068\u8a00\u3063\u3066\u3044\u307e\u3057\u305f\u3002', '\ub124, \ub2f9\uc2e0\ud55c\ud14c\uc11c \ucc45\uc744 \ube4c\ub9ac\uace0 \uc2f6\uc740\ub370, \uc0e4\uc624\uc655\uc744 \uc544\uc138\uc694? \uadf8\ub3c4 \ub2f9\uc2e0\uc5d0\uac8c\uc11c \uc774 \ucc45\uc744 \ube4c\ub9ac\uace0 \uc2f6\ub2e4\uace0 \ud588\uc5b4\uc694.') },\n    { speakerT: '\u6797\u5c0f\u59d0', speakerS: '\u6797\u5c0f\u59d0',\n      tokens: [WD('\u8a8d\u8b58','\u8ba4\u8bc6','R\u00e8nshi','r\u00e8nshi'), W('\u554a','\u554a','a'), '\uff0c', W('\u6211\u5011','\u6211\u4eec','w\u01d2men'), W('\u660e\u5929','\u660e\u5929','m\u00edngti\u0101n'), WD('\u898b\u9762','\u89c1\u9762','ji\u00e0nmi\u00e0n','ji\u00e0nmi\u00e0n'), W('\u7684','\u7684','de'), W('\u6642\u5019','\u65f6\u5019','sh\u00edh\u00f2u'), '\uff0c', W('\u6211','\u6211','w\u01d2'), W('\u62ff','\u62ff','n\u00e1'), W('\u7d66','\u7ed9','g\u011bi'), W('\u4f60','\u4f60','n\u01d0'), '\uff0c', W('\u597d','\u597d','h\u01ceo'), W('\u4e0d','\u4e0d','b\u00f9'), W('\u597d','\u597d','h\u01ceo'), '\uff1f'],\n      en: TR('I do \u2014 when we meet tomorrow, I\\u2019ll bring it for you, OK?', '\u77e5\u3063\u3066\u3044\u307e\u3059\u3088\u3001\u660e\u65e5\u4f1a\u3046\u3068\u304d\u306b\u6301\u3063\u3066\u3044\u304d\u307e\u3059\u306d\u3002', '\uc54c\uc544\uc694, \ub0b4\uc77c \ub9cc\ub0a0 \ub54c \uac00\uc838\ub2e4 \ub4dc\ub9b4\uac8c\uc694, \uad1c\ucc2e\uc73c\uc138\uc694?') },\n    { speakerT: '\u9ad8\u5148\u751f', speakerS: '\u9ad8\u5148\u751f',\n      tokens: [W('\u592a','\u592a','T\u00e0i'), W('\u597d','\u597d','h\u01ceo'), W('\u4e86','\u4e86','le'), '\uff0c', W('\u90a3','\u90a3','n\u00e0'), W('\u5c31','\u5c31','ji\u00f9'), W('\u660e\u5929','\u660e\u5929','m\u00edngti\u0101n'), W('\u898b','\u89c1','ji\u00e0n'), '\uff0c', W('\u8b1d\u8b1d','\u8c22\u8c22','xi\u00e8xie'), W('\u4f60','\u4f60','n\u01d0'), '\u3002'],\n      en: TR('Wonderful, see you tomorrow then \u2014 thank you.', '\u3088\u304b\u3063\u305f\u3067\u3059\u3001\u3067\u306f\u660e\u65e5\u4f1a\u3044\u307e\u3057\u3087\u3046\u3001\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002', '\ub108\ubb34 \uc88b\uc544\uc694, \uadf8\ub7fc \ub0b4\uc77c \ubd2c\uc694, \uac10\uc0ac\ud569\ub2c8\ub2e4.') }\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 trSpans(tr) {\n    return '<span class=\"pl4-tr pl4-tr-en\">' + tr.en + '<\/span>' +\n           '<span class=\"pl4-tr pl4-tr-ja\">' + tr.ja + '<\/span>' +\n           '<span class=\"pl4-tr pl4-tr-ko\">' + tr.ko + '<\/span>';\n  }\n\n  function rubyWord(w) {\n    return '<span class=\"pl4-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=\"pl4-punct\">' + tok + '<\/span>';\n      } else {\n        html += rubyWord(tok);\n      }\n    });\n    return html;\n  }\n\n  function headwordRuby(t, s, pt, ps) {\n    return '<ruby class=\"lang-zh-TW\"><span class=\"rb\">' + t + '<\/span><rt>' + pt + '<\/rt><\/ruby>' +\n           '<ruby class=\"lang-zh-CN\"><span class=\"rb\">' + s + '<\/span><rt>' + ps + '<\/rt><\/ruby>';\n  }\n\n  var counter = 0;\n  Object.keys(GROUPS).forEach(function (containerId) {\n    var container = root.querySelector('#' + containerId);\n    if (!container) return;\n    var html = '';\n    GROUPS[containerId].forEach(function (w) {\n      counter++;\n      var num = (counter < 10 ? '0' : '') + counter;\n      html += '<div class=\"pl4-word-card\">' +\n        '<div class=\"pl4-word-top\">' +\n          '<span class=\"pl4-num\">' + num + '<\/span>' +\n          '<span class=\"pl4-hanzi\">' + headwordRuby(w.t, w.s, w.pt || w.p, w.ps || w.p) + '<\/span>' +\n          '<span class=\"pl4-meaning\">' + trSpans(w.meaning) + '<\/span>' +\n          '<button class=\"pl4-speaker\" data-trad=\"' + w.t + '\" data-simp=\"' + w.s + '\" aria-label=\"Play pronunciation\">' + SPEAKER_SVG + '<\/button>' +\n        '<\/div>' +\n        '<div class=\"pl4-example\">' +\n          renderTokens(w.ex) +\n          '<span class=\"pl4-en\">' + trSpans(w.exEn) + '<\/span>' +\n        '<\/div>' +\n      '<\/div>';\n    });\n    container.innerHTML = html;\n  });\n\n  var dialogueEl = root.querySelector('#pl4-dialogue');\n  if (dialogueEl) {\n    var dHtml = '';\n    DIALOGUE.forEach(function (line) {\n      dHtml += '<div class=\"pl4-line\">' +\n        '<span class=\"pl4-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=\"pl4-line-body\">' +\n          renderTokens(line.tokens) +\n          '<span class=\"pl4-line-en\">' + trSpans(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('#pl4-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('.pl4-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('pl4-py-hidden', isHidden);\n    root.classList.toggle('pl4-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  \/\/ ---- Translation language toggle ----\n  var langBtns = root.querySelectorAll('.pl4-lang-btn');\n  langBtns.forEach(function (btn) {\n    btn.addEventListener('click', function () {\n      var lang = btn.getAttribute('data-lang');\n      root.classList.remove('pl4-lang-en', 'pl4-lang-ja', 'pl4-lang-ko');\n      root.classList.add('pl4-lang-' + lang);\n      langBtns.forEach(function (b) { b.classList.remove('pl4-lang-active'); });\n      btn.classList.add('pl4-lang-active');\n    });\n  });\n  root.classList.add('pl4-lang-en');\n\n  \/\/ ---- Flashcards ----\n  var fcCard = root.querySelector('#pl4-flashcard');\n  var fcFront = root.querySelector('#pl4-fc-front');\n  var fcBack = root.querySelector('#pl4-fc-back');\n  var fcProgress = root.querySelector('#pl4-fc-progress');\n  var fcPrevBtn = root.querySelector('#pl4-fc-prev');\n  var fcNextBtn = root.querySelector('#pl4-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=\"pl4-hanzi\">' + headwordRuby(w.t, w.s, w.pt || w.p, w.ps || w.p) + '<\/span>';\n    fcBack.innerHTML = '<span class=\"pl4-meaning\">' + trSpans(w.meaning) + '<\/span>';\n    if (fcProgress) fcProgress.textContent = (fcIndex + 1) + ' \/ ' + ALL_WORDS.length;\n    if (fcCard) fcCard.classList.remove('pl4-flipped');\n    fcFlipped = false;\n    syncPinyin();\n  }\n\n  if (fcCard) {\n    fcCard.addEventListener('click', function () {\n      fcFlipped = !fcFlipped;\n      fcCard.classList.toggle('pl4-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('#pl4-game-col-zh');\n  var gameColEn = root.querySelector('#pl4-game-col-en');\n  var gameStatus = root.querySelector('#pl4-game-status');\n  var gameWin = root.querySelector('#pl4-game-win');\n  var gameNewBtn = root.querySelector('#pl4-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('pl4-show');\n\n    var zhOrder = shuffle(gameRound);\n    var enOrder = shuffle(gameRound);\n\n    gameColZh.innerHTML = zhOrder.map(function (w) {\n      return '<button class=\"pl4-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=\"pl4-tile-py\">' + (w.pt || w.p) + '<\/span>' +\n      '<\/button>';\n    }).join('');\n\n    gameColEn.innerHTML = enOrder.map(function (w) {\n      return '<button class=\"pl4-tile\" data-id=\"' + w.t + '\" data-side=\"en\">' + trSpans(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('pl4-matched')) return;\n    var side = tile.getAttribute('data-side');\n\n    if (side === 'zh') {\n      if (gameSelectedZh) gameSelectedZh.classList.remove('pl4-selected');\n      gameSelectedZh = tile;\n      tile.classList.add('pl4-selected');\n    } else {\n      if (gameSelectedEn) gameSelectedEn.classList.remove('pl4-selected');\n      gameSelectedEn = tile;\n      tile.classList.add('pl4-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('pl4-selected');\n          gameSelectedEn.classList.remove('pl4-selected');\n          gameSelectedZh.classList.add('pl4-matched');\n          gameSelectedEn.classList.add('pl4-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('pl4-show');\n            }\n          }\n        } else {\n          gameBusy = true;\n          var z = gameSelectedZh, en = gameSelectedEn;\n          z.classList.add('pl4-wrong');\n          en.classList.add('pl4-wrong');\n          setTimeout(function () {\n            z.classList.remove('pl4-selected', 'pl4-wrong');\n            en.classList.remove('pl4-selected', 'pl4-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('.pl4-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 (follows the EN\/JA\/KO translation toggle) ----\n  function QMC(promptTR, optionsTR, answer) { return { type: 'mc', prompt: promptTR, options: optionsTR, answer: answer }; }\n  function QTYPE(promptTR, accept) { return { type: 'type', prompt: promptTR, accept: accept }; }\n\n  var QUIZ_DATA = [\n    QTYPE(TR('Type the pinyin for <span class=\"lang-zh-TW\">\u6253\u96fb\u8a71<\/span><span class=\"lang-zh-CN\">\u6253\u7535\u8bdd<\/span>.', '<span class=\"lang-zh-TW\">\u6253\u96fb\u8a71<\/span><span class=\"lang-zh-CN\">\u6253\u7535\u8bdd<\/span>\u306e\u30d4\u30f3\u30a4\u30f3\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002', '<span class=\"lang-zh-TW\">\u6253\u96fb\u8a71<\/span><span class=\"lang-zh-CN\">\u6253\u7535\u8bdd<\/span>\uc758 \ubcd1\uc74c\uc744 \uc785\ub825\ud558\uc138\uc694.'), ['dadianhua']),\n    QMC(\n      TR('\u5582 means...', '\u5582\u306e\u610f\u5473\u306f?', '\u5582\uc758 \ub73b\uc740?'),\n      [\n        TR('hello (on the phone)', '\u3082\u3057\u3082\u3057', '\uc5ec\ubcf4\uc138\uc694'),\n        TR('goodbye', '\u3055\u3088\u3046\u306a\u3089', '\uc548\ub155\ud788 \uac00\uc138\uc694'),\n        TR('please', '\u3069\u3046\u305e', '\ubd80\ub514'),\n        TR('thank you', '\u3042\u308a\u304c\u3068\u3046', '\uac10\uc0ac\ud569\ub2c8\ub2e4')\n      ], 0),\n    QMC(\n      TR('\u4ee5\u5f8c means...', '\u4ee5\u5f8c\u306e\u610f\u5473\u306f?', '\u4ee5\u5f8c\uc758 \ub73b\uc740?'),\n      [\n        TR('afterwards, after', '\u305d\u306e\u5f8c', '~\ud6c4\uc5d0'),\n        TR('before', '\u4ee5\u524d', '~\uc804\uc5d0'),\n        TR('probably', '\u305f\u3076\u3093', '\uc544\ub9c8'),\n        TR('again', '\u307e\u305f', '\ub610')\n      ], 0),\n    QTYPE(TR('Type the pinyin for \u544a\u8a34.', '\u544a\u8a34\u306e\u30d4\u30f3\u30a4\u30f3\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002', '\u544a\u8a34\uc758 \ubcd1\uc74c\uc744 \uc785\ub825\ud558\uc138\uc694.'), ['gaosu']),\n    QMC(\n      TR('\u501f means...', '\u501f\u306e\u610f\u5473\u306f?', '\u501f\uc758 \ub73b\uc740?'),\n      [\n        TR('to borrow, to lend', '\u501f\u308a\u308b\u3001\u8cb8\u3059', '\ube4c\ub9ac\ub2e4, \ube4c\ub824\uc8fc\ub2e4'),\n        TR('to buy', '\u8cb7\u3046', '\uc0ac\ub2e4'),\n        TR('to sell', '\u58f2\u308b', '\ud314\ub2e4'),\n        TR('to give', '\u3042\u3052\u308b', '\uc8fc\ub2e4')\n      ], 0),\n    QMC(\n      TR('\u904e (as in \u53bb\u904e) means...', '\u904e(\u53bb\u904e\u306a\u3069)\u306e\u610f\u5473\u306f?', '\u904e(\u53bb\u904e \ub4f1)\uc758 \ub73b\uc740?'),\n      [\n        TR('marks a past experience', '\u7d4c\u9a13\u3092\u8868\u3059', '\uacbd\ud5d8\uc744 \ub098\ud0c0\ub0c4'),\n        TR('marks the future', '\u672a\u6765\u3092\u8868\u3059', '\ubbf8\ub798\ub97c \ub098\ud0c0\ub0c4'),\n        TR('marks a negation', '\u5426\u5b9a\u3092\u8868\u3059', '\ubd80\uc815\uc744 \ub098\ud0c0\ub0c4'),\n        TR('marks a question', '\u7591\u554f\u3092\u8868\u3059', '\uc758\ubb38\uc744 \ub098\ud0c0\ub0c4')\n      ], 0),\n    QTYPE(TR('Type the pinyin for \u8a8d\u8b58.', '\u8a8d\u8b58\u306e\u30d4\u30f3\u30a4\u30f3\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002', '\u8a8d\u8b58\uc758 \ubcd1\uc74c\uc744 \uc785\ub825\ud558\uc138\uc694.'), ['renshi']),\n    QMC(\n      TR('\u6c7a\u5b9a means...', '\u6c7a\u5b9a\u306e\u610f\u5473\u306f?', '\u6c7a\u5b9a\uc758 \ub73b\uc740?'),\n      [\n        TR('to decide', '\u6c7a\u3081\u308b', '\uacb0\uc815\ud558\ub2e4'),\n        TR('to remember', '\u899a\u3048\u3066\u3044\u308b', '\uae30\uc5b5\ud558\ub2e4'),\n        TR('to forget', '\u5fd8\u308c\u308b', '\uc78a\ub2e4'),\n        TR('to worry', '\u5fc3\u914d\u3059\u308b', '\uac71\uc815\ud558\ub2e4')\n      ], 0),\n    QMC(\n      TR('\u5927\u6982 means...', '\u5927\u6982\u306e\u610f\u5473\u306f?', '\u5927\u6982\uc758 \ub73b\uc740?'),\n      [\n        TR('probably', '\u305f\u3076\u3093', '\uc544\ub9c8'),\n        TR('definitely', '\u5fc5\u305a', '\ubc18\ub4dc\uc2dc'),\n        TR('never', '\u6c7a\u3057\u3066\u301c\u306a\u3044', '\uc804\ud600 ~\uc54a\ub2e4'),\n        TR('rarely', '\u3081\u3063\u305f\u306b\u301c\u306a\u3044', '\uc880\ucc98\ub7fc ~\uc54a\ub2e4')\n      ], 0),\n    QTYPE(TR('Type the pinyin for \u6050\u6015.', '\u6050\u6015\u306e\u30d4\u30f3\u30a4\u30f3\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002', '\u6050\u6015\uc758 \ubcd1\uc74c\uc744 \uc785\ub825\ud558\uc138\uc694.'), ['kongpa']),\n    QMC(\n      TR('\u9ebb\u7169 means...', '\u9ebb\u7169\u306e\u610f\u5473\u306f?', '\u9ebb\u7169\uc758 \ub73b\uc740?'),\n      [\n        TR('troublesome; to bother', '\u9762\u5012\u3060\u3001\u8ff7\u60d1\u3092\u304b\u3051\u308b', '\ubc88\uac70\ub86d\ub2e4, \ud3d0\ub97c \ub07c\uce58\ub2e4'),\n        TR('happy', '\u5b09\u3057\u3044', '\uae30\uc058\ub2e4'),\n        TR('afraid', '\u6016\u3044', '\ubb34\uc12d\ub2e4'),\n        TR('to leave (something)', '\u6b8b\u3059', '\ub0a8\uae30\ub2e4')\n      ], 0),\n    QMC(\n      TR('\u9ad8\u8208 means...', '\u9ad8\u8208\u306e\u610f\u5473\u306f?', '\u9ad8\u8208\uc758 \ub73b\uc740?'),\n      [\n        TR('happy', '\u5b09\u3057\u3044', '\uae30\uc058\ub2e4'),\n        TR('annoyed', '\u3046\u3093\u3056\u308a\u3059\u308b', '\uc9dc\uc99d\ub098\ub2e4'),\n        TR('afraid', '\u6016\u3044', '\ubb34\uc12d\ub2e4'),\n        TR('surprised', '\u9a5a\u3044\u305f', '\ub180\ub77c\ub2e4')\n      ], 0),\n    QTYPE(TR('Type the pinyin for \u865f\u78bc.', '\u865f\u78bc\u306e\u30d4\u30f3\u30a4\u30f3\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002', '\u865f\u78bc\uc758 \ubcd1\uc74c\uc744 \uc785\ub825\ud558\uc138\uc694.'), ['haoma']),\n    QMC(\n      TR('\u4e2d\u5b78 means...', '\u4e2d\u5b78\u306e\u610f\u5473\u306f?', '\u4e2d\u5b78\uc758 \ub73b\uc740?'),\n      [\n        TR('middle school', '\u4e2d\u5b66\u6821', '\uc911\ud559\uad50'),\n        TR('university', '\u5927\u5b66', '\ub300\ud559\uad50'),\n        TR('elementary school', '\u5c0f\u5b66\u6821', '\ucd08\ub4f1\ud559\uad50'),\n        TR('library', '\u56f3\u66f8\u9928', '\ub3c4\uc11c\uad00')\n      ], 0),\n    QMC(\n      TR('\u90f5\u5dee means...', '\u90f5\u5dee\u306e\u610f\u5473\u306f?', '\u90f5\u5dee\uc758 \ub73b\uc740?'),\n      [\n        TR('mail carrier', '\u90f5\u4fbf\u914d\u9054\u54e1', '\uc6b0\uccb4\ubd80'),\n        TR('teacher', '\u5148\u751f', '\uc120\uc0dd\ub2d8'),\n        TR('doctor', '\u533b\u8005', '\uc758\uc0ac'),\n        TR('waiter', '\u5e97\u54e1', '\uc885\uc5c5\uc6d0')\n      ], 0)\n  ];\n\n  var UI_STRINGS = {\n    en: { submit: 'Submit', next: 'Next', placeholder: 'Type your answer', correct: 'Correct!', incorrectPrefix: 'Not quite \u2014 the answer is \"', incorrectSuffix: '\".', incorrectGeneric: 'Not quite \u2014 check the highlighted answer above.', scoreLine: 'Nice work! Want to try again?', retake: 'Retake Quiz', questionLabel: 'Question' },\n    ja: { submit: '\u9001\u4fe1', next: '\u6b21\u3078', placeholder: '\u7b54\u3048\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044', correct: '\u6b63\u89e3!', incorrectPrefix: '\u6b8b\u5ff5\u3001\u6b63\u89e3\u306f\u300c', incorrectSuffix: '\u300d\u3067\u3059\u3002', incorrectGeneric: '\u6b8b\u5ff5\u3001\u4e0a\u306e\u30cf\u30a4\u30e9\u30a4\u30c8\u3055\u308c\u305f\u7b54\u3048\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002', scoreLine: '\u3088\u304f\u3067\u304d\u307e\u3057\u305f!\u3082\u3046\u4e00\u5ea6\u6311\u6226\u3057\u307e\u3059\u304b?', retake: '\u30af\u30a4\u30ba\u3092\u3084\u308a\u76f4\u3059', questionLabel: '\u8cea\u554f' },\n    ko: { submit: '\uc81c\ucd9c', next: '\ub2e4\uc74c', placeholder: '\ub2f5\uc744 \uc785\ub825\ud558\uc138\uc694', correct: '\uc815\ub2f5\uc785\ub2c8\ub2e4!', incorrectPrefix: '\uc544\uc27d\ub124\uc694 \u2014 \uc815\ub2f5\uc740 \"', incorrectSuffix: '\"\uc785\ub2c8\ub2e4.', incorrectGeneric: '\uc544\uc27d\ub124\uc694 \u2014 \uc704\uc5d0 \ud45c\uc2dc\ub41c \uc815\ub2f5\uc744 \ud655\uc778\ud558\uc138\uc694.', scoreLine: '\uc798\ud558\uc168\uc5b4\uc694! \ub2e4\uc2dc \ub3c4\uc804\ud574\ubcf4\uc2dc\uaca0\uc5b4\uc694?', retake: '\ud034\uc988 \ub2e4\uc2dc \ud480\uae30', questionLabel: '\ubb38\uc81c' }\n  };\n\n  function getLang() {\n    if (root.classList.contains('pl4-lang-ja')) return 'ja';\n    if (root.classList.contains('pl4-lang-ko')) return 'ko';\n    return 'en';\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('#pl4-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 lang = getLang();\n      var ui = UI_STRINGS[lang];\n      var q = QUIZ_DATA[current];\n      answered = false;\n      var html = '<p class=\"pl4-quiz-progress\">' + ui.questionLabel + ' ' + (current + 1) + ' \/ ' + QUIZ_DATA.length + '<\/p>';\n      html += '<p class=\"pl4-quiz-prompt\">' + q.prompt[lang] + '<\/p>';\n      if (q.type === 'mc') {\n        html += '<div class=\"pl4-quiz-options\">';\n        for (var i = 0; i < q.options.length; i++) {\n          html += '<button type=\"button\" class=\"pl4-quiz-opt\" data-i=\"' + i + '\">' + q.options[i][lang] + '<\/button>';\n        }\n        html += '<\/div>';\n      } else {\n        html += '<div class=\"pl4-quiz-input-row\">';\n        html += '<input type=\"text\" class=\"pl4-quiz-input\" placeholder=\"' + ui.placeholder + '\">';\n        html += '<button type=\"button\" class=\"pl4-quiz-submit\">' + ui.submit + '<\/button>';\n        html += '<\/div>';\n      }\n      html += '<p class=\"pl4-quiz-feedback\"><\/p>';\n      html += '<button type=\"button\" class=\"pl4-quiz-next\" style=\"display:none;\">' + ui.next + '<\/button>';\n      qRoot.innerHTML = html;\n\n      if (q.type === 'mc') {\n        var opts = qRoot.querySelectorAll('.pl4-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, bi) {\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('.pl4-quiz-input');\n        var submitBtn = qRoot.querySelector('.pl4-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('.pl4-quiz-feedback');\n        if (correct) {\n          fb.textContent = ui.correct;\n        } else if (correctAnswer) {\n          fb.textContent = ui.incorrectPrefix + correctAnswer + ui.incorrectSuffix;\n        } else {\n          fb.textContent = ui.incorrectGeneric;\n        }\n        fb.className = 'pl4-quiz-feedback ' + (correct ? 'correct' : 'incorrect');\n        var nextBtn = qRoot.querySelector('.pl4-quiz-next');\n        nextBtn.style.display = 'inline-block';\n        nextBtn.addEventListener('click', function () { current++; render(); });\n      }\n    }\n\n    function renderScore() {\n      var ui = UI_STRINGS[getLang()];\n      qRoot.innerHTML =\n        '<div class=\"pl4-quiz-score\">' +\n        '<span class=\"pl4-quiz-score-num\">' + score + ' \/ ' + QUIZ_DATA.length + '<\/span>' +\n        '<p>' + ui.scoreLine + '<\/p>' +\n        '<button type=\"button\" class=\"pl4-quiz-retake\">' + ui.retake + '<\/button>' +\n        '<\/div>';\n      qRoot.querySelector('.pl4-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) \u2014 headword cards only\n  root.addEventListener('click', function (e) {\n    var btn = e.target.closest('.pl4-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})();\n<\/script>\n<\/div>\n\n\n\n<div style=\"height:57px\" 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\/audio-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=\"object-fit:cover;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>","protected":false},"excerpt":{"rendered":"","protected":false},"author":2,"featured_media":16392,"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":true,"_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":[1357],"tags":[],"class_list":["post-16877","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-1357"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4 - OneDotDot Chinese<\/title>\n<meta name=\"description\" content=\"This is just for my students. \u8996\u807d\u83ef\u8a9e Book 2 Lesson 4\" \/>\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\/09\/12\/book-2-l4\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4 - OneDotDot Chinese\" \/>\n<meta property=\"og:description\" content=\"This is just for my students. \u8996\u807d\u83ef\u8a9e Book 2 Lesson 4\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/\" \/>\n<meta property=\"og:site_name\" content=\"OneDotDot Chinese\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-12T05:40:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-09T12:04:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2026\/09\/20190211100150_pic-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1755\" \/>\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\\\/09\\\/12\\\/book-2-l4\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/\"},\"author\":{\"name\":\"tiffany\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"headline\":\"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4\",\"datePublished\":\"2026-09-12T05:40:57+00:00\",\"dateModified\":\"2026-10-09T12:04:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/\"},\"wordCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#\\\/schema\\\/person\\\/3556e1160fac98b190d03b8aa8604d99\"},\"image\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/20190211100150_pic-scaled.jpg\",\"articleSection\":[\"\u8996\u807d\u83ef\u8a9e\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/\",\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/\",\"name\":\"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4 - OneDotDot Chinese\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/20190211100150_pic-scaled.jpg\",\"datePublished\":\"2026-09-12T05:40:57+00:00\",\"dateModified\":\"2026-10-09T12:04:02+00:00\",\"description\":\"This is just for my students. \u8996\u807d\u83ef\u8a9e Book 2 Lesson 4\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/#primaryimage\",\"url\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/20190211100150_pic-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/tiffanysmandarin.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/20190211100150_pic-scaled.jpg\",\"width\":2560,\"height\":1755},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tiffanysmandarin.com\\\/index.php\\\/2026\\\/09\\\/12\\\/book-2-l4\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9801\",\"item\":\"https:\\\/\\\/tiffanysmandarin.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4\"}]},{\"@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":"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4 - OneDotDot Chinese","description":"This is just for my students. \u8996\u807d\u83ef\u8a9e Book 2 Lesson 4","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\/09\/12\/book-2-l4\/","og_locale":"en_US","og_type":"article","og_title":"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4 - OneDotDot Chinese","og_description":"This is just for my students. \u8996\u807d\u83ef\u8a9e Book 2 Lesson 4","og_url":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/","og_site_name":"OneDotDot Chinese","article_published_time":"2026-09-12T05:40:57+00:00","article_modified_time":"2026-10-09T12:04:02+00:00","og_image":[{"width":2560,"height":1755,"url":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2026\/09\/20190211100150_pic-scaled.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\/09\/12\/book-2-l4\/#article","isPartOf":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/"},"author":{"name":"tiffany","@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"headline":"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4","datePublished":"2026-09-12T05:40:57+00:00","dateModified":"2026-10-09T12:04:02+00:00","mainEntityOfPage":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/"},"wordCount":2,"publisher":{"@id":"https:\/\/tiffanysmandarin.com\/#\/schema\/person\/3556e1160fac98b190d03b8aa8604d99"},"image":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/#primaryimage"},"thumbnailUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2026\/09\/20190211100150_pic-scaled.jpg","articleSection":["\u8996\u807d\u83ef\u8a9e"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/","url":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/","name":"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4 - OneDotDot Chinese","isPartOf":{"@id":"https:\/\/tiffanysmandarin.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/#primaryimage"},"image":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/#primaryimage"},"thumbnailUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2026\/09\/20190211100150_pic-scaled.jpg","datePublished":"2026-09-12T05:40:57+00:00","dateModified":"2026-10-09T12:04:02+00:00","description":"This is just for my students. \u8996\u807d\u83ef\u8a9e Book 2 Lesson 4","breadcrumb":{"@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/#primaryimage","url":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2026\/09\/20190211100150_pic-scaled.jpg","contentUrl":"https:\/\/tiffanysmandarin.com\/wp-content\/uploads\/2026\/09\/20190211100150_pic-scaled.jpg","width":2560,"height":1755},{"@type":"BreadcrumbList","@id":"https:\/\/tiffanysmandarin.com\/index.php\/2026\/09\/12\/book-2-l4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9801","item":"https:\/\/tiffanysmandarin.com\/"},{"@type":"ListItem","position":2,"name":"\u8996\u807d\u83ef\u8a9e Book 2 Lesson 4"}]},{"@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\/2026\/09\/20190211100150_pic-scaled.jpg","_links":{"self":[{"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/16877","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=16877"}],"version-history":[{"count":3,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/16877\/revisions"}],"predecessor-version":[{"id":18077,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/posts\/16877\/revisions\/18077"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/media\/16392"}],"wp:attachment":[{"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/media?parent=16877"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/categories?post=16877"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tiffanysmandarin.com\/index.php\/wp-json\/wp\/v2\/tags?post=16877"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}