{"id":5395,"date":"2026-06-29T05:40:20","date_gmt":"2026-06-29T05:40:20","guid":{"rendered":"https:\/\/allenglish4u.com\/cambridge-flyers-6-test-1-rw\/"},"modified":"2026-06-29T05:40:20","modified_gmt":"2026-06-29T05:40:20","slug":"cambridge-flyers-6-test-1-rw","status":"publish","type":"page","link":"https:\/\/allenglish4u.com\/vi\/cambridge-flyers-6-test-1-rw\/","title":{"rendered":"Cambridge Flyers 6 Test 1 \u2014 Reading &#038; Writing"},"content":{"rendered":"<!--\n================================================================\nAE4U &#183; YLE FLYERS READING & WRITING &#8212; Test 1 (Flyers 6)\n7 parts &#183; 50 questions &#183; auto-graded\nP1 copy-word(text bank) &#183; P2 yes\/no &#183; P3 dialogue match A-H &#183; P4 story cloze+title\nP5 open cloze(story) &#183; P6 word-choice MCQ &#183; P7 open cloze(1 word)\n================================================================\n-->\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Plus+Jakarta+Sans:wght@400%3B500%3B600%3B700%3B800&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:#10B981; --accent-2:#0EA5E9; --gold:#FBBF24; --green:#10B981; --red:#EF4444;\n  --light-1:#ECFDF5; --light-2:#F0FDFA; --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 !important;color:var(--text);background:var(--light-2);-webkit-font-smoothing:antialiased;overflow-x:hidden}\n.serif{font-family:'Fraunces',Georgia,serif !important;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 !important;cursor:pointer;border:none;background:none}\n.hero{position:relative;min-height:240px;padding:64px 0 36px;background:linear-gradient(135deg,#10B981 0%,#0EA5E9 55%,#1E3A8A 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 !important;font-weight:700;font-size:24px;box-shadow:0 8px 22px rgba(14,165,233,.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:120px;border:none;border-bottom:2px dashed var(--accent-1);background:transparent;font-family:inherit !important;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.input-mini{min-width:70px}\n\/* word bank (text only) *\/\n.wbank{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}\n.wbank.b10{grid-template-columns:repeat(5,1fr)}\n.wchip{border:1.5px solid var(--border);border-radius:12px;padding:8px;text-align:center;background:#FAFBFC}\n.wchip.wtext{display:flex;align-items:center;justify-content:center;min-height:46px;font-weight:700;font-size:13.5px;color:var(--text)}\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:.75}\n.defrow .ex-tag{background:var(--gold);color:#fff;padding:2px 8px;border-radius:6px;font-size:11px;margin-left:6px}\n\/* yes\/no *\/\n.yn-row{padding:14px 0;border-top:1px dashed var(--border)}\n.yn-row:first-child{border-top:none}\n.yn-q{font-size:15px;font-weight:600;margin-bottom:8px;display:flex;gap:10px}\n.yn-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(16,185,129,.12),rgba(14,165,233,.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\/* Part 3 matching *\/\n.optbox{border:1.5px solid var(--border);border-radius:12px;background:#FAFBFC;padding:14px 16px;margin-bottom:16px}\n.optbox .oi{display:flex;gap:10px;padding:6px 0;font-size:14.5px;line-height:1.4}\n.optbox .ol{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.optbox .oi.ex{opacity:.6}\n.dlg-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 0;border-top:1px dashed var(--border)}\n.dlg-row:first-child{border-top:none}\n.dlg-row.example{opacity:.75}\n.dlg-row .qn{font-weight:800;color:var(--accent-1);min-width:26px}\n.dlg-q{flex:1;min-width:240px;font-size:15px}\n.match-select{font-family:inherit !important;font-size:15px;font-weight:800;color:var(--accent-1);border:1.5px solid var(--accent-1);border-radius:8px;padding:5px 8px;background:#fff;cursor:pointer}\n.match-select.correct{border-color:var(--green);color:#065F46;background:rgba(16,185,129,.10)}\n.match-select.wrong{border-color:var(--red);color:#991B1B;background:rgba(239,68,68,.08)}\n\/* story + selects *\/\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,.scene{max-width:560px;width:100%;height:auto;border-radius:10px;display:block;margin:0 auto 14px}\n.gap-select{font-family:inherit !important;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.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 !important;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(14,165,233,.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,#10B981,#0EA5E9);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 !important;font-size:22px;margin-bottom:8px}\n.score-big{font-family:'Fraunces',serif !important;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,.wbank.b10{grid-template-columns:repeat(3,1fr)}}\n<\/style>\n\n<section class=\"hero\">\n  <div class=\"wrap\">\n    <span class=\"kicker\">Cambridge YLE &middot; Flyers<\/span>\n    <h1 class=\"serif\">Flyers 6 &mdash; Test 1 <span>Reading &amp; Writing<\/span><\/h1>\n    <p class=\"sub\">7 parts with 50 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>~40 minutes<\/span>\n      <span class=\"meta-pill\"><span class=\"dot\"><\/span>7 Parts &middot; 50 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>\/50<\/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 50 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;10 &middot; Look and write<\/span>\n    <h2 class=\"serif\">Choose the correct words and write them<\/h2>\n    <p>Look at the words in the box. 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 11&ndash;17 &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\" class=\"scene\" src=\"https:\/\/allenglish4u.com\/wp-content\/uploads\/2026\/06\/f6t1rw_p2.jpg\" alt=\"Part 2 scene: children playing volleyball in a park\">\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 18&ndash;22 &middot; Choose the answer<\/span>\n    <h2 class=\"serif\">Read the conversation. Choose the best answer<\/h2>\n    <p>Betty is talking to her friend Helen about camping. What does Helen say to Betty? Choose the best answer and write a letter (A&ndash;H) for each one. There is one example.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <div class=\"optbox\" id=\"p3Opts\"><\/div>\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 23&ndash;28 &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 box 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    <img decoding=\"async\" class=\"scene\" style=\"max-width:420px\" src=\"https:\/\/allenglish4u.com\/wp-content\/uploads\/2026\/06\/f6t1rw_p4.jpg\" alt=\"A river with cows on a farm\">\n    <div class=\"wbank b10\" id=\"p4Bank\"><\/div>\n    <div class=\"story\" id=\"p4Story\"><\/div>\n    <div style=\"margin-top:14px\"><b>(28) 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 29&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 picture and read the story <b>&ldquo;Robert, Harry and the clever dog!&rdquo;<\/b> Write some words to complete the sentences. You can use 1, 2, 3 or 4 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;45 &middot; Choose the right word<\/span>\n    <h2 class=\"serif\">Read the text. Choose the right words<\/h2>\n    <p>Read about <b>Jill at the circus<\/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\" class=\"scene\" style=\"max-width:320px\" src=\"https:\/\/allenglish4u.com\/wp-content\/uploads\/2026\/06\/f6t1rw_p6.jpg\" alt=\"A portrait of the artist Claude Monet\">\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<section class=\"part-section\" id=\"part7\"><div class=\"wrap\">\n  <div class=\"part-head\"><div class=\"part-num\">7<\/div><div class=\"part-head-text\">\n    <span class=\"qrange\">Questions 46&ndash;50 &middot; Write one word<\/span>\n    <h2 class=\"serif\">Read the story. Write the missing words<\/h2>\n    <p>Read the story about <b>Jim the photographer<\/b>. Write one word for each gap. There is one example.<\/p>\n  <\/div><\/div>\n  <div class=\"card\">\n    <div class=\"story\" id=\"p7Story\"><\/div>\n    <div style=\"text-align:right;margin-top:12px\"><button class=\"show-ans-btn\" data-show=\"P7ALL\">&#128065; Show Answers (Part 7)<\/button><\/div>\n  <\/div>\n<\/div><\/section>\n\n<div class=\"wrap\">\n  <div class=\"submit-panel\">\n    <h3>&#127919; Finished all 50 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 Flyers 6 Test 1 Reading &amp; Writing score<\/h3>\n    <div class=\"score-big\"><span id=\"finalScore\">0<\/span>\/50<\/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\/vi\/cambridge\/\">All Cambridge Tests<\/a> &middot; <a href=\"https:\/\/allenglish4u.com\/vi\/contact\/\">Li\u00ean h\u1ec7<\/a><\/p><\/div><\/footer>\n\n<script>eval(atob('CihmdW5jdGlvbigpewovKiA9PT09PSBEQVRBIFx1MjAxNCBGbHllcnMgNiBUZXN0IDEgKHZlcmlmaWVkIGhpLXJlcyBrZXkpID09PT09ICovCnZhciBQMV9CQU5LPVsiYSBwbGF0ZSIsICJhIHRvcmNoIiwgInNwb29ucyIsICJhY3RvcnMiLCAic3BhY2UiLCAia2V5cyIsICJrbml2ZXMiLCAidGhlIHN1biIsICJtb25leSIsICJtZWFscyIsICJhIG1lY2hhbmljIiwgInRoZSBtb29uIiwgInRlbGVwaG9uZXMiLCAiam91cm5hbGlzdHMiLCAicGxhbmV0cyJdOwp2YXIgUDFfRVg9eyJkIjogIldlIGhhdmUgc3R1ZGllZCB0aGlzIGZvciBtYW55LCBtYW55IHllYXJzLiBJdCBpcyBmdWxsIG9mIHN0YXJzLiIsICJhIjogInNwYWNlIn07CnZhciBQMT1beyJuIjogMSwgImQiOiAiUGVvcGxlIG5lZWQgdG8gdXNlIHRoZXNlIHRvIG9wZW4gYWxsIGtpbmRzIG9mIGRvb3JzLiBUaGV5IGFyZSBzbWFsbCBhbmQgbWFkZSBvZiBtZXRhbC4iLCAiYSI6ICJrZXlzIiwgImFjYyI6IFsia2V5cyJdfSwgeyJuIjogMiwgImQiOiAiWW91IGNhbiBzZWUgdGhpcyBpZiBpdCBpcyBkYXJrIG91dHNpZGUgYW5kIHVzdWFsbHkgbG9va3Mgd2hpdGUuIiwgImEiOiAidGhlIG1vb24iLCAiYWNjIjogWyJ0aGUgbW9vbiIsICJtb29uIl19LCB7Im4iOiAzLCAiZCI6ICJUaGVzZSBwZW9wbGUgd29yayBmb3IgbmV3c3BhcGVycyBvciBtYWdhemluZXMuIFRoZXkgaGF2ZSB0byB0YWxrIHRvIGltcG9ydGFudCBwZW9wbGUgYW5kIHdyaXRlIGFib3V0IHRoZSBuZXdzLiIsICJhIjogImpvdXJuYWxpc3RzIiwgImFjYyI6IFsiam91cm5hbGlzdHMiXX0sIHsibiI6IDQsICJkIjogIklmIHlvdSBuZWVkIHRvIHB1dCBidXR0ZXIgb24gYnJlYWQgb3IgY3V0IHNvbWV0aGluZyBsaWtlIG1lYXQsIHlvdSBjYW4gdXNlIHRoZXNlLiIsICJhIjogImtuaXZlcyIsICJhY2MiOiBbImtuaXZlcyJdfSwgeyJuIjogNSwgImQiOiAiSWYgeW91IGhhdmUgdG8gZ28gb3V0c2lkZSBhdCBuaWdodCwgdGFrZSB0aGlzIHdpdGggeW91IHRvIGhlbHAgeW91IHNlZS4gSXQgaXMgYSBraW5kIG9mIHNtYWxsIGxpZ2h0LiIsICJhIjogImEgdG9yY2giLCAiYWNjIjogWyJhIHRvcmNoIiwgInRvcmNoIl19LCB7Im4iOiA2LCAiZCI6ICJNYW55IHBlb3BsZSBjYXJyeSBvbmUgb2YgdGhlc2UsIGJ1dCB5b3UgY2FuIGFsc28gZmluZCB0aGVtIGluIGhvbWVzIGFuZCBvZmZpY2VzLiBZb3UgY2FuIHVzZSB0aGVtIHRvIHRhbGsgdG8gcGVvcGxlIHdobyBhcmUgZmFyIGF3YXkuIiwgImEiOiAidGVsZXBob25lcyIsICJhY2MiOiBbInRlbGVwaG9uZXMiXX0sIHsibiI6IDcsICJkIjogIllvdSB1c2UgdGhlc2UgdG8gZWF0IGljZSBjcmVhbSBvciBzb3VwIGZyb20gYSBib3dsLCBvciB0byBwdXQgc29tZSBzdWdhciBpbiBhIGRyaW5rLiIsICJhIjogInNwb29ucyIsICJhY2MiOiBbInNwb29ucyJdfSwgeyJuIjogOCwgImQiOiAiVGhpcyBwZXJzb24gaGVscHMgcGVvcGxlIHdobyBoYXZlIHByb2JsZW1zIHdpdGggdGhlaXIgY2FycyBvciBtb3RvcmJpa2VzLiBIZSBvZnRlbiBnZXRzIHZlcnkgZGlydHkgaW4gaGlzIGpvYi4iLCAiYSI6ICJhIG1lY2hhbmljIiwgImFjYyI6IFsiYSBtZWNoYW5pYyIsICJtZWNoYW5pYyJdfSwgeyJuIjogOSwgImQiOiAiTW9zdCBwZW9wbGUgaGF2ZSB0aHJlZSBvZiB0aGVzZSBhIGRheTogYnJlYWtmYXN0LCBsdW5jaCBhbmQgZGlubmVyLiIsICJhIjogIm1lYWxzIiwgImFjYyI6IFsibWVhbHMiXX0sIHsibiI6IDEwLCAiZCI6ICJZb3UgY2FuIHVzdWFsbHkgc2VlIHRoaXMgaW4gdGhlIHNreSBkdXJpbmcgdGhlIGRheS4gSXQgZ2l2ZXMgdXMgbGlnaHQuIiwgImEiOiAidGhlIHN1biIsICJhY2MiOiBbInRoZSBzdW4iLCAic3VuIl19XTsKdmFyIFAyX0VYPVt7ImQiOiAiVGhlIGJveXMgYXJlIHBsYXlpbmcgdm9sbGV5YmFsbCBpbiB0aGUgcGFyayBhbmQgdGhlIGJhbGwgaXMgaW4gdGhlIGFpci4iLCAiYSI6ICJ5ZXMifSwgeyJkIjogIk1vcmUgdGhhbiBvbmUgb2YgdGhlIGJveXMgaXMgd2VhcmluZyBnbG92ZXMuIiwgImEiOiAibm8ifV07CnZhciBQMj1beyJuIjogMTEsICJkIjogIlRoZXJlIGlzIGEgYm90dGxlIGluIGEgcG9ja2V0IG9mIG9uZSBvZiB0aGUgcnVja3NhY2tzLiIsICJhIjogInllcyJ9LCB7Im4iOiAxMiwgImQiOiAiVGhlIGRvZyBoYXMgYSBwaWVjZSBvZiB3b29kIGluIGl0cyBtb3V0aC4iLCAiYSI6ICJ5ZXMifSwgeyJuIjogMTMsICJkIjogIlRoZSBib3kgd2hvIGhhcyBodXJ0IGhpcyBsZWcgaGFzIGEgbnVtYmVyIG9uIHRoZSBiYWNrIG9mIGhpcyBULXNoaXJ0LiIsICJhIjogInllcyJ9LCB7Im4iOiAxNCwgImQiOiAiU29tZW9uZSBoYXMgbGVmdCBhIGJlbHQgb24gdGhlIHN3aW5nIHdoaWNoIGlzIG5lYXIgdGhlIGJveXMuIiwgImEiOiAibm8ifSwgeyJuIjogMTUsICJkIjogIlR3byBvZiB0aGUgcGVvcGxlIGluIHRoZSBwaWN0dXJlIGFyZSBqdXN0IHdhdGNoaW5nIHRoZSBnYW1lLiIsICJhIjogInllcyJ9LCB7Im4iOiAxNiwgImQiOiAiVGhlcmUgaXMgYSBsb3Qgb2YgdHJhZmZpYyBvbiB0aGUgcm9hZCBvdXRzaWRlIHRoZSBwYXJrLiIsICJhIjogIm5vIn0sIHsibiI6IDE3LCAiZCI6ICJBbGwgdGhyZWUgYm95cyBhcmUgd2VhcmluZyB0aGUgc2FtZSBraW5kIG9mIGhhdCwgYnV0IGVhY2ggaGF0IGlzIGEgZGlmZmVyZW50IGNvbG91ci4iLCAiYSI6ICJ5ZXMifV07CnZhciBQM19PUFRTPVt7ImwiOiAiQSIsICJ0IjogIk5vdGhpbmcuIFdlJnJzcXVvO3ZlIGdvdCBldmVyeXRoaW5nLiJ9LCB7ImwiOiAiQiIsICJ0IjogIkl0IGlzLCBpc24mcnNxdW87dCBpdCEiLCAiZXgiOiB0cnVlfSwgeyJsIjogIkMiLCAidCI6ICJJJnJzcXVvO20gc3VycHJpc2VkIHRvbyEifSwgeyJsIjogIkQiLCAidCI6ICJUaGlzIGlzIHRoZSBmaXJzdCB0aW1lLiJ9LCB7ImwiOiAiRSIsICJ0IjogIkJ5ZSEgU2VlIHlvdSBsYXRlci4ifSwgeyJsIjogIkYiLCAidCI6ICJZZXMsIEkgZGlkLiBIZXJlIGl0IGlzLiJ9LCB7ImwiOiAiRyIsICJ0IjogIlllcywgd2UgYXJlLiBXZSZyc3F1bzt2ZSBnb3QgbG90cyBvZiBmb29kISJ9LCB7ImwiOiAiSCIsICJ0IjogIkdyZWF0LiBJdCB3aWxsIGJlIGNvbGQgbGF0ZXIuIn1dOwp2YXIgUDNfRVg9eyJxIjogIllvdXIgdGVudCBsb29rcyBnb29kLCBIZWxlbi4gSXQmcnNxdW87cyB2ZXJ5IGJpZy4iLCAiYW5zIjogIkIifTsKdmFyIFAzPVt7Im4iOiAxOCwgInEiOiAiSG93IG9mdGVuIGRvIHlvdSBzbGVlcCBpbiB5b3VyIHRlbnQ\/IiwgImFucyI6ICJEIn0sIHsibiI6IDE5LCAicSI6ICJJJnJzcXVvO3ZlIGZvdW5kIHNvbWUgYmlnLCB3YXJtIGJsYW5rZXRzIGZvciB1cy4iLCAiYW5zIjogIkgifSwgeyJuIjogMjAsICJxIjogIkFuZCBkaWQgeW91IHJlbWVtYmVyIHRvIGJyaW5nIHRoZSBsaXR0bGUgbGFtcD8iLCAiYW5zIjogIkYifSwgeyJuIjogMjEsICJxIjogIldoYXQgZWxzZSB3aWxsIHdlIG5lZWQgaW4gdGhlIG5pZ2h0PyIsICJhbnMiOiAiQSJ9LCB7Im4iOiAyMiwgInEiOiAiQXJlIHdlIGdvaW5nIHRvIGVhdCBpbiB0aGUgdGVudCB0b28\/IiwgImFucyI6ICJHIn1dOwp2YXIgUDRfQkFOSz1bImdhcmRlbiIsICJmYXJtZXIiLCAid2luZ3MiLCAiYnJhdmUiLCAibWludXRlcyIsICJmb3Jlc3QiLCAiZGFuZ2Vyb3VzIiwgImx5aW5nIiwgImludml0aW5nIiwgIndhdGNoIl07CnZhciBQNF9QQVJUUz1beyJ0IjogIlRoZXJlJnJzcXVvO3MgYSByaXZlciBhdCB0aGUgZW5kIG9mIG91ciAifSwgeyJleCI6ICJnYXJkZW4ifSwgeyJ0IjogIiBzbyBJIGZpc2ggdGhlcmUgc29tZXRpbWVzLiBBY3Jvc3MgdGhlIHJpdmVyIGlzIGEgZmFybSBzbyBJIGNhbiBzaXQgYW5kICJ9LCB7ImciOiAyMywgImEiOiAid2F0Y2gifSwgeyJ0IjogIiB0aGUgYW5pbWFscyBpbiB0aGUgZmllbGRzIHRvby4gVGhlcmUgYXJlIHVzdWFsbHkgY293cyB0aGVyZSBhbmQgc29tZXRpbWVzIHNoZWVwLiBPbmUgYWZ0ZXJub29uLCBJIHdhcyAifSwgeyJnIjogMjQsICJhIjogImx5aW5nIn0sIHsidCI6ICIgb24gdGhlIGdyYXNzLCByZWFkaW5nIGEgY29taWMgd2hlbiBzdWRkZW5seSBJIGhlYXJkIHNvbWV0aGluZy4gTXIgSGlkZSB0aGUgIn0sIHsiZyI6IDI1LCAiYSI6ICJmYXJtZXIifSwgeyJ0IjogIiB3YXMgaW4gdGhlIGZpZWxkIG9wcG9zaXRlLiAmbGRxdW87SGVsbG8hJnJkcXVvOyBJIHNob3V0ZWQgYWNyb3NzIHRoZSByaXZlci4gJmxkcXVvO1doYXQgYXJlIHlvdSBkb2luZz8mcmRxdW87ICZsZHF1bztJJnJzcXVvO20gZ29pbmcgdG8gbWFrZSBhIGJyaWRnZSwgSmFjay4gV291bGQgeW91IGxpa2UgdG8gaGVscD8mcmRxdW87ICZsZHF1bztXb3chIFllcywgcGxlYXNlISZyZHF1bzsgSSBhbnN3ZXJlZC4gSSBjb3VsZG4mcnNxdW87dCBzd2ltIGFjcm9zcyB0aGUgcml2ZXIgYmVjYXVzZSBpdCB3YXMgdG9vICJ9LCB7ImciOiAyNiwgImEiOiAiZGFuZ2Vyb3VzIn0sIHsidCI6ICIgc28gSSBoYWQgdG8gcmlkZSB0byB0aGUgZmFybS4gSXQgdG9vayBhIGxvbmcgdGltZSB0byBnZXQgdGhlcmUgb24gbXkgYmlrZSEgQnV0IG5vdyB3ZSBoYXZlIGEgbGl0dGxlIGJyaWRnZSBvdmVyIHRoZSByaXZlciwgaXQgb25seSB0YWtlcyB0d28gIn0sIHsiZyI6IDI3LCAiYSI6ICJtaW51dGVzIn0sIHsidCI6ICIhIEkgb2Z0ZW4gaGVscCBhdCB0aGUgZmFybSBub3cuIEkgY2FuIHNpdCBvbiB0aGUgYnJpZGdlIGFuZCBsb29rIGF0IHRoZSBzd2FucyBhbmQgY2F0Y2ggbXVjaCBiaWdnZXIgZmlzaCB0b28hIn1dOwp2YXIgUDRfVElUTEU9eyJuIjogMjgsICJhIjogIlRoZSBuZXcgYnJpZGdlIiwgIm9wdHMiOiBbIlRoZSBiaWdnZXN0IGZpc2giLCAiVGhlIG5ldyBicmlkZ2UiLCAiSmFjayBhbmQgaGlzIHBldHMiXX07CnZhciBQNV9TVE9SWT0iSGFycnkgYW5kIGhpcyBzaXN0ZXIsIEVtbWEsIGRlY2lkZWQgdG8gY29vayB0aGUgZGlubmVyIG9uZSBldmVuaW5nIGJlY2F1c2UgdGhlaXIgbW90aGVyIHdhcyBpbiBiZWQuIFNoZSBoYWQgYSB2ZXJ5IGJhZCBoZWFkYWNoZS4gJmxkcXVvO0hvdyBhYm91dCBjaG9jb2xhdGUgc291cD8gTGV0JnJzcXVvO3MgbWFrZSB0aGF0LCZyZHF1bzsgc2FpZCBFbW1hLiAmbGRxdW87WW91IGNhbiZyc3F1bzt0IHB1dCBjaG9jb2xhdGUgaW4gc291cCwmcmRxdW87IGxhdWdoZWQgaGVyIGJyb3RoZXIuICZsZHF1bztNdW0gb25seSBwdXRzIGluIHRvbWF0b2VzIG9yIGNoaWNrZW4gYW5kIG90aGVyIHRoaW5ncyBsaWtlIHRoYXQuIExldCZyc3F1bztzIGp1c3QgbWFrZSBzb21lIGNoZWVzZSBzYW5kd2ljaGVzIGFuZCBhIGNob2NvbGF0ZSBjYWtlLiZyZHF1bzsgJmxkcXVvO09LLCZyZHF1bzsgc2FpZCBFbW1hLiBGaXJzdCwgSGFycnkgbWFkZSB0aGUgc2FuZHdpY2hlcy4gJmxkcXVvO1RoaXMgaXMgZWFzeSwmcmRxdW87IGhlIHRob3VnaHQuICZsZHF1bztOb3csIHdlIG5lZWQgZmxvdXIgYW5kIHN1Z2FyIGZvciB0aGUgY2FrZSwgSGFycnksJnJkcXVvOyBzYWlkIGhpcyBzaXN0ZXIuICZsZHF1bztUaGV5JnJzcXVvO3JlIG9uIHRoZSB0b3Agc2hlbGYgaW4gdGhlIGN1cGJvYXJkLiZyZHF1bzsgJmxkcXVvO09LLCZyZHF1bzsgc2FpZCBIYXJyeS4gJmxkcXVvO0kmcnNxdW87bGwgZ2V0IHNvbWUgYnV0dGVyIGFuZCBjaG9jb2xhdGUgdG9vLiBNdW0gYWx3YXlzIHB1dHMgdGhvc2UgaW4gdGhlIGZyaWRnZS4mcmRxdW87ICZsZHF1bztBbGwgcmlnaHQsJnJkcXVvOyBzYWlkIEVtbWEuICZsZHF1bztBbmQgYnJpbmcgc29tZSBvZiB0aGUgYmlnIGJyb3duIGVnZ3MgdG9vLCBwbGVhc2UuIFdlIG5lZWQgdG8gcHV0IHR3ZWx2ZSBpbiB0aGUgY2FrZS4mcmRxdW87IEVtbWEgbWl4ZWQgZXZlcnl0aGluZyB0b2dldGhlciBpbiBhIGJvd2wgYW5kIHRoZW4gcHV0IHRoZSBjYWtlIGluIHRoZSBjb29rZXIuIFRoZSBjaGlsZHJlbiB3ZXJlIHdhc2hpbmcgdGhlIGZsb29yIGluIHRoZSBraXRjaGVuIHdoZW4gdGhlaXIgZmF0aGVyIGFycml2ZWQgaG9tZS4gJmxkcXVvO1RoYXQgc21lbGxzIGdyZWF0ISBXaGF0IGlzIGl0PyZyZHF1bzsgaGUgc2FpZCBhbmQgb3BlbmVkIHRoZSBjb29rZXIgdG8gbG9vayBpbnNpZGUuICZsZHF1bztBIGxvdmVseSBjaG9jb2xhdGUgY2FrZSEmcmRxdW87IHNhaWQgSGFycnkuICZsZHF1bztIb3cgbWFueSBlZ2dzIGRpZCB5b3UgdXNlPyZyZHF1bzsgYXNrZWQgRGFkLiAmbGRxdW87VHdlbHZlLCZyZHF1bzsgc2FpZCBFbW1hLiBEYWQgc21pbGVkLiAmbGRxdW87SXQgd2lsbCB0YXN0ZSBncmVhdCwgSSZyc3F1bzttIHN1cmUuIExldCZyc3F1bztzIGdpdmUgaXQgYSBuYW1lLiBIb3cgYWJvdXQgJmxzcXVvO0VtbWEmcnNxdW87cyBDaG9jb2xhdGUgRWdnIGNha2UmcnNxdW87PyZyZHF1bzsgVGhlIGNoaWxkcmVuIGxhdWdoZWQgYW5kIHRoZXkgYWxsIHNhdCBkb3duIHRvIGVhdCB0aGVpciBkaW5uZXIuIjsKdmFyIFA1X0VYPVt7ImQiOiAiVGhlIGNoaWxkcmVuJnJzcXVvO3MgbW90aGVyIGhhZCBhIF9fXyB0aGF0IGV2ZW5pbmcuIiwgImEiOiAidmVyeSBiYWQgaGVhZGFjaGUifSwgeyJkIjogIl9fXyB3YW50ZWQgdG8gbWFrZSBjaG9jb2xhdGUgc291cCBmb3IgZGlubmVyLiIsICJhIjogIkVtbWEifV07CnZhciBQNT1beyJuIjogMjksICJkIjogIlRoZSBjaGlsZHJlbiBkZWNpZGVkIHRvIHB1dCBfX18gaW4gdGhlIHNhbmR3aWNoZXMuIiwgImFjYyI6IFsiY2hlZXNlIiwgInNvbWUgY2hlZXNlIl0sICJkaXNwIjogIihzb21lKSBjaGVlc2UifSwgeyJuIjogMzAsICJkIjogIlRoZSBmbG91ciBhbmQgc3VnYXIgd2VyZSBvbiBfX18gaW4gdGhlIGN1cGJvYXJkLiIsICJhY2MiOiBbInRoZSB0b3Agc2hlbGYiLCAidG9wIHNoZWxmIiwgInRoZSBzaGVsZiIsICJhIHNoZWxmIiwgInNoZWxmIl0sICJkaXNwIjogInRoZSAodG9wKSBzaGVsZiJ9LCB7Im4iOiAzMSwgImQiOiAiSGFycnkgdG9vayB0aGUgYnV0dGVyIGFuZCBjaG9jb2xhdGUgZnJvbSB0aGUgX19fLiIsICJhY2MiOiBbImZyaWRnZSIsICJ0aGUgZnJpZGdlIl0sICJkaXNwIjogIih0aGUpIGZyaWRnZSJ9LCB7Im4iOiAzMiwgImQiOiAiRW1tYSBwdXQgdHdlbHZlIF9fXyBpbiB0aGUgY2FrZS4iLCAiYWNjIjogWyJlZ2dzIiwgImJpZyBicm93biBlZ2dzIiwgImJyb3duIGVnZ3MiLCAiYmlnIGVnZ3MiLCAidGhlIGJpZyBicm93biBlZ2dzIl0sICJkaXNwIjogIihiaWcgYnJvd24pIGVnZ3MifSwgeyJuIjogMzMsICJkIjogIldoZW4gdGhlaXIgZmF0aGVyIGNhbWUgaW4sIHRoZSBjaGlsZHJlbiBfX18gdGhlIGtpdGNoZW4gZmxvb3IuIiwgImFjYyI6IFsid2VyZSB3YXNoaW5nIiwgIndlcmUgY2xlYW5pbmciLCAid2FzaGluZyIsICJjbGVhbmluZyIsICJ3YXNoZWQiLCAiY2xlYW5lZCJdLCAiZGlzcCI6ICJ3ZXJlIHdhc2hpbmcvY2xlYW5pbmcifSwgeyJuIjogMzQsICJkIjogIkVtbWEgYW5kIEhhcnJ5JnJzcXVvO3MgZmF0aGVyIGxvb2tlZCBpbnNpZGUgX19fLiIsICJhY2MiOiBbInRoZSBjb29rZXIiLCAiY29va2VyIiwgInRoZSBvdmVuIiwgIm92ZW4iXSwgImRpc3AiOiAidGhlIGNvb2tlci9vdmVuIn0sIHsibiI6IDM1LCAiZCI6ICJEYWQgY2FsbGVkIHRoZSBjYWtlIF9fXy4iLCAiYWNjIjogWyJlbW1hJ3MgY2hvY29sYXRlIGVnZyBjYWtlIiwgImNob2NvbGF0ZSBlZ2cgY2FrZSIsICJlbW1hcyBjaG9jb2xhdGUgZWdnIGNha2UiXSwgImRpc3AiOiAiRW1tYSdzIENob2NvbGF0ZSBFZ2cgY2FrZSJ9XTsKdmFyIFA2X1BBUlRTPVt7InQiOiAiVGhlcmUgIn0sIHsiZXgiOiAiYXJlIn0sIHsidCI6ICIgdXN1YWxseSBhIGxvdCBvZiBpbnRlcmVzdGluZyBib29rcyBhYm91dCBmYW1vdXMgYXJ0aXN0cyBpbiBsaWJyYXJpZXMgYmVjYXVzZSBwZW9wbGUgbGlrZSByZWFkaW5nIGFib3V0IHRoZW0gYW5kIGxvb2tpbmcgYXQgIn0sIHsiZyI6IDM2LCAiYSI6ICJ0aGVpciJ9LCB7InQiOiAiIHBhaW50aW5ncy4gT25lIG9mICJ9LCB7ImciOiAzNywgImEiOiAidGhlIn0sIHsidCI6ICIgbW9zdCBmYW1vdXMgYXJ0aXN0cyBpbiB0aGUgd29ybGQgd2FzIENsYXVkZSBNb25ldC4gSGUgc3RhcnRlZCB0byBwYWludCAxNjAgeWVhcnMgIn0sIHsiZyI6IDM4LCAiYSI6ICJhZ28ifSwgeyJ0IjogIiwgd2hlbiBoZSB3YXMgMjAgeWVhcnMgb2xkLiBIZSBwYWludGVkIGEgbG90IG9mIHBpY3R1cmVzLCBidXQgaWYgeW91IHdhbnQgdG8gYnV5ICJ9LCB7ImciOiAzOSwgImEiOiAib25lIn0sIHsidCI6ICIgbm93LCB5b3UgbXVzdCBiZSB2ZXJ5LCB2ZXJ5IHJpY2guIFBlb3BsZSBjYW4gc3RpbGwgIn0sIHsiZyI6IDQwLCAiYSI6ICJ2aXNpdCJ9LCB7InQiOiAiIG11c2V1bXMgdG8gc2VlIHRoZW0gdGhlcmUuIE1vbmV0IGVuam95ZWQgcGFpbnRpbmcgcGljdHVyZXMgb2YgZmxvd2VycyBhbmQgd2F0ZXIsIHNvIGhlICJ9LCB7ImciOiA0MSwgImEiOiAib2Z0ZW4ifSwgeyJ0IjogIiBwYWludGVkIHRoZSBjb3VudHJ5c2lkZSBhbmQgdGhlIHNlYS4gSGUgYWxzbyBsaWtlZCBwYWludGluZyBwaWN0dXJlcyBvZiBwZW9wbGUgaW4gZ2FyZGVucyAifSwgeyJnIjogNDIsICJhIjogIm9yIn0sIHsidCI6ICIgb24gYm9hdHMuICJ9LCB7ImciOiA0MywgImEiOiAiVGhpcyJ9LCB7InQiOiAiIGFydGlzdCB3YXMgZmFtb3VzIGJlY2F1c2UgaGUgdXNlZCBodW5kcmVkcyBvZiBkaWZmZXJlbnQgY29sb3VycyBpbiBoaXMgcGFpbnRpbmcuIFdoZW4gaGUgbG9va2VkIGF0IGEgdHJlZSwgaGUgZGlkbiZyc3F1bzt0IGp1c3QgIn0sIHsiZyI6IDQ0LCAiYSI6ICJzZWUifSwgeyJ0IjogIiBncmVlbiBsZWF2ZXMuIEluIHRoZSBsaWdodCBmcm9tIHRoZSBzdW4sIGhlIHNhdyB5ZWxsb3csIHBpbmssIHB1cnBsZSBhbmQgb3JhbmdlIGxlYXZlcywgdG9vLiBJdCBpcyBzdHJhbmdlLiBGb3IgbWFueSB5ZWFycyAifSwgeyJnIjogNDUsICJhIjogIm5vLW9uZSJ9LCB7InQiOiAiIGxpa2VkIGhpcyBwYWludGluZ3MuIEhlIGNvdWxkbiZyc3F1bzt0IHNlbGwgdGhlbSwgc28gaGUgd2FzIHZlcnkgcG9vciwgYnV0IG5vdyBwZW9wbGUgbG92ZSB0aGVtLiJ9XTsKdmFyIFA2X09QVFM9eyIzNiI6IFsiaXRzIiwgInRoZWlyIiwgInlvdXIiXSwgIjM3IjogWyJhIiwgInNvbWUiLCAidGhlIl0sICIzOCI6IFsiYWdvIiwgIm9ubHkiLCAic2luY2UiXSwgIjM5IjogWyJpdCIsICJvbmUiLCAiaGltIl0sICI0MCI6IFsidmlzaXQiLCAidmlzaXRlZCIsICJ2aXNpdGluZyJdLCAiNDEiOiBbIndlbGwiLCAib2Z0ZW4iLCAiZXZlciJdLCAiNDIiOiBbImlmIiwgInNvIiwgIm9yIl0sICI0MyI6IFsiQW55IiwgIkFsbCIsICJUaGlzIl0sICI0NCI6IFsic2VlIiwgInNlZWluZyIsICJzZWVzIl0sICI0NSI6IFsibm90IiwgIm5vLW9uZSIsICJub3RoaW5nIl19Owp2YXIgUDdfUEFSVFM9W3sidCI6ICJTYXR1cmRheSBOb3ZlbWJlciAxMy4gSXQgIn0sIHsiZXgiOiAid2FzIn0sIHsidCI6ICIgVW5jbGUgSmltJnJzcXVvO3MgYmlydGhkYXkgdG9kYXkgc28gaGUgY2FtZSBhbmQgaGFkIGx1bmNoICJ9LCB7ImciOiA0NiwgImEiOiAid2l0aCIsICJhY2MiOiBbIndpdGgiXX0sIHsidCI6ICIgdXMuIEl0IHdhcyBzdW5ueSBzbyB3ZSBhdGUgaW4gdGhlIGdhcmRlbi4gV2UgIn0sIHsiZyI6IDQ3LCAiYSI6ICJnYXZlIiwgImFjYyI6IFsiZ2F2ZSJdfSwgeyJ0IjogIiBoaW0gaGlzIHByZXNlbnRzIGFuZCB0aGVuIHdlIGFsbCB3ZW50IHRvIHRoZSBuZXcgY2luZW1hLiBJdCZyc3F1bztzIG11Y2ggYmlnZ2VyIGFuZCBiZXR0ZXIgIn0sIHsiZyI6IDQ4LCAiYSI6ICJ0aGFuIiwgImFjYyI6IFsidGhhbiJdfSwgeyJ0IjogIiB0aGUgb2xkIG9uZS4gV2Ugc2F3IGEgZmlsbSB3aGljaCB3YXMgIn0sIHsiZyI6IDQ5LCAiYSI6ICJjYWxsZWQiLCAiYWNjIjogWyJjYWxsZWQiLCAiYWJvdXQiXX0sIHsidCI6ICIgJmxkcXVvO1RoZSBQeXJhbWlkJnJkcXVvOy4gSW4gb25lIHBhcnQgb2YgdGhlIGZpbG0gc29tZW9uZSBzdWRkZW5seSBqdW1wZWQgb3V0IG9mIGEgYm94LiBXZSB3ZXJlIGFsbCBhZnJhaWQuIEFmdGVyIHRoZSBmaWxtLCBVbmNsZSBKaW0gdG9vayB1cyBhbGwgIn0sIHsiZyI6IDUwLCAiYSI6ICJ0byIsICJhY2MiOiBbInRvIl19LCB7InQiOiAiIGhpcyBmYXZvdXJpdGUgcmVzdGF1cmFudCBhbmQgSSBoYWQgYSBwaXp6YS4gSXQgd2FzIGV4Y2VsbGVudCEifV07CnZhciBUT1RBTD01MDsKCi8qID09PT09IGhlbHBlcnMgPT09PT0gKi8KZnVuY3Rpb24gZXNjKHMpe3JldHVybiBTdHJpbmcocykucmVwbGFjZSgvWzw+XS9nLGZ1bmN0aW9uKGMpe3JldHVybnsnPCc6JyZsdDsnLCc+JzonJmd0Oyd9W2NdfSl9CmZ1bmN0aW9uICQocyxjKXtyZXR1cm4gKGN8fGRvY3VtZW50KS5xdWVyeVNlbGVjdG9yKHMpfQpmdW5jdGlvbiAkJChzLGMpe3JldHVybiBbXS5zbGljZS5jYWxsKChjfHxkb2N1bWVudCkucXVlcnlTZWxlY3RvckFsbChzKSl9CmZ1bmN0aW9uIG5vcm0odil7cmV0dXJuIHYudHJpbSgpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvWy4sIT9dJC8sJycpLnJlcGxhY2UoL1xzKy9nLCcgJykucmVwbGFjZSgvW1x1MjAxOFx1MjAxOV0vZywiJyIpfQoKLyogPT09PT0gc3RhdGUgPT09PT0gKi8KdmFyIFAyc2VsPXt9LFAzc2VsPXt9LFA0Z2FwPXt9LFA0dGl0bGU9bnVsbCxQNmdhcD17fTsKdmFyIFA0X0dBUFM9WzIzLDI0LDI1LDI2LDI3XSxQNl9HQVBTPVszNiwzNywzOCwzOSw0MCw0MSw0Miw0Myw0NCw0NV0sUDdfR0FQUz1bNDYsNDcsNDgsNDksNTBdOwoKLyogPT09PT0gUEFSVCAxID09PT09ICovCihmdW5jdGlvbigpewogIHZhciBiYW5rPSQoJyNwMUJhbmsnKTsKICBQMV9CQU5LLmZvckVhY2goZnVuY3Rpb24odyl7YmFuay5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsJzxkaXYgY2xhc3M9IndjaGlwIHd0ZXh0Ij4nK3crJzwvZGl2PicpO30pOwogIHZhciByb3dzPSQoJyNwMVJvd3MnKTsKICByb3dzLmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlZW5kJywnPGRpdiBjbGFzcz0iZGVmcm93IGV4YW1wbGUiPjxzcGFuIGNsYXNzPSJxbiI+RXg8L3NwYW4+PHNwYW4gY2xhc3M9ImR0ZXh0Ij4nK2VzYyhQMV9FWC5kKSsnPC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDo3MDA7Y29sb3I6IzdCNUIwMCI+Jytlc2MoUDFfRVguYSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZXgtdGFnIj5FeDwvc3Bhbj48L2Rpdj4nKTsKICBQMS5mb3JFYWNoKGZ1bmN0aW9uKHEpewogICAgcm93cy5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsJzxkaXYgY2xhc3M9ImRlZnJvdyI+PHNwYW4gY2xhc3M9InFuIj4nK3EubisnPC9zcGFuPjxzcGFuIGNsYXNzPSJkdGV4dCI+Jytlc2MocS5kKSsnPC9zcGFuPjxpbnB1dCBjbGFzcz0iaW5wdXQtYmxhbmsiIGRhdGEtcT0iJytxLm4rJyIgdHlwZT0idGV4dCIgcGxhY2Vob2xkZXI9Ii4uLiI+PGJ1dHRvbiBjbGFzcz0ic2hvdy1hbnMtYnRuIiBkYXRhLXNob3c9IicrcS5uKyciPiYjMTI4MDY1OzwvYnV0dG9uPjwvZGl2PicpOwogIH0pOwp9KSgpOwovKiA9PT09PSBQQVJUIDIgPT09PT0gKi8KKGZ1bmN0aW9uKCl7CiAgdmFyIHI9JCgnI3AyUm93cycpOwogIFAyX0VYLmZvckVhY2goZnVuY3Rpb24oZSl7ci5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsJzxkaXYgY2xhc3M9InluLXJvdyIgc3R5bGU9Im9wYWNpdHk6LjciPjxkaXYgY2xhc3M9InluLXEiPjxzcGFuIGNsYXNzPSJxbiI+RXg8L3NwYW4+PHNwYW4+Jytlc2MoZS5kKSsnPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InluLW9wdHMiPjxzcGFuIGNsYXNzPSJ5bi1idG4gJysoZS5hPT09J3llcyc\/J2NvcnJlY3QnOicnKSsnIj55ZXM8L3NwYW4+PHNwYW4gY2xhc3M9InluLWJ0biAnKyhlLmE9PT0nbm8nPydjb3JyZWN0JzonJykrJyI+bm88L3NwYW4+PC9kaXY+PC9kaXY+Jyk7fSk7CiAgUDIuZm9yRWFjaChmdW5jdGlvbihxKXsKICAgIHIuaW5zZXJ0QWRqYWNlbnRIVE1MKCdiZWZvcmVlbmQnLCc8ZGl2IGNsYXNzPSJ5bi1yb3ciIGRhdGEtcT0iJytxLm4rJyI+PGRpdiBjbGFzcz0ieW4tcSI+PHNwYW4gY2xhc3M9InFuIj4nK3EubisnPC9zcGFuPjxzcGFuPicrZXNjKHEuZCkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ5bi1vcHRzIj48YnV0dG9uIGNsYXNzPSJ5bi1idG4iIGRhdGEteW49InllcyI+eWVzPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ieW4tYnRuIiBkYXRhLXluPSJubyI+bm88L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJzaG93LWFucy1idG4iIGRhdGEtc2hvdz0iJytxLm4rJyIgc3R5bGU9Im1hcmdpbi1sZWZ0OmF1dG8iPiYjMTI4MDY1OzwvYnV0dG9uPjwvZGl2PjwvZGl2PicpOwogIH0pOwogICQkKCcjcDJSb3dzIC55bi1idG5bZGF0YS15bl0nKS5mb3JFYWNoKGZ1bmN0aW9uKGIpe2IuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLGZ1bmN0aW9uKCl7CiAgICB2YXIgcm93PWIuY2xvc2VzdCgnLnluLXJvdycpLG49cm93LmRhdGFzZXQucTsKICAgICQkKCcueW4tYnRuW2RhdGEteW5dJyxyb3cpLmZvckVhY2goZnVuY3Rpb24oeCl7eC5jbGFzc0xpc3QucmVtb3ZlKCdzZWwnKX0pOwogICAgYi5jbGFzc0xpc3QuYWRkKCdzZWwnKTtQMnNlbFtuXT1iLmRhdGFzZXQueW47dXBkYXRlUHJvZ3Jlc3MoKTsKICB9KTt9KTsKfSkoKTsKLyogPT09PT0gUEFSVCAzIChtYXRjaCBBLUgpID09PT09ICovCihmdW5jdGlvbigpewogIHZhciBvYj0kKCcjcDNPcHRzJyk7CiAgUDNfT1BUUy5mb3JFYWNoKGZ1bmN0aW9uKG8pe29iLmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlZW5kJywnPGRpdiBjbGFzcz0ib2knKyhvLmV4PycgZXgnOicnKSsnIj48c3BhbiBjbGFzcz0ib2wiPicrby5sKyc8L3NwYW4+PHNwYW4+JytvLnQrKG8uZXg\/JyA8Yj4oRXhhbXBsZSk8L2I+JzonJykrJzwvc3Bhbj48L2Rpdj4nKTt9KTsKICBmdW5jdGlvbiBzZWwobil7dmFyIGg9JzxzZWxlY3QgY2xhc3M9Im1hdGNoLXNlbGVjdCIgZGF0YS1xPSInK24rJyI+PG9wdGlvbiB2YWx1ZT0iIj4\/PC9vcHRpb24+JztbJ0EnLCdCJywnQycsJ0QnLCdFJywnRicsJ0cnLCdIJ10uZm9yRWFjaChmdW5jdGlvbihMKXtoKz0nPG9wdGlvbiB2YWx1ZT0iJytMKyciPicrTCsnPC9vcHRpb24+Jzt9KTtyZXR1cm4gaCsnPC9zZWxlY3Q+Jzt9CiAgdmFyIHI9JCgnI3AzUm93cycpOwogIHIuaW5zZXJ0QWRqYWNlbnRIVE1MKCdiZWZvcmVlbmQnLCc8ZGl2IGNsYXNzPSJkbGctcm93IGV4YW1wbGUiPjxzcGFuIGNsYXNzPSJxbiI+RXg8L3NwYW4+PHNwYW4gY2xhc3M9ImRsZy1xIj48Yj5CZXR0eTo8L2I+ICcrZXNjKFAzX0VYLnEpKyc8L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OjgwMDtjb2xvcjojN0I1QjAwIj5IZWxlbjogJytQM19FWC5hbnMrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZXgtdGFnIj5FeDwvc3Bhbj48L2Rpdj4nKTsKICBQMy5mb3JFYWNoKGZ1bmN0aW9uKHEpewogICAgci5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsJzxkaXYgY2xhc3M9ImRsZy1yb3ciIGRhdGEtcT0iJytxLm4rJyI+PHNwYW4gY2xhc3M9InFuIj4nK3EubisnPC9zcGFuPjxzcGFuIGNsYXNzPSJkbGctcSI+PGI+QmV0dHk6PC9iPiAnK2VzYyhxLnEpKyc8L3NwYW4+PGI+SGVsZW46PC9iPiAnK3NlbChxLm4pKyc8YnV0dG9uIGNsYXNzPSJzaG93LWFucy1idG4iIGRhdGEtc2hvdz0iJytxLm4rJyI+JiMxMjgwNjU7PC9idXR0b24+PC9kaXY+Jyk7CiAgfSk7CiAgJCQoJyNwM1Jvd3MgLm1hdGNoLXNlbGVjdCcpLmZvckVhY2goZnVuY3Rpb24ocyl7cy5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLGZ1bmN0aW9uKCl7UDNzZWxbcy5kYXRhc2V0LnFdPXMudmFsdWU7dXBkYXRlUHJvZ3Jlc3MoKTt9KTt9KTsKfSkoKTsKLyogPT09PT0gUEFSVCA0ID09PT09ICovCihmdW5jdGlvbigpewogIHZhciBiYW5rPSQoJyNwNEJhbmsnKTsKICBQNF9CQU5LLmZvckVhY2goZnVuY3Rpb24odyl7YmFuay5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsJzxkaXYgY2xhc3M9IndjaGlwIHd0ZXh0Ij4nK3crJzwvZGl2PicpO30pOwogIHZhciBzdG9yeT0kKCcjcDRTdG9yeScpLGh0bWw9Jyc7CiAgUDRfUEFSVFMuZm9yRWFjaChmdW5jdGlvbihwKXsKICAgIGlmKHAudClodG1sKz1lc2MocC50KTsKICAgIGVsc2UgaWYocC5leClodG1sKz0nPHUgc3R5bGU9ImNvbG9yOnZhcigtLWFjY2VudC0xKTtmb250LXdlaWdodDo3MDAiPicrcC5leCsnPC91Pic7CiAgICBlbHNlIGlmKHAuZyl7CiAgICAgIGh0bWwrPSc8c2VsZWN0IGNsYXNzPSJnYXAtc2VsZWN0IiBkYXRhLXE9IicrcC5nKyciPjxvcHRpb24gdmFsdWU9IiI+KCcrcC5nKycpIGNob29zZTwvb3B0aW9uPicrUDRfQkFOSy5tYXAoZnVuY3Rpb24odyl7cmV0dXJuICc8b3B0aW9uIHZhbHVlPSInK3crJyI+Jyt3Kyc8L29wdGlvbj4nO30pLmpvaW4oJycpKyc8L3NlbGVjdD4nOwogICAgfQogIH0pOwogIHN0b3J5LmlubmVySFRNTD1odG1sOwogICQkKCcjcDRTdG9yeSAuZ2FwLXNlbGVjdCcpLmZvckVhY2goZnVuY3Rpb24ocyl7cy5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLGZ1bmN0aW9uKCl7UDRnYXBbcy5kYXRhc2V0LnFdPXMudmFsdWU7dXBkYXRlUHJvZ3Jlc3MoKTt9KTt9KTsKICB2YXIgdHQ9JCgnI3A0VGl0bGUnKTsKICBQNF9USVRMRS5vcHRzLmZvckVhY2goZnVuY3Rpb24obyl7dHQuaW5zZXJ0QWRqYWNlbnRIVE1MKCdiZWZvcmVlbmQnLCc8ZGl2IGNsYXNzPSJ0aWNrYm94IiBkYXRhLXRpdGxlPSInK28rJyI+PHNwYW4gY2xhc3M9InRiIj4mIzEwMDAzOzwvc3Bhbj48c3Bhbj4nK2VzYyhvKSsnPC9zcGFuPjwvZGl2PicpO30pOwogICQkKCcjcDRUaXRsZSAudGlja2JveCcpLmZvckVhY2goZnVuY3Rpb24oYil7Yi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZnVuY3Rpb24oKXsKICAgICQkKCcjcDRUaXRsZSAudGlja2JveCcpLmZvckVhY2goZnVuY3Rpb24oeCl7eC5jbGFzc0xpc3QucmVtb3ZlKCdzZWwnKX0pOwogICAgYi5jbGFzc0xpc3QuYWRkKCdzZWwnKTtQNHRpdGxlPWIuZGF0YXNldC50aXRsZTt1cGRhdGVQcm9ncmVzcygpOwogIH0pO30pOwp9KSgpOwovKiA9PT09PSBQQVJUIDUgPT09PT0gKi8KKGZ1bmN0aW9uKCl7CiAgJCgnI3A1U3RvcnknKS5pbm5lckhUTUw9JzxpbWcgY2xhc3M9InNjZW5lIiBzcmM9Imh0dHBzOi8vYWxsZW5nbGlzaDR1LmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wNi9mNnQxcndfcDUuanBnIiBhbHQ9IkhhcnJ5IGFuZCBFbW1hIGNvb2tpbmcgaW4gYSBraXRjaGVuIj4nK1A1X1NUT1JZOwogIHZhciByPSQoJyNwNVJvd3MnKTsKICBQNV9FWC5mb3JFYWNoKGZ1bmN0aW9uKGUpe3IuaW5zZXJ0QWRqYWNlbnRIVE1MKCdiZWZvcmVlbmQnLCc8ZGl2IGNsYXNzPSJkZWZyb3cgZXhhbXBsZSI+PHNwYW4gY2xhc3M9InFuIj5FeDwvc3Bhbj48c3BhbiBjbGFzcz0iZHRleHQiPicrZS5kKyc8L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojN0I1QjAwIj4nK2UuYSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJleC10YWciPkV4PC9zcGFuPjwvZGl2PicpO30pOwogIFA1LmZvckVhY2goZnVuY3Rpb24ocSl7CiAgICByLmluc2VydEFkamFjZW50SFRNTCgnYmVmb3JlZW5kJywnPGRpdiBjbGFzcz0iZGVmcm93Ij48c3BhbiBjbGFzcz0icW4iPicrcS5uKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImR0ZXh0Ij4nK3EuZCsnPC9zcGFuPjxpbnB1dCBjbGFzcz0iaW5wdXQtYmxhbmsiIGRhdGEtcT0iJytxLm4rJyIgdHlwZT0idGV4dCIgcGxhY2Vob2xkZXI9IjEtNCB3b3JkcyI+PGJ1dHRvbiBjbGFzcz0ic2hvdy1hbnMtYnRuIiBkYXRhLXNob3c9IicrcS5uKyciPiYjMTI4MDY1OzwvYnV0dG9uPjwvZGl2PicpOwogIH0pOwp9KSgpOwovKiA9PT09PSBQQVJUIDYgPT09PT0gKi8KKGZ1bmN0aW9uKCl7CiAgdmFyIHN0b3J5PSQoJyNwNlN0b3J5JyksaHRtbD0nJzsKICBQNl9QQVJUUy5mb3JFYWNoKGZ1bmN0aW9uKHApewogICAgaWYocC50KWh0bWwrPWVzYyhwLnQpOwogICAgZWxzZSBpZihwLmV4KWh0bWwrPSc8dSBzdHlsZT0iY29sb3I6dmFyKC0tYWNjZW50LTEpO2ZvbnQtd2VpZ2h0OjcwMCI+JytwLmV4Kyc8L3U+JzsKICAgIGVsc2UgaWYocC5nKXsKICAgICAgdmFyIEw9WydBJywnQicsJ0MnXTsKICAgICAgaHRtbCs9JzxzZWxlY3QgY2xhc3M9ImdhcC1zZWxlY3QiIGRhdGEtcT0iJytwLmcrJyI+PG9wdGlvbiB2YWx1ZT0iIj4oJytwLmcrJyk8L29wdGlvbj4nK1A2X09QVFNbcC5nXS5tYXAoZnVuY3Rpb24odyxpKXtyZXR1cm4gJzxvcHRpb24gdmFsdWU9IicrTFtpXSsnIj4nK3crJzwvb3B0aW9uPic7fSkuam9pbignJykrJzwvc2VsZWN0Pic7CiAgICB9CiAgfSk7CiAgc3RvcnkuaW5uZXJIVE1MPWh0bWw7CiAgJCQoJyNwNlN0b3J5IC5nYXAtc2VsZWN0JykuZm9yRWFjaChmdW5jdGlvbihzKXtzLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsZnVuY3Rpb24oKXtQNmdhcFtzLmRhdGFzZXQucV09cy52YWx1ZTt1cGRhdGVQcm9ncmVzcygpO30pO30pOwp9KSgpOwovKiA9PT09PSBQQVJUIDcgKG9wZW4gY2xvemUgMSB3b3JkKSA9PT09PSAqLwooZnVuY3Rpb24oKXsKICB2YXIgc3Rvcnk9JCgnI3A3U3RvcnknKSxodG1sPScnOwogIFA3X1BBUlRTLmZvckVhY2goZnVuY3Rpb24ocCl7CiAgICBpZihwLnQpaHRtbCs9ZXNjKHAudCk7CiAgICBlbHNlIGlmKHAuZXgpaHRtbCs9Jzx1IHN0eWxlPSJjb2xvcjp2YXIoLS1hY2NlbnQtMSk7Zm9udC13ZWlnaHQ6NzAwIj4nK3AuZXgrJzwvdT4nOwogICAgZWxzZSBpZihwLmcpewogICAgICBodG1sKz0nPGlucHV0IGNsYXNzPSJpbnB1dC1ibGFuayBpbnB1dC1taW5pIiBkYXRhLXE9IicrcC5nKyciIHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSIoJytwLmcrJykiPic7CiAgICB9CiAgfSk7CiAgc3RvcnkuaW5uZXJIVE1MPWh0bWw7Cn0pKCk7CgovKiA9PT09PSBwcm9ncmVzcyA9PT09PSAqLwpmdW5jdGlvbiBwN2ZpbmQoZyl7dmFyIGY9bnVsbDtQN19QQVJUUy5mb3JFYWNoKGZ1bmN0aW9uKHApe2lmKHAuZz09PWcpZj1wO30pO3JldHVybiBmO30KZnVuY3Rpb24gYW5zd2VyZWQoKXsKICB2YXIgbj0wOwogIFAxLmZvckVhY2goZnVuY3Rpb24ocSl7dmFyIGVsPSQoJy5pbnB1dC1ibGFua1tkYXRhLXE9IicrcS5uKyciXScpO2lmKGVsJiZlbC52YWx1ZS50cmltKCkpbisrO30pOwogIFAyLmZvckVhY2goZnVuY3Rpb24ocSl7aWYoUDJzZWxbcS5uXSluKys7fSk7CiAgUDMuZm9yRWFjaChmdW5jdGlvbihxKXtpZihQM3NlbFtxLm5dKW4rKzt9KTsKICBQNF9HQVBTLmZvckVhY2goZnVuY3Rpb24oZyl7aWYoUDRnYXBbZ10pbisrO30pOwogIGlmKFA0dGl0bGUpbisrOwogIFA1LmZvckVhY2goZnVuY3Rpb24ocSl7dmFyIGVsPSQoJy5pbnB1dC1ibGFua1tkYXRhLXE9IicrcS5uKyciXScpO2lmKGVsJiZlbC52YWx1ZS50cmltKCkpbisrO30pOwogIFA2X0dBUFMuZm9yRWFjaChmdW5jdGlvbihnKXtpZihQNmdhcFtnXSluKys7fSk7CiAgUDdfR0FQUy5mb3JFYWNoKGZ1bmN0aW9uKGcpe3ZhciBlbD0kKCcuaW5wdXQtYmxhbmtbZGF0YS1xPSInK2crJyJdJyk7aWYoZWwmJmVsLnZhbHVlLnRyaW0oKSluKys7fSk7CiAgcmV0dXJuIG47Cn0KZnVuY3Rpb24gdXBkYXRlUHJvZ3Jlc3MoKXt2YXIgYT1hbnN3ZXJlZCgpOyQoJyNhbnN3ZXJlZENvdW50JykudGV4dENvbnRlbnQ9YTskKCcjcHJvZ0ZpbGwnKS5zdHlsZS53aWR0aD0oYS9UT1RBTCoxMDApKyclJzt9CmRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLGZ1bmN0aW9uKGUpe2lmKGUudGFyZ2V0LmNsYXNzTGlzdCYmZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCdpbnB1dC1ibGFuaycpKXVwZGF0ZVByb2dyZXNzKCk7fSk7CgovKiA9PT09PSByZXZlYWwgaGVscGVycyA9PT09PSAqLwpmdW5jdGlvbiByZXZlYWxJbnB1dChuLHZhbCl7dmFyIGVsPSQoJy5pbnB1dC1ibGFua1tkYXRhLXE9IicrbisnIl0nKTtpZihlbCl7ZWwudmFsdWU9dmFsO2VsLmNsYXNzTGlzdC5hZGQoJ3JldmVhbGVkJyk7dXBkYXRlUHJvZ3Jlc3MoKTt9fQpmdW5jdGlvbiByZXZlYWxZTihuLGEpe3ZhciByb3c9JCgnLnluLXJvd1tkYXRhLXE9IicrbisnIl0nKTtpZighcm93KXJldHVybjskJCgnLnluLWJ0bltkYXRhLXluXScscm93KS5mb3JFYWNoKGZ1bmN0aW9uKHgpe3guY2xhc3NMaXN0LnJlbW92ZSgnc2VsJyk7aWYoeC5kYXRhc2V0LnluPT09YSl4LmNsYXNzTGlzdC5hZGQoJ2NvcnJlY3QnKTt9KTtQMnNlbFtuXT1hO3VwZGF0ZVByb2dyZXNzKCk7fQpmdW5jdGlvbiByZXZlYWxNYXRjaChuLGEpe3ZhciBzPSQoJy5tYXRjaC1zZWxlY3RbZGF0YS1xPSInK24rJyJdJyk7aWYocyl7cy52YWx1ZT1hO3MuY2xhc3NMaXN0LmFkZCgnY29ycmVjdCcpO1Azc2VsW25dPWE7dXBkYXRlUHJvZ3Jlc3MoKTt9fQpmdW5jdGlvbiBwNGFucyhnKXt2YXIgZj1udWxsO1A0X1BBUlRTLmZvckVhY2goZnVuY3Rpb24ocCl7aWYocC5nPT09ZylmPXA7fSk7cmV0dXJuIGY\/Zi5hOicnO30KZnVuY3Rpb24gcmV2ZWFsVGl0bGUoKXskJCgnI3A0VGl0bGUgLnRpY2tib3gnKS5mb3JFYWNoKGZ1bmN0aW9uKHgpe3guY2xhc3NMaXN0LnJlbW92ZSgnc2VsJyk7aWYoeC5kYXRhc2V0LnRpdGxlPT09UDRfVElUTEUuYSl7eC5jbGFzc0xpc3QuYWRkKCdzZWwnKTt9fSk7UDR0aXRsZT1QNF9USVRMRS5hO30KCi8qID09PT09IHNob3cgYW5zd2VycyA9PT09PSAqLwpkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJyxmdW5jdGlvbihlKXsKICB2YXIgYj1lLnRhcmdldC5jbG9zZXN0KCcuc2hvdy1hbnMtYnRuJyk7aWYoIWIpcmV0dXJuOwogIHZhciBrPWIuZGF0YXNldC5zaG93OwogIGlmKGs9PT0nUDFBTEwnKXtQMS5mb3JFYWNoKGZ1bmN0aW9uKHEpe3JldmVhbElucHV0KHEubixxLmEpO30pO3JldHVybjt9CiAgaWYoaz09PSdQMkFMTCcpe1AyLmZvckVhY2goZnVuY3Rpb24ocSl7cmV2ZWFsWU4ocS5uLHEuYSk7fSk7cmV0dXJuO30KICBpZihrPT09J1AzQUxMJyl7UDMuZm9yRWFjaChmdW5jdGlvbihxKXtyZXZlYWxNYXRjaChxLm4scS5hbnMpO30pO3JldHVybjt9CiAgaWYoaz09PSdQNEFMTCcpe1A0X0dBUFMuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgYT1wNGFucyhnKTt2YXIgcz0kKCcuZ2FwLXNlbGVjdFtkYXRhLXE9IicrZysnIl0nKTtpZihzKXtzLnZhbHVlPWE7UDRnYXBbZ109YTt9fSk7cmV2ZWFsVGl0bGUoKTt1cGRhdGVQcm9ncmVzcygpO3JldHVybjt9CiAgaWYoaz09PSdQNUFMTCcpe1A1LmZvckVhY2goZnVuY3Rpb24ocSl7cmV2ZWFsSW5wdXQocS5uLHEuZGlzcCk7fSk7cmV0dXJuO30KICBpZihrPT09J1A2QUxMJyl7UDZfR0FQUy5mb3JFYWNoKGZ1bmN0aW9uKGcpe3ZhciBMPVsnQScsJ0InLCdDJ107dmFyIGlkeD1QNl9PUFRTW2ddLmluZGV4T2YocDZhbnMoZykpO3ZhciBzPSQoJy5nYXAtc2VsZWN0W2RhdGEtcT0iJytnKyciXScpO2lmKHMpe3MudmFsdWU9TFtpZHhdO1A2Z2FwW2ddPUxbaWR4XTt9fSk7dXBkYXRlUHJvZ3Jlc3MoKTtyZXR1cm47fQogIGlmKGs9PT0nUDdBTEwnKXtQN19HQVBTLmZvckVhY2goZnVuY3Rpb24oZyl7dmFyIGY9cDdmaW5kKGcpO3JldmVhbElucHV0KGcsZi5hKTt9KTtyZXR1cm47fQogIHZhciBxaWQ9cGFyc2VJbnQoayk7CiAgaWYocWlkPj0xJiZxaWQ8PTEwKXt2YXIgcT1udWxsO1AxLmZvckVhY2goZnVuY3Rpb24oeCl7aWYoeC5uPT09cWlkKXE9eDt9KTtyZXZlYWxJbnB1dChxaWQscS5hKTt9CiAgZWxzZSBpZihxaWQ+PTExJiZxaWQ8PTE3KXt2YXIgcT1udWxsO1AyLmZvckVhY2goZnVuY3Rpb24oeCl7aWYoeC5uPT09cWlkKXE9eDt9KTtyZXZlYWxZTihxaWQscS5hKTt9CiAgZWxzZSBpZihxaWQ+PTE4JiZxaWQ8PTIyKXt2YXIgcT1udWxsO1AzLmZvckVhY2goZnVuY3Rpb24oeCl7aWYoeC5uPT09cWlkKXE9eDt9KTtyZXZlYWxNYXRjaChxaWQscS5hbnMpO30KICBlbHNlIGlmKHFpZD49MjkmJnFpZDw9MzUpe3ZhciBxPW51bGw7UDUuZm9yRWFjaChmdW5jdGlvbih4KXtpZih4Lm49PT1xaWQpcT14O30pO3JldmVhbElucHV0KHFpZCxxLmRpc3ApO30KfSk7CmZ1bmN0aW9uIHA2YW5zKGcpe3ZhciBmPW51bGw7UDZfUEFSVFMuZm9yRWFjaChmdW5jdGlvbihwKXtpZihwLmc9PT1nKWY9cDt9KTtyZXR1cm4gZj9mLmE6Jyc7fQoKLyogPT09PT0gc3VibWl0ID09PT09ICovCiQoJyNzdWJtaXRCdG4nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZnVuY3Rpb24oKXsKICB2YXIgc2NvcmU9MCxwYXJ0cz17MTowLDI6MCwzOjAsNDowLDU6MCw2OjAsNzowfTsKICBQMS5mb3JFYWNoKGZ1bmN0aW9uKHEpe3ZhciBlbD0kKCcuaW5wdXQtYmxhbmtbZGF0YS1xPSInK3EubisnIl0nKTtpZighZWwpcmV0dXJuO2lmKGVsLmNsYXNzTGlzdC5jb250YWlucygncmV2ZWFsZWQnKSlyZXR1cm47dmFyIHY9bm9ybShlbC52YWx1ZSk7dmFyIHZ2PXYucmVwbGFjZSgvXihhfGFufHRoZSlccysvLCcnKTt2YXIgb2s9cS5hY2MuaW5kZXhPZih2KT49MHx8cS5hY2MuaW5kZXhPZih2dik+PTA7aWYob2spe3Njb3JlKys7cGFydHNbMV0rKztlbC5jbGFzc0xpc3QuYWRkKCdjb3JyZWN0Jyk7fWVsc2V7ZWwuY2xhc3NMaXN0LmFkZCgnd3JvbmcnKTtlbC50aXRsZT0nQ29ycmVjdDogJytxLmE7fX0pOwogIFAyLmZvckVhY2goZnVuY3Rpb24ocSl7dmFyIHJvdz0kKCcueW4tcm93W2RhdGEtcT0iJytxLm4rJyJdJyk7aWYoIXJvdylyZXR1cm47JCQoJy55bi1idG5bZGF0YS15bl0nLHJvdykuZm9yRWFjaChmdW5jdGlvbih4KXt2YXIgeW49eC5kYXRhc2V0LnluO3guY2xhc3NMaXN0LnJlbW92ZSgnc2VsJyk7aWYoeW49PT1xLmEpeC5jbGFzc0xpc3QuYWRkKCdjb3JyZWN0Jyk7ZWxzZSBpZihQMnNlbFtxLm5dPT09eW4peC5jbGFzc0xpc3QuYWRkKCd3cm9uZycpO30pO2lmKFAyc2VsW3Eubl09PT1xLmEpe3Njb3JlKys7cGFydHNbMl0rKzt9fSk7CiAgUDMuZm9yRWFjaChmdW5jdGlvbihxKXt2YXIgcz0kKCcubWF0Y2gtc2VsZWN0W2RhdGEtcT0iJytxLm4rJyJdJyk7aWYoIXMpcmV0dXJuO3MuY2xhc3NMaXN0LnJlbW92ZSgnY29ycmVjdCcsJ3dyb25nJyk7aWYoUDNzZWxbcS5uXT09PXEuYW5zKXtzY29yZSsrO3BhcnRzWzNdKys7cy5jbGFzc0xpc3QuYWRkKCdjb3JyZWN0Jyk7fWVsc2UgaWYoUDNzZWxbcS5uXSlzLmNsYXNzTGlzdC5hZGQoJ3dyb25nJyk7fSk7CiAgUDRfR0FQUy5mb3JFYWNoKGZ1bmN0aW9uKGcpe3ZhciBzPSQoJy5nYXAtc2VsZWN0W2RhdGEtcT0iJytnKyciXScpO2lmKCFzKXJldHVybjt2YXIgYT1wNGFucyhnKTtzLmNsYXNzTGlzdC5yZW1vdmUoJ2NvcnJlY3QnLCd3cm9uZycpO2lmKFA0Z2FwW2ddPT09YSl7c2NvcmUrKztwYXJ0c1s0XSsrO3MuY2xhc3NMaXN0LmFkZCgnY29ycmVjdCcpO31lbHNlIGlmKFA0Z2FwW2ddKXMuY2xhc3NMaXN0LmFkZCgnd3JvbmcnKTt9KTsKICAkJCgnI3A0VGl0bGUgLnRpY2tib3gnKS5mb3JFYWNoKGZ1bmN0aW9uKHgpe3guY2xhc3NMaXN0LnJlbW92ZSgnY29ycmVjdCcsJ3dyb25nJyk7aWYoeC5kYXRhc2V0LnRpdGxlPT09UDRfVElUTEUuYSl4LmNsYXNzTGlzdC5hZGQoJ2NvcnJlY3QnKTtlbHNlIGlmKFA0dGl0bGU9PT14LmRhdGFzZXQudGl0bGUpeC5jbGFzc0xpc3QuYWRkKCd3cm9uZycpO30pOwogIGlmKFA0dGl0bGU9PT1QNF9USVRMRS5hKXtzY29yZSsrO3BhcnRzWzRdKys7fQogIFA1LmZvckVhY2goZnVuY3Rpb24ocSl7dmFyIGVsPSQoJy5pbnB1dC1ibGFua1tkYXRhLXE9IicrcS5uKyciXScpO2lmKCFlbClyZXR1cm47aWYoZWwuY2xhc3NMaXN0LmNvbnRhaW5zKCdyZXZlYWxlZCcpKXJldHVybjt2YXIgdj1ub3JtKGVsLnZhbHVlKTt2YXIgb2s9cS5hY2MuaW5kZXhPZih2KT49MHx8cS5hY2MuaW5kZXhPZih2LnJlcGxhY2UoL14oYXxhbnx0aGUpXHMrLywnJykpPj0wO2lmKG9rKXtzY29yZSsrO3BhcnRzWzVdKys7ZWwuY2xhc3NMaXN0LmFkZCgnY29ycmVjdCcpO31lbHNle2VsLmNsYXNzTGlzdC5hZGQoJ3dyb25nJyk7ZWwudGl0bGU9J0NvcnJlY3Q6ICcrcS5kaXNwO319KTsKICBQNl9HQVBTLmZvckVhY2goZnVuY3Rpb24oZyl7dmFyIHM9JCgnLmdhcC1zZWxlY3RbZGF0YS1xPSInK2crJyJdJyk7aWYoIXMpcmV0dXJuO3ZhciBMPVsnQScsJ0InLCdDJ107dmFyIGNvcnJlY3RMPUxbUDZfT1BUU1tnXS5pbmRleE9mKHA2YW5zKGcpKV07cy5jbGFzc0xpc3QucmVtb3ZlKCdjb3JyZWN0Jywnd3JvbmcnKTtpZihQNmdhcFtnXT09PWNvcnJlY3RMKXtzY29yZSsrO3BhcnRzWzZdKys7cy5jbGFzc0xpc3QuYWRkKCdjb3JyZWN0Jyk7fWVsc2UgaWYoUDZnYXBbZ10pcy5jbGFzc0xpc3QuYWRkKCd3cm9uZycpO30pOwogIFA3X0dBUFMuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgZWw9JCgnLmlucHV0LWJsYW5rW2RhdGEtcT0iJytnKyciXScpO2lmKCFlbClyZXR1cm47aWYoZWwuY2xhc3NMaXN0LmNvbnRhaW5zKCdyZXZlYWxlZCcpKXJldHVybjt2YXIgZj1wN2ZpbmQoZyk7dmFyIHY9bm9ybShlbC52YWx1ZSk7dmFyIG9rPWYuYWNjLmluZGV4T2Yodik+PTA7aWYob2spe3Njb3JlKys7cGFydHNbN10rKztlbC5jbGFzc0xpc3QuYWRkKCdjb3JyZWN0Jyk7fWVsc2V7ZWwuY2xhc3NMaXN0LmFkZCgnd3JvbmcnKTtlbC50aXRsZT0nQ29ycmVjdDogJytmLmE7fX0pOwogICQoJyNzY29yZU5vdycpLnRleHRDb250ZW50PXNjb3JlOyQoJyNmaW5hbFNjb3JlJykudGV4dENvbnRlbnQ9c2NvcmU7CiAgdmFyIHBjdD1NYXRoLnJvdW5kKHNjb3JlL1RPVEFMKjEwMCk7CiAgdmFyIG1zZz1wY3Q+PTg1PydFeGNlbGxlbnQhIFlvdXIgcmVhZGluZyBhbmQgd3JpdGluZyBpcyBzdHJvbmcuJzpwY3Q+PTcwPydHb29kIGpvYiEgS2VlcCBwcmFjdGlzaW5nLic6cGN0Pj01MD8nTmljZSB0cnkgJm1kYXNoOyByZXZpZXcgdGhlIHBhcnRzIHlvdSBtaXNzZWQuJzonS2VlcCBnb2luZyAmbWRhc2g7IHJlYWQgdGhlIHN0b3JpZXMgYWdhaW4gYW5kIHVzZSBTaG93IEFuc3dlcnMuJzsKICAkKCcjcmVzdWx0c01zZycpLmlubmVySFRNTD1tc2c7CiAgdmFyIHNwPSQoJyNzY29yZVBhcnRzJyk7c3AuaW5uZXJIVE1MPScnOwogIFsnV29yZHMnLCdZZXMvTm8nLCdEaWFsb2d1ZScsJ1N0b3J5JywnQ29tcGxldGUnLCdXb3JkIGNob2ljZScsJ09uZSB3b3JkJ10uZm9yRWFjaChmdW5jdGlvbihsYWIsaSl7c3AuaW5uZXJIVE1MKz0nPGRpdiBjbGFzcz0ic3AtaXRlbSI+PGI+JytwYXJ0c1tpKzFdKyc8L2I+UCcrKGkrMSkrJyAnK2xhYisnPC9kaXY+Jzt9KTsKICAkKCcjcmVzdWx0c0Jhbm5lcicpLmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTsKICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7JCgnI3Jlc3VsdHNCYW5uZXInKS5zY3JvbGxJbnRvVmlldyh7YmVoYXZpb3I6J3Ntb290aCcsYmxvY2s6J2NlbnRlcid9KTt9LDEyMCk7Cn0pOwokKCcjcmVzZXRCdG4nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZnVuY3Rpb24oKXtpZighY29uZmlybSgnUmVzZXQgYWxsIGFuc3dlcnM\/JykpcmV0dXJuO2xvY2F0aW9uLnJlbG9hZCgpO30pOwp1cGRhdGVQcm9ncmVzcygpOwp9KSgpOwo='));<\/script>","protected":false},"excerpt":{"rendered":"<p>Cambridge YLE &middot; Flyers Flyers 6 &mdash; Test 1 Reading &amp; Writing 7 parts with 50 questions. Read carefully, choose or write your answers, then submit to grade. Each part has a Show Answers button to study. ~40 minutes 7 Parts &middot; 50 Questions Auto-grade + Show Answers Score 0\/50 0 of 50 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-5395","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/pages\/5395","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=5395"}],"version-history":[{"count":0,"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/pages\/5395\/revisions"}],"wp:attachment":[{"href":"https:\/\/allenglish4u.com\/vi\/wp-json\/wp\/v2\/media?parent=5395"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}