{"id":3081,"date":"2026-06-13T19:32:46","date_gmt":"2026-06-13T19:32:46","guid":{"rendered":"https:\/\/allenglish4u.com\/cambridge-movers-9-test-3-rw\/"},"modified":"2026-06-13T19:32:46","modified_gmt":"2026-06-13T19:32:46","slug":"cambridge-movers-9-test-3-rw","status":"publish","type":"page","link":"https:\/\/allenglish4u.com\/vi\/cambridge-movers-9-test-3-rw\/","title":{"rendered":"Cambridge Movers 9 Test 3 Reading &#038; Writing"},"content":{"rendered":"\n<!--\n================================================================\nAE4U \u00b7 YLE MOVERS READING & WRITING \u2014 Test 1 (Movers 9)\n6 parts \u00b7 40 questions \u00b7 auto-graded\nP1 copy-word \u00b7 P2 yes\/no \u00b7 P3 dialogue MCQ \u00b7 P4 story cloze+title \u00b7 P5 open cloze \u00b7 P6 grammar MCQ\n================================================================\n-->\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Fraunces:opsz,wght@9..144,700&display=swap');\n.entry-content,.wp-block-post-content,.is-layout-constrained{max-width:none !important;width:auto !important;margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important;}\n.wp-block-post-title{display:none !important;}\n:root{\n  --accent-1:#8B5CF6; --accent-2:#EC4899; --gold:#FBBF24; --green:#10B981; --red:#EF4444;\n  --light-1:#F5F3FF; --light-2:#FAF5FF; --white:#FFFFFF;\n  --text:#0F172A; --muted:#475569; --subtle:#64748B; --border:#E2E8F0;\n  --r-10:10px; --r-16:16px;\n  --sh-card:0 2px 8px rgba(0,0,0,.06);\n}\n*{margin:0;padding:0;box-sizing:border-box}\nhtml{scroll-behavior:smooth}\nbody{font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--text);background:var(--light-2);-webkit-font-smoothing:antialiased;overflow-x:hidden}\n.serif{font-family:'Fraunces',Georgia,serif;font-weight:700;letter-spacing:-.01em}\n.wrap{max-width:980px;margin:0 auto;padding:0 24px}\na{color:inherit;text-decoration:none}\nbutton{font-family:inherit;cursor:pointer;border:none;background:none}\n.hero{position:relative;min-height:240px;padding:64px 0 36px;background:linear-gradient(135deg,#8B5CF6 0%,#EC4899 60%,#7C2D12 100%);color:#fff;overflow:hidden}\n.hero::before{content:\"\";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.15) 0,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.10) 0,transparent 50%);pointer-events:none}\n.hero .wrap{position:relative;z-index:1}\n.kicker{display:inline-block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;opacity:.92;margin-bottom:12px}\n.hero h1{font-size:clamp(28px,5vw,44px);line-height:1.05;margin-bottom:12px}\n.hero h1 span{font-style:italic;color:var(--gold)}\n.hero p.sub{font-size:15.5px;line-height:1.6;max-width:680px;opacity:.95;margin-bottom:16px}\n.hero-meta{display:flex;flex-wrap:wrap;gap:10px}\n.meta-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.24);font-size:13px;font-weight:600}\n.meta-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--gold)}\n.mini-prog{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);padding:10px 0}\n.mini-prog-inner{display:flex;align-items:center;gap:14px}\n.mini-prog-bar{flex:1;height:6px;background:var(--light-1);border-radius:999px;overflow:hidden}\n.mini-prog-fill{height:100%;background:linear-gradient(90deg,var(--accent-1),var(--accent-2));border-radius:999px;transition:width .3s ease;width:0}\n.mini-prog-label{font-size:12px;color:var(--muted);font-weight:700;min-width:120px}\n.mini-prog-score{font-weight:800;color:var(--accent-1);font-size:14px;min-width:84px}\n.part-section{padding:44px 0;border-bottom:1px solid var(--border)}\n.part-section:nth-of-type(even){background:#fff}\n.part-head{display:flex;align-items:flex-start;gap:18px;margin-bottom:20px}\n.part-num{flex-shrink:0;width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff;display:grid;place-items:center;font-family:'Fraunces',serif;font-weight:700;font-size:24px;box-shadow:0 8px 22px rgba(139,92,246,.3)}\n.part-head-text h2{font-size:24px;line-height:1.15;margin-bottom:6px}\n.part-head-text .qrange{display:inline-block;font-size:12.5px;font-weight:700;color:var(--accent-1);background:var(--light-1);padding:4px 10px;border-radius:999px;margin-bottom:8px}\n.part-head-text p{color:var(--muted);font-size:14.5px;line-height:1.55;max-width:740px}\n.card{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:20px;margin-top:14px}\n.show-ans-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:999px;background:#FEF3C7;color:#7B5B00;font-weight:700;font-size:12px;border:1px solid #E8D88E;cursor:pointer}\n.show-ans-btn:hover{background:#FDE68A}\n.input-blank{display:inline-block;min-width:150px;border:none;border-bottom:2px dashed var(--accent-1);background:transparent;font-family:inherit;font-size:15.5px;color:var(--text);font-weight:600;padding:2px 8px;text-align:center;outline:none}\n.input-blank:focus{border-bottom-style:solid;background:var(--light-1)}\n.input-blank.correct{border-bottom-color:var(--green);color:#065F46;background:rgba(16,185,129,.10)}\n.input-blank.wrong{border-bottom-color:var(--red);color:#991B1B;background:rgba(239,68,68,.08)}\n.input-blank.revealed{border-bottom-color:var(--gold);background:#FEF3C7;color:#7B5B00}\n\/* P1\/P4 word bank *\/\n.wbank{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}\n.wbank.b9{grid-template-columns:repeat(3,1fr)}\n.wchip{border:1.5px solid var(--border);border-radius:12px;padding:8px;text-align:center;background:#FAFBFC}\n.wchip img{width:100%;aspect-ratio:1\/1;object-fit:contain;border-radius:8px;background:#fff;display:block}\n.wchip .wlabel{margin-top:6px;font-weight:700;font-size:13.5px;color:var(--text)}\n.wchip.used{opacity:.4}\n.defrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 0;border-top:1px dashed var(--border)}\n.defrow:first-child{border-top:none}\n.defrow .qn{font-weight:800;color:var(--accent-1);min-width:26px}\n.defrow .dtext{flex:1;min-width:220px;font-size:15px}\n.defrow.example{opacity:.7}\n.defrow .ex-tag{background:var(--gold);color:#fff;padding:2px 8px;border-radius:6px;font-size:11px;margin-left:6px}\n\/* yes\/no + MCQ *\/\n.yn-row,.mcq-row{padding:14px 0;border-top:1px dashed var(--border)}\n.yn-row:first-child,.mcq-row:first-child{border-top:none}\n.yn-q,.mcq-q{font-size:15px;font-weight:600;margin-bottom:8px;display:flex;gap:10px}\n.yn-q .qn,.mcq-q .qn{color:var(--accent-1);font-weight:800;min-width:26px}\n.yn-opts{display:flex;gap:10px}\n.yn-btn{padding:8px 22px;border-radius:999px;border:2px solid var(--border);font-weight:700;font-size:14px;background:#fff;cursor:pointer;min-height:40px}\n.yn-btn.sel{border-color:var(--accent-1);background:linear-gradient(100deg,rgba(139,92,246,.12),rgba(236,72,153,.12))}\n.yn-btn.correct{border-color:var(--green);background:rgba(16,185,129,.12);color:#065F46}\n.yn-btn.wrong{border-color:var(--red);background:rgba(239,68,68,.10);color:#991B1B}\n.mcq-opts{display:flex;flex-direction:column;gap:8px;margin-left:36px}\n.mcq-opt{display:flex;align-items:center;gap:10px;padding:9px 13px;border-radius:10px;border:1.5px solid var(--border);background:#fff;cursor:pointer;font-size:14.5px;min-height:42px}\n.mcq-opt .ml{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--light-1);color:var(--accent-1);font-weight:800;font-size:13px;flex-shrink:0}\n.mcq-opt.sel{border-color:var(--accent-1);background:var(--light-1)}\n.mcq-opt.correct{border-color:var(--green);background:rgba(16,185,129,.08)}\n.mcq-opt.wrong{border-color:var(--red);background:rgba(239,68,68,.08)}\n.story{font-size:15.5px;line-height:2.0;color:var(--text);background:#FAFBFC;border:1px solid var(--border);border-radius:12px;padding:16px 18px;margin:12px 0}\n.story img{max-width:420px;width:100%;height:auto;border-radius:10px;display:block;margin:0 auto 14px}\n.gap-select{font-family:inherit;font-size:14.5px;font-weight:700;color:var(--accent-1);border:1.5px solid var(--accent-1);border-radius:8px;padding:3px 6px;background:#fff;cursor:pointer}\n.gap-select.correct{border-color:var(--green);color:#065F46;background:rgba(16,185,129,.10)}\n.gap-select.wrong{border-color:var(--red);color:#991B1B;background:rgba(239,68,68,.08)}\n.tickbox{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;margin-top:8px;cursor:pointer;font-weight:600;font-size:14.5px}\n.tickbox .tb{width:22px;height:22px;border-radius:6px;border:2px solid var(--border);display:grid;place-items:center;color:transparent}\n.tickbox.sel{border-color:var(--accent-1);background:var(--light-1)}\n.tickbox.sel .tb{background:var(--accent-1);color:#fff;border-color:transparent}\n.tickbox.correct{border-color:var(--green);background:rgba(16,185,129,.08)}\n.tickbox.wrong{border-color:var(--red);background:rgba(239,68,68,.08)}\n.hint{font-size:12.5px;color:var(--muted);text-align:center;margin-top:10px;background:var(--light-1);border:1px solid var(--border);border-radius:8px;padding:8px 12px}\n.submit-panel{background:linear-gradient(135deg,#fff,var(--light-1));border:1.5px solid var(--border);border-radius:20px;padding:28px;text-align:center;margin:36px 0}\n.submit-panel h3{font-family:'Fraunces',serif;font-size:22px;margin-bottom:6px}\n.submit-panel .intro{color:var(--muted);font-size:14px;margin-bottom:16px}\n.sp-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}\n.btn-submit-big{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:999px;background:linear-gradient(100deg,var(--accent-1),var(--accent-2));color:#fff;font-weight:800;font-size:16px;box-shadow:0 10px 26px rgba(139,92,246,.35)}\n.btn-reset-big{padding:14px 24px;border-radius:999px;background:#fff;border:1.5px solid var(--border);font-weight:700;font-size:15px;color:var(--text)}\n.results-banner{display:none;background:linear-gradient(135deg,#8B5CF6,#EC4899);color:#fff;border-radius:20px;padding:30px;text-align:center;margin:24px 0}\n.results-banner.show{display:block}\n.results-banner h3{font-family:'Fraunces',serif;font-size:22px;margin-bottom:8px}\n.score-big{font-family:'Fraunces',serif;font-size:56px;line-height:1;margin:8px 0}\n.score-parts{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}\n.sp-item{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.26);border-radius:12px;padding:8px 14px;font-size:13px;font-weight:700}\n.sp-item b{display:block;font-size:18px;font-family:'Fraunces',serif}\n.footer{background:#0C1322;color:rgba(255,255,255,.7);padding:28px 0;text-align:center;font-size:13.5px}\n.footer a{color:var(--gold)}\n@media(max-width:720px){.wbank{grid-template-columns:repeat(2,1fr)}.wbank.b9{grid-template-columns:repeat(3,1fr)}}\n<\/style>\n\n<section class=\"hero\">\n  <div class=\"wrap\">\n    <span class=\"kicker\">Cambridge YLE &middot; Movers<\/span>\n    <h1 class=\"serif\">Movers 9 &mdash; Test 1 <span>Reading &amp; Writing<\/span><\/h1>\n    <p class=\"sub\">6 parts with 40 questions. Read carefully, choose or write your answers, then submit to grade. Each part has a <b>Show Answers<\/b> button to study.<\/p>\n    <div class=\"hero-meta\">\n      <span class=\"meta-pill\"><span class=\"dot\"><\/span>~30 minutes<\/span>\n      <span class=\"meta-pill\"><span class=\"dot\"><\/span>6 Parts &middot; 40 Questions<\/span>\n      <span class=\"meta-pill\"><span class=\"dot\"><\/span>Auto-grade + Show Answers<\/span>\n    <\/div>\n  <\/div>\n<\/section>\n\n<div class=\"mini-prog\">\n  <div class=\"wrap mini-prog-inner\">\n    <div class=\"mini-prog-score\">Score <span id=\"scoreNow\">0<\/span>\/40<\/div>\n    <div class=\"mini-prog-bar\"><div class=\"mini-prog-fill\" id=\"progFill\"><\/div><\/div>\n    <div class=\"mini-prog-label\"><span id=\"answeredCount\">0<\/span> of 40 answered<\/div>\n  <\/div>\n<\/div>\n\n<section class=\"part-section\" id=\"part1\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">1<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 1&ndash;6 &middot; Look and write<\/span>\n    <h2 class=\"serif\">Choose the correct words and write them<\/h2>\n    <p>Look at the pictures and read the sentences. Choose the correct word and write it on the line. There is one example.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <div class=\"wbank\" id=\"p1Bank\"><\/div>\n    <div id=\"p1Rows\"><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P1ALL\">&#128065; Show Answers (Part 1)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<section class=\"part-section\" id=\"part2\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">2<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 7&ndash;12 &middot; Yes \/ No<\/span>\n    <h2 class=\"serif\">Look at the picture and read &mdash; yes or no?<\/h2>\n    <p>Look at the picture. Read the sentences. Are they right? Write <b>yes<\/b>. Are they wrong? Write <b>no<\/b>. There are two examples.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <img decoding=\"async\" src=\"https:\/\/allenglish4u.com\/wp-content\/uploads\/2026\/06\/m9t3rw_p2_scene.jpg\" alt=\"Part 2 scene: a bathroom\" style=\"max-width:640px;width:100%;border-radius:12px;display:block;margin:0 auto 16px\">\n    <div id=\"p2Rows\"><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P2ALL\">&#128065; Show Answers (Part 2)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<section class=\"part-section\" id=\"part3\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">3<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 13&ndash;18 &middot; Choose the answer<\/span>\n    <h2 class=\"serif\">Read the conversation. Choose the best answer<\/h2>\n    <p>Mary and Paul are talking about their teachers and about school. Choose the best answer (A, B or C). There is one example.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <div id=\"p3Rows\"><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P3ALL\">&#128065; Show Answers (Part 3)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<section class=\"part-section\" id=\"part4\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">4<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 19&ndash;25 &middot; Story &amp; title<\/span>\n    <h2 class=\"serif\">Read the story. Choose a word for each gap<\/h2>\n    <p>Choose the right word from the pictures for each gap and pick it from the menu. Then choose the best name for the story. There is one example.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <div class=\"wbank b9\" id=\"p4Bank\"><\/div>\n    <div class=\"story\" id=\"p4Story\"><\/div>\n    <div style=\"margin-top:14px\"><b>(25) Now choose the best name for the story:<\/b><div id=\"p4Title\"><\/div><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P4ALL\">&#128065; Show Answers (Part 4)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<section class=\"part-section\" id=\"part5\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">5<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 26&ndash;35 &middot; Complete the sentences<\/span>\n    <h2 class=\"serif\">Read the story. Write words to complete the sentences<\/h2>\n    <p>Look at the pictures and read the story <b>&ldquo;Jane, Fred and the film star&rdquo;<\/b> Write words to complete the sentences. You can use 1, 2 or 3 words. There are two examples.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <div class=\"story\" id=\"p5Story\"><\/div>\n    <div id=\"p5Rows\"><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P5ALL\">&#128065; Show Answers (Part 5)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<section class=\"part-section\" id=\"part6\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">6<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 36&ndash;40 &middot; Choose the right word<\/span>\n    <h2 class=\"serif\">Read the text. Choose the right words<\/h2>\n    <p>Read about <b>Kangaroos<\/b>. Choose the right word (A, B or C) for each gap. There is one example.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <img decoding=\"async\" src=\"https:\/\/allenglish4u.com\/wp-content\/uploads\/2026\/06\/m9t3rw_p6_kangaroos.jpg\" alt=\"Two kangaroos\" style=\"max-width:520px;width:100%;display:block;margin:0 auto 14px\">\n    <div class=\"story\" id=\"p6Story\" style=\"background:#fff;border:none;padding:0\"><\/div>\n    <div id=\"p6Rows\"><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P6ALL\">&#128065; Show Answers (Part 6)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<div class=\"wrap\">\n  <div class=\"submit-panel\">\n    <h3>&#127919; Finished all 40 questions?<\/h3>\n    <p class=\"intro\">Submit to grade your whole test, or use &#128065; Show Answers per part.<\/p>\n    <div class=\"sp-buttons\">\n      <button class=\"btn-submit-big\" id=\"submitBtn\">&#10003; Submit &amp; Grade All<\/button>\n      <button class=\"btn-reset-big\" id=\"resetBtn\">&#128260; Reset Test<\/button>\n    <\/div>\n  <\/div>\n  <div class=\"results-banner\" id=\"resultsBanner\">\n    <h3>&#128218; Your Movers 9 Test 1 Reading &amp; Writing score<\/h3>\n    <div class=\"score-big\"><span id=\"finalScore\">0<\/span>\/40<\/div>\n    <p id=\"resultsMsg\">Great work!<\/p>\n    <div class=\"score-parts\" id=\"scoreParts\"><\/div>\n  <\/div>\n<\/div>\n\n<footer class=\"footer\"><div class=\"wrap\"><p>&copy; 2026 All English 4U &middot; <a href=\"https:\/\/allenglish4u.com\/cambridge\/\">All Cambridge Tests<\/a> &middot; <a href=\"https:\/\/allenglish4u.com\/contact\/\">Contact<\/a><\/p><\/div><\/footer>\n\n<script>\n(function(){\nvar IMG='https:\/\/allenglish4u.com\/wp-content\/uploads\/2026\/06\/';\n\/* ===== DATA ===== *\/\nvar P1_BANK=[\n  {w:'a puppy',img:'m9t3rw_p1_puppy.jpg'},{w:'a coat',img:'m9t3rw_p1_coat.jpg'},\n  {w:'a scarf',img:'m9t3rw_p1_scarf.jpg'},{w:'a lion',img:'m9t3rw_p1_lion.jpg'},\n  {w:'a bear',img:'m9t3rw_p1_bear.jpg'},{w:'a doctor',img:'m9t3rw_p1_doctor.jpg'},\n  {w:'a clown',img:'m9t3rw_p1_clown.jpg'},{w:'a sweater',img:'m9t3rw_p1_sweater.jpg'}\n];\nvar P1_EX={d:'This animal lives in hot countries. It has a long tail and big teeth.',a:'a lion'};\nvar P1=[\n  {n:1,d:\"This is like a jacket but longer and you wear it when it's cold.\",a:'a coat',acc:['a coat','coat']},\n  {n:2,d:'People laugh at this person with a red mouth and white face.',a:'a clown',acc:['a clown','clown']},\n  {n:3,d:'This strong animal is black, brown or white and can stand on two legs.',a:'a bear',acc:['a bear','bear']},\n  {n:4,d:'You can wear this round your neck.',a:'a scarf',acc:['a scarf','scarf']},\n  {n:5,d:'This person helps people who have to be in hospital.',a:'a doctor',acc:['a doctor','doctor']},\n  {n:6,d:'This is a young animal which is sometimes a pet.',a:'a puppy',acc:['a puppy','puppy']}\n];\nvar P2_EX=[{d:'The boy is looking at his face in the mirror.',a:'yes'},{d:\"He's having a wash in the shower.\",a:'no'}];\nvar P2=[\n  {n:7,d:'You can see that part of the floor is wet.',a:'yes'},\n  {n:8,d:'One of the towels has a rainbow on it.',a:'yes'},\n  {n:9,d:'The boy is holding a toothbrush which is blue.',a:'no'},\n  {n:10,d:'The mat with the two stars on it is round.',a:'no'},\n  {n:11,d:'You can see a shell between two socks.',a:'yes'},\n  {n:12,d:'The toy duck is the smallest toy in the bathroom.',a:'no'}\n];\nvar P3_EX={sp:'Mary',q:\"I love Miss Cup's music lessons at school most.\",ans:'A',opts:[{l:'A',t:'Do you?'},{l:'B',t:'Have you?'},{l:'C',t:'Are you?'}]};\nvar P3=[\n  {n:13,sp:'Paul',q:'Why do you like her?',ans:'B',opts:[{l:'A',t:\"Because they're new.\"},{l:'B',t:\"She's very funny.\"},{l:'C',t:\"That's her friend.\"}]},\n  {n:14,sp:'Mary',q:\"Who's your favourite teacher, Paul?\",ans:'B',opts:[{l:'A',t:\"It's in class 4B.\"},{l:'B',t:\"His name's Mr Moon.\"},{l:'C',t:\"He's got three.\"}]},\n  {n:15,sp:'Mary',q:'Is he the one with short curly hair?',ans:'A',opts:[{l:'A',t:\"Yes, that's him.\"},{l:'B',t:\"No, he doesn't.\"},{l:'C',t:\"It's all right.\"}]},\n  {n:16,sp:'Mary',q:'I like teachers who smile a lot.',ans:'A',opts:[{l:'A',t:'So do I.'},{l:'B',t:'Here you are.'},{l:'C',t:'Yes, we can.'}]},\n  {n:17,sp:'Mary',q:'Miss Cup never gets angry.',ans:'B',opts:[{l:'A',t:\"It's nice.\"},{l:'B',t:\"That's good!\"},{l:'C',t:'These are great!'}]},\n  {n:18,sp:'Mary',q:'I want to be a music teacher like her one day. Are you good at singing, Paul?',ans:'C',opts:[{l:'A',t:\"I'm fine, thanks.\"},{l:'B',t:'I think those are better.'},{l:'C',t:\"I'm the best in my class.\"}]}\n];\nvar P4_BANK=['cold','work','home','shoulders','glasses','milk','jumped','comic','bought'];\nvar P4_PARTS=[\n  {t:'Sally had a bad '},\n  {ex:'cold'},\n  {t:'. She sat on the sofa with a blanket round her '},\n  {g:19,a:'shoulders'},\n  {t:'. &lsquo;I know I&rsquo;m not well, but it&rsquo;s sports day at school today!&rsquo; she said to her father. &lsquo;I&rsquo;m sorry, Sally,&rsquo; he answered. &lsquo;You can&rsquo;t go to school today.&rsquo; Sally was not happy. She picked up a '},\n  {g:20,a:'comic'},\n  {t:' and dropped it again. She didn&rsquo;t want to read it. Her father brought her some hot '},\n  {g:21,a:'milk'},\n  {t:', but she didn&rsquo;t want to drink it. &lsquo;I&rsquo;ve got an idea,&rsquo; said her father. &lsquo;Here you are! I '},\n  {g:22,a:'bought'},\n  {t:' this computer game for your birthday, but you can have it now.&rsquo; Sally opened the game and looked at the pictures. She laughed. &lsquo;It&rsquo;s about playing different sports!&rsquo; &lsquo;And I can play it with you. I don&rsquo;t have to '},\n  {g:23,a:'work'},\n  {t:' today. We can have a sports day here at '},\n  {g:24,a:'home'},\n  {t:'!&rsquo; he said. &lsquo;Thanks!&rsquo; Sally said. &lsquo;You&rsquo;re the nicest dad in the world!&rsquo;'}\n];\nvar P4_TITLE={n:25,a:\"Sally's present\",opts:[\"Sally's present\",\"Sally's naughty new game\",\"Sally's great day at school\"]};\nvar P5_STORY=\"Jane&rsquo;s friend is called Fred. Jane and Fred live in the flats opposite the cinema in Fish Market Square. Jane lives on the fifth floor and Fred&rsquo;s family live on the ninth floor. Jane and Fred always go to the cinema on Saturday afternoon. Last Saturday, Jane jumped in the lift and ran to Fred&rsquo;s flat. &lsquo;How exciting!&rsquo; she said to Fred. &lsquo;Vicky Fan&rsquo;s new film is at the cinema this afternoon! And this evening, we can go and see her outside the cinema!&rsquo; Vicky Fan was very famous. She was their favourite film star. That afternoon many people from the town stood and waited outside the cinema to see Vicky and to take photos of her. Jane and Fred tried to get in front of all the people but it was too difficult. &lsquo;Quick!&rsquo; Jane said. &lsquo;I&rsquo;ve got an idea!&rsquo; They crossed the street and ran up to the fifth floor. They couldn&rsquo;t see Vicky from Jane&rsquo;s bedroom window, but when they ran up to Fred&rsquo;s living room, they could! &lsquo;There she is!&rsquo; said Jane. &lsquo;Vicky! Vicky!&rsquo; they called. Vicky looked up and waved at the two friends. &lsquo;Wow!&rsquo; said Fred. &lsquo;Wow!&rsquo; laughed Jane. &lsquo;She&rsquo;s beautiful!&rsquo;\";\nvar P5_EX=[{d:'Fred is',a:\"Jane's friend\"},{d:'The friends live',a:'opposite a cinema'}];\nvar P5=[\n  {n:26,d:'The cinema and Jane and Fred&rsquo;s flats are in ___.',acc:['fish market square','the fish market square'],disp:'Fish Market Square'},\n  {n:27,d:'Jane&rsquo;s flat is on the ___ floor.',acc:['fifth','5th','fifth floor'],disp:'fifth (5th)'},\n  {n:28,d:'Every ___, the two friends go to the cinema.',acc:['saturday','saturday afternoon','saturday afternoons','on saturday'],disp:'Saturday (afternoon)'},\n  {n:29,d:'Jane took the ___ to go up to talk to Fred last Saturday.',acc:['lift','elevator','the lift'],disp:'lift'},\n  {n:30,d:'Jane told Fred about Vicky Fan&rsquo;s ___ at the cinema in the afternoon.',acc:['film','new film','movie','new movie'],disp:'(new) film'},\n  {n:31,d:'People who waited to see Vicky Fan wanted to ___ of her.',acc:['take photos','take photographs','take pictures','get photos','take a photo','take a picture','take photos','photograph'],disp:'take photos'},\n  {n:32,d:'It was ___ for Jane and Fred to get in front of all the people.',acc:['too difficult','difficult','hard','too hard'],disp:'(too) difficult'},\n  {n:33,d:'Jane and Fred tried to see Vicky from the ___ in Jane&rsquo;s flat first.',acc:['bedroom window','window','bedroom','the bedroom window','her bedroom window'],disp:'bedroom window'},\n  {n:34,d:'They could see Vicky when they were in the ___ in Fred&rsquo;s flat.',acc:['living room','livingroom',\"fred's living room\"],disp:'living room'},\n  {n:35,d:'When Jane and Fred called her name, Vicky looked up, and then she ___ at them.',acc:['waved','waved up','waved at them'],disp:'waved'}\n];\nvar P6_PARTS=[\n  {t:'There are 63 different kinds of kangaroo '},{ex:'but'},\n  {t:' the Red Kangaroo is the biggest. It is taller '},{g:36,a:'than'},\n  {t:' a man! You can&rsquo;t often see kangaroos in the day. They like to hide from the sun and they come out '},{g:37,a:'at'},\n  {t:' the end of the afternoon and in the evenings to look for '},{g:38,a:'their'},\n  {t:' food. Most kangaroos eat grass and, like many animals that live in hot countries, they don&rsquo;t need to '},{g:39,a:'drink'},\n  {t:' lots of water. Kangaroos can&rsquo;t walk or run because they have very long feet. They are the only big animals in the world '},{g:40,a:'that'},\n  {t:' hop!'}\n];\nvar P6_OPTS={36:['about','than','with'],37:['at','in','on'],38:['its','their','his'],39:['drinks','drink','drinking'],40:['where','that','what']};\nvar TOTAL=40;\n\n\/* ===== helpers ===== *\/\nfunction esc(s){return String(s).replace(\/[&<>\"]\/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;'}[c]})}\nfunction $(s,c){return (c||document).querySelector(s)}\nfunction $$(s,c){return [].slice.call((c||document).querySelectorAll(s))}\nfunction norm(v){return v.trim().toLowerCase().replace(\/[.,!?]$\/,'').replace(\/\\s+\/g,' ')}\n\n\/* ===== state ===== *\/\nvar P2sel={},P3sel={},P4gap={},P4title=null,P6gap={};\n\n\/* ===== PART 1 ===== *\/\n(function(){\n  var bank=$('#p1Bank');\n  P1_BANK.forEach(function(b){bank.insertAdjacentHTML('beforeend','<div class=\"wchip\"><img decoding=\"async\" src=\"'+IMG+b.img+'\" alt=\"'+esc(b.w)+'\"><div class=\"wlabel\">'+esc(b.w)+'<\/div><\/div>');});\n  var rows=$('#p1Rows');\n  rows.insertAdjacentHTML('beforeend','<div class=\"defrow example\"><span class=\"qn\">Ex<\/span><span class=\"dtext\">'+esc(P1_EX.d)+'<\/span><span style=\"font-weight:700;color:#7B5B00\">'+esc(P1_EX.a)+'<\/span><span class=\"ex-tag\">Ex<\/span><\/div>');\n  P1.forEach(function(q){\n    rows.insertAdjacentHTML('beforeend','<div class=\"defrow\"><span class=\"qn\">'+q.n+'<\/span><span class=\"dtext\">'+esc(q.d)+'<\/span><input class=\"input-blank\" data-q=\"'+q.n+'\" type=\"text\" placeholder=\"...\"><button class=\"show-ans-btn\" data-show=\"'+q.n+'\">&#128065;<\/button><\/div>');\n  });\n})();\n\/* ===== PART 2 ===== *\/\n(function(){\n  var r=$('#p2Rows');\n  P2_EX.forEach(function(e){r.insertAdjacentHTML('beforeend','<div class=\"yn-row\" style=\"opacity:.7\"><div class=\"yn-q\"><span class=\"qn\">Ex<\/span><span>'+esc(e.d)+'<\/span><\/div><div class=\"yn-opts\"><span class=\"yn-btn '+(e.a==='yes'?'correct':'')+'\">yes<\/span><span class=\"yn-btn '+(e.a==='no'?'correct':'')+'\">no<\/span><\/div><\/div>');});\n  P2.forEach(function(q){\n    r.insertAdjacentHTML('beforeend','<div class=\"yn-row\" data-q=\"'+q.n+'\"><div class=\"yn-q\"><span class=\"qn\">'+q.n+'<\/span><span>'+esc(q.d)+'<\/span><\/div><div class=\"yn-opts\"><button class=\"yn-btn\" data-yn=\"yes\">yes<\/button><button class=\"yn-btn\" data-yn=\"no\">no<\/button><button class=\"show-ans-btn\" data-show=\"'+q.n+'\" style=\"margin-left:auto\">&#128065;<\/button><\/div><\/div>');\n  });\n  $$('#p2Rows .yn-btn[data-yn]').forEach(function(b){b.addEventListener('click',function(){\n    var row=b.closest('.yn-row'),n=row.dataset.q;\n    $$('.yn-btn[data-yn]',row).forEach(function(x){x.classList.remove('sel')});\n    b.classList.add('sel');P2sel[n]=b.dataset.yn;updateProgress();\n  });});\n})();\n\/* ===== PART 3 ===== *\/\n(function(){\n  var r=$('#p3Rows');\n  r.insertAdjacentHTML('beforeend','<div class=\"mcq-row\" style=\"opacity:.7\"><div class=\"mcq-q\"><span class=\"qn\">Ex<\/span><span><b>'+P3_EX.sp+':<\/b> '+esc(P3_EX.q)+'<\/span><\/div><div class=\"mcq-opts\">'+P3_EX.opts.map(function(o){return '<div class=\"mcq-opt '+(o.l===P3_EX.ans?'correct':'')+'\"><span class=\"ml\">'+o.l+'<\/span><span>'+o.t+'<\/span><\/div>';}).join('')+'<\/div><\/div>');\n  P3.forEach(function(q){\n    r.insertAdjacentHTML('beforeend','<div class=\"mcq-row\" data-q=\"'+q.n+'\"><div class=\"mcq-q\"><span class=\"qn\">'+q.n+'<\/span><span><b>'+q.sp+':<\/b> '+esc(q.q)+'<\/span><\/div><div class=\"mcq-opts\">'+q.opts.map(function(o){return '<div class=\"mcq-opt\" data-l=\"'+o.l+'\"><span class=\"ml\">'+o.l+'<\/span><span>'+o.t+'<\/span><\/div>';}).join('')+'<\/div><div style=\"text-align:right\"><button class=\"show-ans-btn\" data-show=\"'+q.n+'\">&#128065;<\/button><\/div><\/div>');\n  });\n  $$('#p3Rows .mcq-opt[data-l]').forEach(function(o){o.addEventListener('click',function(){\n    var row=o.closest('.mcq-row'),n=row.dataset.q;\n    $$('.mcq-opt[data-l]',row).forEach(function(x){x.classList.remove('sel')});\n    o.classList.add('sel');P3sel[n]=o.dataset.l;updateProgress();\n  });});\n})();\n\/* ===== PART 4 ===== *\/\n(function(){\n  var bank=$('#p4Bank');\n  P4_BANK.forEach(function(w,i){bank.insertAdjacentHTML('beforeend','<div class=\"wchip\"><img decoding=\"async\" src=\"'+IMG+'m9t3rw_p4_'+w+'.jpg\" alt=\"'+w+'\"><div class=\"wlabel\">'+w+'<\/div><\/div>');});\n  var story=$('#p4Story'),html='';\n  P4_PARTS.forEach(function(p){\n    if(p.t)html+=esc(p.t).replace('&amp;lsquo;','&lsquo;').replace('&amp;rsquo;','&rsquo;');\n    else if(p.ex)html+='<u style=\"color:var(--accent-1);font-weight:700\">'+p.ex+'<\/u>';\n    else if(p.g){\n      html+='<select class=\"gap-select\" data-q=\"'+p.g+'\"><option value=\"\">('+p.g+') choose<\/option>'+P4_BANK.map(function(w){return '<option value=\"'+w+'\">'+w+'<\/option>';}).join('')+'<\/select>';\n    }\n  });\n  story.innerHTML=html.replace(\/&amp;(lsquo|rsquo|ldquo|rdquo);\/g,'&$1;');\n  $$('#p4Story .gap-select').forEach(function(s){s.addEventListener('change',function(){P4gap[s.dataset.q]=s.value;updateProgress();});});\n  var tt=$('#p4Title');\n  P4_TITLE.opts.forEach(function(o,i){tt.insertAdjacentHTML('beforeend','<div class=\"tickbox\" data-title=\"'+o+'\"><span class=\"tb\">&#10003;<\/span><span>'+esc(o)+'<\/span><\/div>');});\n  $$('#p4Title .tickbox').forEach(function(b){b.addEventListener('click',function(){\n    $$('#p4Title .tickbox').forEach(function(x){x.classList.remove('sel')});\n    b.classList.add('sel');P4title=b.dataset.title;updateProgress();\n  });});\n})();\n\/* ===== PART 5 ===== *\/\n(function(){\n  $('#p5Story').innerHTML='<div style=\"display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:12px\">'+['m9t3rw_p5_flats.jpg','m9t3rw_p5_sofa.jpg','m9t3rw_p5_night.jpg'].map(function(f){return '<img decoding=\"async\" src=\"'+IMG+f+'\" alt=\"Jane, Fred and the film star\" style=\"max-width:230px;width:100%;border-radius:10px;margin:0\">';}).join('')+'<\/div>'+P5_STORY;\n  var r=$('#p5Rows');\n  P5_EX.forEach(function(e){r.insertAdjacentHTML('beforeend','<div class=\"defrow example\"><span class=\"qn\">Ex<\/span><span class=\"dtext\">'+e.d+'<\/span><span style=\"font-weight:700;color:#7B5B00\">'+e.a+'<\/span><span class=\"ex-tag\">Ex<\/span><\/div>');});\n  P5.forEach(function(q){\n    r.insertAdjacentHTML('beforeend','<div class=\"defrow\"><span class=\"qn\">'+q.n+'<\/span><span class=\"dtext\">'+q.d+'<\/span><input class=\"input-blank\" data-q=\"'+q.n+'\" type=\"text\" placeholder=\"1-3 words\"><button class=\"show-ans-btn\" data-show=\"'+q.n+'\">&#128065;<\/button><\/div>');\n  });\n})();\n\/* ===== PART 6 ===== *\/\n(function(){\n  var story=$('#p6Story'),html='';\n  P6_PARTS.forEach(function(p){\n    if(p.t)html+=esc(p.t).replace(\/&amp;(lsquo|rsquo);\/g,'&$1;');\n    else if(p.ex)html+='<u style=\"color:var(--accent-1);font-weight:700\">'+p.ex+'<\/u>';\n    else if(p.g){\n      var L=['A','B','C'];\n      html+='<select class=\"gap-select\" data-q=\"'+p.g+'\"><option value=\"\">('+p.g+')<\/option>'+P6_OPTS[p.g].map(function(w,i){return '<option value=\"'+L[i]+'\">'+w+'<\/option>';}).join('')+'<\/select>';\n    }\n  });\n  story.innerHTML=html;\n  $$('#p6Story .gap-select').forEach(function(s){s.addEventListener('change',function(){P6gap[s.dataset.q]=s.value;updateProgress();});});\n})();\n\n\/* ===== progress ===== *\/\nfunction answered(){\n  var n=0;\n  P1.forEach(function(q){var el=$('.input-blank[data-q=\"'+q.n+'\"]');if(el&&el.value.trim())n++;});\n  P2.forEach(function(q){if(P2sel[q.n])n++;});\n  P3.forEach(function(q){if(P3sel[q.n])n++;});\n  [19,20,21,22,23,24].forEach(function(g){if(P4gap[g])n++;});\n  if(P4title)n++;\n  P5.forEach(function(q){var el=$('.input-blank[data-q=\"'+q.n+'\"]');if(el&&el.value.trim())n++;});\n  [36,37,38,39,40].forEach(function(g){if(P6gap[g])n++;});\n  return n;\n}\nfunction updateProgress(){var a=answered();$('#answeredCount').textContent=a;$('#progFill').style.width=(a\/TOTAL*100)+'%';}\ndocument.body.addEventListener('input',function(e){if(e.target.classList&&e.target.classList.contains('input-blank'))updateProgress();});\n\n\/* ===== show answers ===== *\/\ndocument.body.addEventListener('click',function(e){\n  var b=e.target.closest('.show-ans-btn');if(!b)return;\n  var k=b.dataset.show;\n  if(k==='P1ALL'){P1.forEach(function(q){revealInput(q.n,q.a);});return;}\n  if(k==='P2ALL'){P2.forEach(function(q){revealYN(q.n,q.a);});return;}\n  if(k==='P3ALL'){P3.forEach(function(q){revealMCQ(q.n,q.ans);});return;}\n  if(k==='P4ALL'){[19,20,21,22,23,24].forEach(function(g){var a=p4ans(g);var s=$('.gap-select[data-q=\"'+g+'\"]');if(s){s.value=a;P4gap[g]=a;}});revealTitle();updateProgress();return;}\n  if(k==='P5ALL'){P5.forEach(function(q){revealInput(q.n,q.disp);});return;}\n  if(k==='P6ALL'){P6_PARTS.forEach(function(p){if(p.g){var L=['A','B','C'];var idx=P6_OPTS[p.g].indexOf(p.a);var s=$('.gap-select[data-q=\"'+p.g+'\"]');if(s){s.value=L[idx];P6gap[p.g]=L[idx];}}});updateProgress();return;}\n  var qid=parseInt(k);\n  if(qid>=1&&qid<=6){var q=P1.find(function(x){return x.n===qid});revealInput(qid,q.a);}\n  else if(qid>=7&&qid<=12){var q=P2.find(function(x){return x.n===qid});revealYN(qid,q.a);}\n  else if(qid>=13&&qid<=18){var q=P3.find(function(x){return x.n===qid});revealMCQ(qid,q.ans);}\n  else if(qid>=26&&qid<=35){var q=P5.find(function(x){return x.n===qid});revealInput(qid,q.disp);}\n});\nfunction revealInput(n,val){var el=$('.input-blank[data-q=\"'+n+'\"]');if(el){el.value=val;el.classList.add('revealed');updateProgress();}}\nfunction revealYN(n,a){var row=$('.yn-row[data-q=\"'+n+'\"]');if(!row)return;$$('.yn-btn[data-yn]',row).forEach(function(x){x.classList.remove('sel');if(x.dataset.yn===a)x.classList.add('correct');});P2sel[n]=a;updateProgress();}\nfunction revealMCQ(n,a){var row=$('.mcq-row[data-q=\"'+n+'\"]');if(!row)return;$$('.mcq-opt[data-l]',row).forEach(function(x){x.classList.remove('sel');if(x.dataset.l===a)x.classList.add('correct');});P3sel[n]=a;updateProgress();}\nfunction p4ans(g){var f=P4_PARTS.find(function(p){return p.g===g});return f?f.a:'';}\nfunction revealTitle(){$$('#p4Title .tickbox').forEach(function(x){x.classList.remove('sel');if(x.dataset.title===P4_TITLE.a){x.classList.add('sel');}});P4title=P4_TITLE.a;}\n\n\/* ===== submit ===== *\/\n$('#submitBtn').addEventListener('click',function(){\n  var score=0,parts={1:0,2:0,3:0,4:0,5:0,6:0};\n  P1.forEach(function(q){var el=$('.input-blank[data-q=\"'+q.n+'\"]');if(!el)return;if(el.classList.contains('revealed'))return;var v=norm(el.value).replace(\/^(a|an|the)\\s+\/,'');var ok=q.acc.indexOf(norm(el.value))>=0||q.acc.indexOf(v)>=0;if(ok){score++;parts[1]++;el.classList.add('correct');}else{el.classList.add('wrong');el.title='Correct: '+q.a;}});\n  P2.forEach(function(q){var row=$('.yn-row[data-q=\"'+q.n+'\"]');if(!row)return;$$('.yn-btn[data-yn]',row).forEach(function(x){var yn=x.dataset.yn;x.classList.remove('sel');if(yn===q.a)x.classList.add('correct');else if(P2sel[q.n]===yn)x.classList.add('wrong');});if(P2sel[q.n]===q.a){score++;parts[2]++;}});\n  P3.forEach(function(q){var row=$('.mcq-row[data-q=\"'+q.n+'\"]');if(!row)return;$$('.mcq-opt[data-l]',row).forEach(function(x){var l=x.dataset.l;x.classList.remove('sel');if(l===q.ans)x.classList.add('correct');else if(P3sel[q.n]===l)x.classList.add('wrong');});if(P3sel[q.n]===q.ans){score++;parts[3]++;}});\n  [19,20,21,22,23,24].forEach(function(g){var s=$('.gap-select[data-q=\"'+g+'\"]');if(!s)return;var a=p4ans(g);s.classList.remove('correct','wrong');if(P4gap[g]===a){score++;parts[4]++;s.classList.add('correct');}else if(P4gap[g])s.classList.add('wrong');});\n  $$('#p4Title .tickbox').forEach(function(x){x.classList.remove('correct','wrong');if(x.dataset.title===P4_TITLE.a)x.classList.add('correct');else if(P4title===x.dataset.title)x.classList.add('wrong');});\n  if(P4title===P4_TITLE.a){score++;parts[4]++;}\n  P5.forEach(function(q){var el=$('.input-blank[data-q=\"'+q.n+'\"]');if(!el)return;if(el.classList.contains('revealed'))return;var v=norm(el.value);var ok=q.acc.indexOf(v)>=0||q.acc.indexOf(v.replace(\/^(a|an|the)\\s+\/,''))>=0;if(ok){score++;parts[5]++;el.classList.add('correct');}else{el.classList.add('wrong');el.title='Correct: '+q.disp;}});\n  P6_PARTS.forEach(function(p){if(!p.g)return;var s=$('.gap-select[data-q=\"'+p.g+'\"]');if(!s)return;var L=['A','B','C'];var correctL=L[P6_OPTS[p.g].indexOf(p.a)];s.classList.remove('correct','wrong');if(P6gap[p.g]===correctL){score++;parts[6]++;s.classList.add('correct');}else if(P6gap[p.g])s.classList.add('wrong');});\n  $('#scoreNow').textContent=score;$('#finalScore').textContent=score;\n  var pct=Math.round(score\/TOTAL*100);\n  var msg=pct>=85?'Excellent! Your reading and writing is strong.':pct>=70?'Good job! Keep practising.':pct>=50?'Nice try &mdash; review the parts you missed.':'Keep going &mdash; read the stories again and use Show Answers.';\n  $('#resultsMsg').innerHTML=msg;\n  var sp=$('#scoreParts');sp.innerHTML='';\n  ['Words','Yes\/No','Dialogue','Story','Complete','Grammar'].forEach(function(lab,i){sp.innerHTML+='<div class=\"sp-item\"><b>'+parts[i+1]+'<\/b>P'+(i+1)+' '+lab+'<\/div>';});\n  $('#resultsBanner').classList.add('show');\n  setTimeout(function(){$('#resultsBanner').scrollIntoView({behavior:'smooth',block:'center'});},120);\n});\n$('#resetBtn').addEventListener('click',function(){if(!confirm('Reset all answers?'))return;location.reload();});\nupdateProgress();\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Cambridge YLE &middot; Movers Movers 9 &mdash; Test 1 Reading &amp; Writing 6 parts with 40 questions. Read carefully, choose or write your answers, then submit to grade. Each part has a Show Answers button to study. ~30 minutes 6 Parts &middot; 40 Questions Auto-grade + Show Answers Score 0\/40 0 of 40 answered 1 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-with-title","meta":{"footnotes":""},"class_list":["post-3081","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/pages\/3081","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/comments?post=3081"}],"version-history":[{"count":0,"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/pages\/3081\/revisions"}],"wp:attachment":[{"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/media?parent=3081"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}