PageSourceSearch

https://zaitcev.ru/eng-480/

html zaitcev.ru collected 2026-10-03 18:13:34 UTC 291,409 bytes, 5,886 lines download raw bytes

1<!doctype html>
2	<html lang="ru-RU">
3	<head>
4		<meta charset="UTF-8">
5		<meta name="viewport" content="width=device-width, initial-scale=1">
6		<link rel="profile" href="http://gmpg.org/xfn/11">
7		<title>480 EN</title>
8<meta name='robots' content='max-image-preview:large' />
9
10<!-- All in One SEO Pack 3.3.5 от Michael Torbert из Semper Fi Web Design[196,248] -->
11<script type="application/ld+json" class="aioseop-schema">{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://zaitcev.ru/#organization","url":"https://zaitcev.ru/","name":"\u0410\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u0431\u043b\u043e\u0433 \u0410\u043b\u0435\u043a\u0441\u0435\u044f \u0417\u0430\u0439\u0446\u0435\u0432\u0430","sameAs":[]},{"@type":"WebSite","@id":"https://zaitcev.ru/#website","url":"https://zaitcev.ru/","name":"\u0410\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u0431\u043b\u043e\u0433 \u0410\u043b\u0435\u043a\u0441\u0435\u044f \u0417\u0430\u0439\u0446\u0435\u0432\u0430","publisher":{"@id":"https://zaitcev.ru/#organization"},"potentialAction":{"@type":"SearchAction","target":"https://zaitcev.ru/?s={search_term_string}","query-input":"required name=search_term_string"}},{"@type":"WebPage","@id":"https://zaitcev.ru/eng-480/#webpage","url":"https://zaitcev.ru/eng-480/","inLanguage":"ru-RU","name":"480 EN","isPartOf":{"@id":"https://zaitcev.ru/#website"},"datePublished":"2026-01-18T07:31:20+00:00","dateModified":"2026-01-19T05:34:12+00:00"}]}</script>
11
12<link rel="canonical" href="https://zaitcev.ru/eng-480/" />
13<!-- All in One SEO Pack -->
14<link rel='dns-prefetch' href='//fonts.googleapis.com' />
15<link rel="alternate" type="application/rss+xml" title="Авторский блог Алексея Зайцева &raquo; Лента" href="https://zaitcev.ru/feed/" />
16<link rel="alternate" type="application/rss+xml" title="Авторский блог Алексея Зайцева &raquo; Лента комментариев" href="https://zaitcev.ru/comments/feed/" />
17<script type="text/javascript">
18window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/zaitcev.ru\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.3.12"}};
19/*! This file is auto-generated */
20!function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffb\u200b\ud83e\udef2\ud83c\udfff")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);
21</script>
21
22<style type="text/css">
23img.wp-smiley,
24img.emoji {
25	display: inline !important;
26	border: none !important;
27	box-shadow: none !important;
28	height: 1em !important;
29	width: 1em !important;
30	margin: 0 0.07em !important;
31	vertical-align: -0.1em !important;
32	background: none !important;
33	padding: 0 !important;
34}
35</style>
36	<link rel='stylesheet' id='mci-footnotes-css-public-css' href='https://zaitcev.ru/wp-content/plugins/footnotes/class/../css/public.css?ver=6.3.12' type='text/css' media='all' />
37<link rel='stylesheet' id='wp-block-library-css' href='https://zaitcev.ru/wp-includes/css/dist/block-library/style.min.css?ver=6.3.12' type='text/css' media='all' />
38<style id='classic-theme-styles-inline-css' type='text/css'>
39/*! This file is auto-generated */
40.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
41</style>
42<style id='global-styles-inline-css' type='text/css'>
43body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
43--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}body .is-layout-grid{display: grid;}body .is-layout-grid > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
43.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
44.wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;}
45:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
46:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
47.wp-block-pullquote{font-size: 1.5em;line-height: 1.6;}
48</style>
49<link rel='stylesheet' id='h5p-plugin-fonts-css' href='https://zaitcev.ru/wp-content/plugins/h5p/h5p-php-library/styles/h5p-fonts.css?ver=1.17.3' type='text/css' media='all' />
50<link rel='stylesheet' id='h5p-plugin-styles-css' href='https://zaitcev.ru/wp-content/plugins/h5p/h5p-php-library/styles/h5p.css?ver=1.17.3' type='text/css' media='all' />
51<link rel='stylesheet' id='daily-newspaper-style-css' href='https://zaitcev.ru/wp-content/themes/newspaperly/style.css?ver=6.3.12' type='text/css' media='all' />
52<link rel='stylesheet' id='daily-newspaper-css' href='https://zaitcev.ru/wp-content/themes/daily-newspaper/style.css?ver=1.0' type='text/css' media='all' />
53<link rel='stylesheet' id='Inter-css' href='https://zaitcev.ru/wp-content/fonts/b411d43bb8ce49c1374c88219c4272b0.css?ver=1.0' type='text/css' media='all' />
54<link rel='stylesheet' id='font-awesome-css' href='https://zaitcev.ru/wp-content/themes/newspaperly/css/font-awesome.min.css?ver=6.3.12' type='text/css' media='all' />
55<link rel='stylesheet' id='newspaperly-style-css' href='https://zaitcev.ru/wp-content/themes/daily-newspaper/style.css?ver=6.3.12' type='text/css' media='all' />
56<link rel='stylesheet' id='newspaperly-google-fonts-css' href='//fonts.googleapis.com/css?family=Lato%3A300%2C400%2C700%2C900%7CMerriweather%3A400%2C700&#038;ver=6.3.12' type='text/css' media='all' />
57<script type='text/javascript' src='https://zaitcev.ru/wp-includes/js/jquery/jquery.min.js?ver=3.7.0' id='jquery-core-js'></script>
vendor: 1 bytes, line 57
57
58<script type='text/javascript' src='https://zaitcev.ru/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1' id='jquery-migrate-js'></script>
vendor: 1 bytes, line 58
58
59<script type='text/javascript' src='https://zaitcev.ru/wp-content/plugins/footnotes/class/../js/jquery.tools.min.js?ver=6.3.12' id='mci-footnotes-js-jquery-tools-js'></script>
59
60<link rel="https://api.w.org/" href="https://zaitcev.ru/wp-json/" /><link rel="alternate" type="application/json" href="https://zaitcev.ru/wp-json/wp/v2/pages/42667" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://zaitcev.ru/xmlrpc.php?rsd" />
61<meta name="generator" content="WordPress 6.3.12" />
62<link rel='shortlink' href='https://zaitcev.ru/?p=42667' />
63<link rel="alternate" type="application/json+oembed" href="https://zaitcev.ru/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fzaitcev.ru%2Feng-480%2F" />
64<link rel="alternate" type="text/xml+oembed" href="https://zaitcev.ru/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fzaitcev.ru%2Feng-480%2F&#038;format=xml" />
65<script type="text/javascript" src="/script/jscript3.js"></script>
65<script type="text/javascript">var wp_copy={tag:"",ex:0,url:"",nonce:"25694e9f60",ip:"181.215.65.66",save:,save_content:};</script>
65<!-- start Simple Custom CSS and JS -->
66<script type="text/javascript">
67if (window.location.pathname == '/power/')
68{
69
70oshibki = new Map();
71u = new SpeechSynthesisUtterance();
72u.lang = 'ru-RU';
73u.rate = 1;
74
75// ========== СЧЁТЧИКИ ДЛЯ СТАТИСТИКИ ==========
76let totalQuestions = 0;
77let correctAnswers = 0;
78let wrongAnswers = 0;
79
80// ========== ФУНКЦИЯ ДЛЯ ПРЕОБРАЗОВАНИЯ ЧИСЕЛ В СЛОВА ==========
81function numberToWords(num) {
82    // Обработка дробных чисел (вида 0,xxx)
83    if (typeof num === 'string' && num.includes(',')) {
84        return fractionToWords(num);
85    }
86    
87    // Очищаем строку от пробелов и преобразуем в число
88    let cleanNum = String(num).replace(/\s/g, '');
89    let number = parseInt(cleanNum);
90    
91    if (isNaN(number) || number < 0) return String(num);
92    if (number === 0) return 'ноль';
93    if (number === 1) return 'один';
94    
95    // Единицы
96    const units = ['', 'один', 'два', 'три', 'четыре', 'пять', 'шесть', 'семь', 'восемь', 'девять'];
97    const unitsFemale = ['', 'одна', 'две', 'три', 'четыре', 'пять', 'шесть', 'семь', 'восемь', 'девять'];
98    const teens = ['десять', 'одиннадцать', 'двенадцать', 'тринадцать', 'четырнадцать', 
99                   'пятнадцать', 'шестнадцать', 'семнадцать', 'восемнадцать', 'девятнадцать'];
100    const tens = ['', '', 'двадцать', 'тридцать', 'сорок', 'пятьдесят', 
101                  'шестьдесят', 'семьдесят', 'восемьдесят', 'девяносто'];
102    const hundreds = ['', 'сто', 'двести', 'триста', 'четыреста', 'пятьсот', 
103                      'шестьсот', 'семьсот', 'восемьсот', 'девятьсот'];
104    
105    // Классы (тысячи, миллионы, миллиарды и т.д.)
106    const classes = [
107        { name: '', divisor: 1, female: false },
108        { name: 'тысяча', divisor: 1000, female: true },
109        { name: 'миллион', divisor: 1000000, female: false },
110        { name: 'миллиард', divisor: 1000000000, female: false },
111        { name: 'триллион', divisor: 1000000000000, female: false },
112        { name: 'квадриллион', divisor: 1000000000000000, female: false },
113        { name: 'квинтиллион', divisor: 1000000000000000000, female: false },
114        { name: 'секстиллион', divisor: 1000000000000000000000, female: false },
115        { name: 'септиллион', divisor: 1000000000000000000000000, female: false },
116        { name: 'октиллион', divisor: 1000000000000000000000000000, female: false },
117        { name: 'нониллион', divisor: 1000000000000000000000000000000, female: false }
118    ];
119    
120    function convertChunk(n, female) {
121        let result = '';
122        if (n >= 100) {
123            result += hundreds[Math.floor(n / 100)] + ' ';
124            n %= 100;
125        }
126        if (n >= 20) {
127            result += tens[Math.floor(n / 10)] + ' ';
128            n %= 10;
129        }
130        if (n >= 10) {
131            result += teens[n - 10] + ' ';
132            n = 0;
133        }
134        if (n > 0) {
135            result += (female ? unitsFemale[n] : units[n]) + ' ';
136        }
137        return result.trim();
138    }
139    
140    function getClassWord(n, classInfo) {
141        if (n === 0) return '';
142        let name = classInfo.name;
143        if (!name) return '';
144        
145        // Склонение для тысяч
146        if (classInfo.female) {
147            if (n === 1) return 'тысяча';
148            if (n >= 2 && n <= 4) return 'тысячи';
149            return 'тысяч';
150        }
151        
152        // Склонение для миллионов, миллиардов и т.д.
153        if (n === 1) return name;
154        if (n >= 2 && n <= 4) return name + 'а';
155        return name + 'ов';
156    }
157    
158    let result = '';
159    let remaining = number;
160    let classIndex = 0;
161    
162    while (remaining > 0 && classIndex < classes.length) {
163        let chunk = remaining % 1000;
164        remaining = Math.floor(remaining / 1000);
165        
166        if (chunk > 0) {
167            let chunkStr = convertChunk(chunk, classes[classIndex].female);
168            let classWord = getClassWord(chunk, classes[classIndex]);
169            
170            if (classWord) {
171                chunkStr += ' ' + classWord;
172            }
173            
174            result = chunkStr + ' ' + result;
175        }
176        classIndex++;
177    }
178    
179    return result.trim();
180}
181
182// ========== ФУНКЦИЯ ДЛЯ ДРОБНЫХ ЧИСЕЛ ==========
183function fractionToWords(text) {
184    let result = text;
185    
186    // Словарь для дробей с правильным склонением
187    const fractionMap = [
188        // Единичные дроби (женский род)
189        { pattern: /0,000 000 000 000 000 000 000 000 001/g, word: 'одна септиллионная' },
190        { pattern: /0,000 000 000 000 000 000 000 000 01/g, word: 'десять септиллионных' },
191        { pattern: /0,000 000 000 000 000 000 000 000 1/g, word: 'сто септиллионных' },
192        { pattern: /0,000 000 000 000 000 000 000 001/g, word: 'одна секстиллионная' },
193        { pattern: /0,000 000 000 000 000 000 000 01/g, word: 'десять секстиллионных' },
194        { pattern: /0,000 000 000 000 000 000 000 1/g, word: 'сто секстиллионных' },
195        { pattern: /0,000 000 000 000 000 000 001/g, word: 'одна квинтиллионная' },
196        { pattern: /0,000 000 000 000 000 000 01/g, word: 'десять квинтиллионных' },
197        { pattern: /0,000 000 000 000 000 000 1/g, word: 'сто квинтиллионных' },
198        { pattern: /0,000 000 000 000 000 001/g, word: 'одна квадриллионная' },
199        { pattern: /0,000 000 000 000 000 01/g, word: 'десять квадриллионных' },
200        { pattern: /0,000 000 000 000 000 1/g, word: 'сто квадриллионных' },
201        { pattern: /0,000 000 000 000 001/g, word: 'одна триллионная' },
202        { pattern: /0,000 000 000 000 01/g, word: 'десять триллионных' },
203        { pattern: /0,000 000 000 000 1/g, word: 'сто триллионных' },
204        { pattern: /0,000 000 000 001/g, word: 'одна миллиардная' },
205        { pattern: /0,000 000 000 01/g, word: 'десять миллиардных' },
206        { pattern: /0,000 000 000 1/g, word: 'сто миллиардных' },
207        { pattern: /0,000 000 001/g, word: 'одна миллионная' },
208        { pattern: /0,000 000 01/g, word: 'десять миллионных' },
209        { pattern: /0,000 000 1/g, word: 'одна десятимиллионная' },
210        { pattern: /0,000 001/g, word: 'одна миллионная' },
211        { pattern: /0,000 01/g, word: 'одна стотысячная' },
212        { pattern: /0,000 1/g, word: 'одна десятитысячная' },
213        { pattern: /0,001/g, word: 'одна тысячная' },
214        { pattern: /0,01/g, word: 'одна сотая' },
215        { pattern: /0,1/g, word: 'одна десятая' },
216        
217        // Дроби с числителем 2 (женский род)
218        { pattern: /0,000 000 000 000 000 000 000 000 002/g, word: 'две септиллионных' },
219        { pattern: /0,000 000 000 000 000 000 000 000 02/g, word: 'двадцать септиллионных' },
220        { pattern: /0,000 000 000 000 000 000 000 000 2/g, word: 'двести септиллионных' },
221        { pattern: /0,000 000 000 000 000 000 000 002/g, word: 'две секстиллионных' },
222        { pattern: /0,000 000 000 000 000 000 000 02/g, word: 'двадцать секстиллионных' },
223        { pattern: /0,000 000 000 000 000 000 000 2/g, word: 'двести секстиллионных' },
224        { pattern: /0,000 000 000 000 000 000 002/g, word: 'две квинтиллионных' },
225        { pattern: /0,000 000 000 000 000 000 02/g, word: 'двадцать квинтиллионных' },
226        { pattern: /0,000 000 000 000 000 000 2/g, word: 'двести квинтиллионных' },
227        { pattern: /0,000 000 000 000 000 002/g, word: 'две квадриллионных' },
228        { pattern: /0,000 000 000 000 000 02/g, word: 'двадцать квадриллионных' },
229        { pattern: /0,000 000 000 000 000 2/g, word: 'двести квадриллионных' },
230        { pattern: /0,000 000 000 000 002/g, word: 'две триллионных' },
231        { pattern: /0,000 000 000 000 02/g, word: 'двадцать триллионных' },
232        { pattern: /0,000 000 000 000 2/g, word: 'двести триллионных' },
233        { pattern: /0,000 000 000 002/g, word: 'две миллиардных' },
234        { pattern: /0,000 000 000 02/g, word: 'двадцать миллиардных' },
235        { pattern: /0,000 000 000 2/g, word: 'двести миллиардных' },
236        { pattern: /0,000 000 002/g, word: 'две миллионных' },
237        { pattern: /0,000 000 02/g, word: 'двадцать миллионных' },
238        { pattern: /0,000 000 2/g, word: 'двести миллионных' },
239        { pattern: /0,000 002/g, word: 'две миллионных' },
240        { pattern: /0,000 02/g, word: 'две стотысячных' },
241        { pattern: /0,000 2/g, word: 'две десятитысячных' },
242        { pattern: /0,002/g, word: 'две тысячных' },
243        { pattern: /0,02/g, word: 'две сотых' },
244        { pattern: /0,2/g, word: 'две десятых' },
245        
246        // Дроби с числителем 3-4 (женский род)
247        { pattern: /0,000 000 000 000 000 000 000 000 003/g, word: 'три септиллионных' },
248        { pattern: /0,000 000 000 000 000 000 000 003/g, word: 'три секстиллионных' },
249        { pattern: /0,000 000 000 000 000 000 003/g, word: 'три квинтиллионных' },
250        { pattern: /0,000 000 000 000 000 003/g, word: 'три квадриллионных' },
251        { pattern: /0,000 000 000 000 003/g, word: 'три триллионных' },
252        { pattern: /0,000 000 000 003/g, word: 'три миллиардных' },
253        { pattern: /0,000 000 003/g, word: 'три миллионных' },
254        { pattern: /0,000 003/g, word: 'три миллионных' },
255        { pattern: /0,000 03/g, word: 'три стотысячных' },
256        { pattern: /0,000 3/g, word: 'три десятитысячных' },
257        { pattern: /0,003/g, word: 'три тысячных' },
258        { pattern: /0,03/g, word: 'три сотых' },
259        { pattern: /0,3/g, word: 'три десятых' },
260    ];
261    
262    for (let item of fractionMap) {
263        result = result.replace(item.pattern, item.word);
264    }
265    return result;
266}
267
268// ========== ФУНКЦИЯ ДЛЯ ПРЕОБРАЗОВАНИЯ ЧИСЕЛ В ТЕКСТЕ ==========
269function convertNumberToSpeech(text) {
270    let result = text;
271    
272    // Сначала обрабатываем дроби
273    result = fractionToWords(result);
274    
275    // Теперь обрабатываем целые числа
276    const numberRegex = /\b(\d{1,3}(?: \d{3})*|\d+)\b/g;
277    
278    result = result.replace(numberRegex, function(match) {
279        if (/[а-яА-Я]/.test(match)) return match;
280        return numberToWords(match);
281    });
282    
283    return result;
284}
285
286// ========== ФУНКЦИЯ ДЛЯ "10 в X" ==========
287function convertToSpeechFormat(text) {
288    let result = text;
289    
290    result = result.replace(/10 в (\-?\d+)/g, function(match, number) {
291        let numStr = numberToWords(number);
292        if (number.startsWith('-')) {
293            return 'десять в степени минус ' + numStr;
294        } else {
295            return 'десять в степени ' + numStr;
296        }
297    });
298    
299    result = convertNumberToSpeech(result);
300    
301    return result;
302}
303
304// ========== ФУНКЦИЯ ДЛЯ УДАЛЕНИЯ СКОБОК ==========
305function convertUnitsToSpeech(text) {
306    let result = text;
307    
308    result = result.replace(/\([^)]*\)/g, '');
309    result = result.replace(/\s+/g, ' ').trim();
310    result = result.replace(/в 1 /g, 'в одном ');
311    result = result.replace(/в 1\)/g, 'в одном)');
312    result = result.replace(/^Сколько (.*?) в 1 /, 'Сколько $1 в одном ');
313    result = result.replace(/ в 1 квадратном /g, ' в одном квадратном ');
314    result = result.replace(/ в 1 кубическом /g, ' в одном кубическом ');
315    
316    result = convertNumberToSpeech(result);
317    
318    result = result.replace(/\s+/g, ' ').trim();
319    
320    return result;
321}
322
323// ========== ФУНКЦИЯ ДЛЯ ПОЛУЧЕНИЯ ТЕКСТА ДЛЯ ОЗВУЧКИ ==========
324function getSpokenText(item, lang) {
325    let text;
326    
327    if (lang === 0) {
328        text = convertUnitsToSpeech(item[0]);
329    } else {
330        text = convertToSpeechFormat(item[1]);
331    }
332    
333    return text;
334}
335
336// ========== МАССИВ СЛОВ ==========
337const massiv_slov = [
338
339  ["0,000 000 000 000 000 000 000 000 001", "10 в -27"],
340  ["0,000 000 000 000 000 000 000 000 01",  "10 в -26"],
341  ["0,000 000 000 000 000 000 000 000 1",   "10 в -25"],
342  ["0,000 000 000 000 000 000 000 001",     "10 в -24"],
343  ["0,000 000 000 000 000 000 000 01",      "10 в -23"],
344  ["0,000 000 000 000 000 000 000 1",       "10 в -22"],
345  ["0,000 000 000 000 000 000 001",         "10 в -21"],
346  ["0,000 000 000 000 000 000 01",          "10 в -20"],
347  ["0,000 000 000 000 000 000 1",           "10 в -19"],
348  ["0,000 000 000 000 000 001",             "10 в -18"],
349  ["0,000 000 000 000 000 01",              "10 в -17"],
350  ["0,000 000 000 000 000 1",               "10 в -16"],
351  ["0,000 000 000 000 001",                 "10 в -15"],
352  ["0,000 000 000 000 01",                  "10 в -14"],
353  ["0,000 000 000 000 1",                   "10 в -13"],
354  ["0,000 000 000 001",                     "10 в -12"],
355  ["0,000 000 000 01",                      "10 в -11"],
356  ["0,000 000 000 1",                       "10 в -10"],
357  ["0,000 000 001",                         "10 в -9"],
358  ["0,000 000 01",                          "10 в -8"],
359  ["0,000 000 1",                           "10 в -7"],
360  ["0,000 001",                             "10 в -6"],
361  ["0,000 01",                              "10 в -5"],
362  ["0,000 1",                               "10 в -4"],
363  ["0,001",                                 "10 в -3"],
364  ["0,01",                                  "10 в -2"],
365  ["0,1",                                   "10 в -1"],
366  
367  ["1",                                     "10 в 0"],
368  
369  ["10",                                    "10 в 1"],
370  ["100",                                   "10 в 2"],
371  ["1 000",                                 "10 в 3"],
372  ["10 000",                                "10 в 4"],
373  ["100 000",                               "10 в 5"],
374  ["1 000 000",                             "10 в 6"],
375  ["10 000 000",                            "10 в 7"],
376  ["100 000 000",                           "10 в 8"],
377  ["1 000 000 000",                         "10 в 9"],
378  ["10 000 000 000",                        "10 в 10"],
379  ["11 000 000 000",                        "10 в 11"],
380  ["1 000 000 000 000",                     "10 в 12"],
381  ["10 000 000 000 000",                    "10 в 13"],
382  ["100 000 000 000 000",                   "10 в 14"],
383  ["1 000 000 000 000 000",                 "10 в 15"],
384  ["10 000 000 000 000 000",                "10 в 16"],
385  ["100 000 000 000 000 000",               "10 в 17"],
386  ["1 000 000 000 000 000 000",             "10 в 18"],
387  ["10 000 000 000 000 000 000",            "10 в 19"],
388  ["100 000 000 000 000 000 000",           "10 в 20"],
389  ["1 000 000 000 000 000 000 000",         "10 в 21"],
390  ["10 000 000 000 000 000 000 000",        "10 в 22"],
391  ["100 000 000 000 000 000 000 000",       "10 в 23"],
392  ["1 000 000 000 000 000 000 000 000",     "10 в 24"],
393  ["10 000 000 000 000 000 000 000 000",    "10 в 25"],
394  ["100 000 000 000 000 000 000 000 000",   "10 в 26"],
395  ["1 000 000 000 000 000 000 000 000 000", "10 в 27"]
396];
397
398let words_count = massiv_slov.length;
399
400	
401loop = 1;
402while (loop == 1) {
403
404    // Сбрасываем счётчики при новом круге
405    totalQuestions = 0;
406    correctAnswers = 0;
407    wrongAnswers = 0;
408
409	result = "Слова для работы над ошибками";
410	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
411	alert(result);
412
413	const lang = 0;
414
415    async function delayedFunction() {
416        await new Promise(resolve => setTimeout(resolve, 1000));
417    }
418
419    //перемешивание слов
420    prime_sum_slov = massiv_slov.length;
421
422    for (j = 0; j < prime_sum_slov; j++) {
423        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
424        temp = massiv_slov[r];
425        massiv_slov[r] = massiv_slov[j];
426        massiv_slov[j] = temp;
427    }
428
429    // перебор массива слов
430    sum_slov = 0;
431    for (index = 0; index < massiv_slov.length; index++) {
432        sum_slov = sum_slov + 1;
433        totalQuestions++;
434        
435        // произношение - используем функцию getSpokenText
436        u.text = getSpokenText(massiv_slov[index], lang);
437        delayedFunction();
438        u.rate = 1;
439        speechSynthesis.speak(u);
440
441        // ========== ФОРМИРУЕМ ЗАГОЛОВОК ДЛЯ ОКНА PROMPT ==========
442        let header = "═══════════════════════════════════════\n";
443        header += "    Вопрос #" + totalQuestions + " из " + massiv_slov.length + "\n";
444        header += "    ✅ Правильно: " + correctAnswers + "  |  ❌ Неправильно: " + wrongAnswers + "\n";
445        header += "═══════════════════════════════════════\n\n";
446        
447        // ввод что было сказано
448        test = prompt(header + massiv_slov[index][lang]);
449        if (test === null) {
450            massiv_slov[massiv_slov.length] = massiv_slov[index];
451            x = oshibki.get(massiv_slov[index]);
452            if (x == null) { x = 0; }
453            x++;
454            oshibki.set(massiv_slov[index], x);
455            break;
456        }
457
458        // проверка
459        if (massiv_slov[index][(lang + 1) % 2] !== test) {
460            wrongAnswers++;
461            
462            u.text = 'Неправильно!     Правильный ответ       ';
463            delayedFunction();
464            speechSynthesis.speak(u);
465
466            u.text = convertToSpeechFormat(massiv_slov[index][(lang + 1) % 2]);
467            delayedFunction();
468            speechSynthesis.speak(u);
469            
470            alert("Ошибка Вы написали\n\"" + test + "\".       Правильный ответ      \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
471            );
472
473            massiv_slov[massiv_slov.length] = massiv_slov[index];
474            x = oshibki.get(massiv_slov[index]);
475            if (x == null) { x = 0; }
476            x++;
477            oshibki.set(massiv_slov[index], x);
478        }
479        else {
480            correctAnswers++;
481            
482            u.text = 'Хорошо!     ';
483            if (lang == 0) {
484                u.text = u.text + test;
485            }
486            u.text = u.text + '    это правильный ответ!';
487            delayedFunction();
488            speechSynthesis.speak(u);
489
490            alert("Хорошо!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
491            );
492        }
493    }
494    
495    // ========== ВЫВОД ИТОГОВОЙ СТАТИСТИКИ ==========
496    let summary = "═══════════════════════════════════════\n";
497    summary += "        📊 ИТОГОВАЯ СТАТИСТИКА\n";
498    summary += "═══════════════════════════════════════\n";
499    summary += "   Всего вопросов: " + totalQuestions + "\n";
500    summary += "   ✅ Правильных: " + correctAnswers + "\n";
501    summary += "   ❌ Неправильных: " + wrongAnswers + "\n";
502    summary += "   🎯 Процент успеха: " + Math.round((correctAnswers / totalQuestions) * 100) + "%\n";
503    summary += "═══════════════════════════════════════\n";
504    alert(summary);
505    
506    //вывод ошибок
507	let now = new Date();
508    otchet0 = '';
509    otchet = '';
510    otchet = "        \nПо списку слов для работы над ошибками \nсостоящиму из " + words_count + " слов, \nбыло задано " + sum_slov +
511        " вопросов,\n в направлении " +
512        lang1+"\n"
513        + now.toString()
514		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
515
516    for (pair of oshibki.entries()) {
517        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
518        otchet0 = otchet0 + `${pair[0]}\n`;
519    }
520
521    alert(otchet);
522    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
523
524    alert(otchet0);
525    oshibki.clear()
526    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
527}
528}</script>
528
529<!-- end Simple Custom CSS and JS -->
530<!-- start Simple Custom CSS and JS -->
531<script type="text/javascript">
532if (window.location.pathname == '/si/')
533{
534
535oshibki = new Map();
536u = new SpeechSynthesisUtterance();
537u.lang = 'ru-RU';
538u.rate = 1;
539
540// Функция для преобразования формата "10 в X" в "десять в степени X" для произношения
541function convertToSpeechFormat(text) {
542    // Заменяем "10 в -9" на "десять в степени минус 9"
543    // и "10 в 9" на "десять в степени 9"
544    let result = text.replace(/10 в (\-?\d+)/g, function(match, number) {
545        // Если число отрицательное, добавляем "минус"
546        if (number.startsWith('-')) {
547            return 'десять в степени минус ' + number.substring(1);
548        } else {
549            return 'десять в степени ' + number;
550        }
551    });
552    
553    // Дополнительная обработка для чисел, которые могли не попасть под первое правило
554    result = result.replace(/10 в 1/g, 'десять в степени 1');
555    result = result.replace(/10 в 2/g, 'десять в степени 2');
556    result = result.replace(/10 в 3/g, 'десять в степени 3');
557    result = result.replace(/10 в 4/g, 'десять в степени 4');
558    result = result.replace(/10 в 6/g, 'десять в степени 6');
559    result = result.replace(/10 в 9/g, 'десять в степени 9');
560    result = result.replace(/10 в 12/g, 'десять в степени 12');
561    result = result.replace(/10 в 18/g, 'десять в степени 18');
562    result = result.replace(/10 в 27/g, 'десять в степени 27');
563    
564    // Отрицательные степени
565    result = result.replace(/10 в -1/g, 'десять в степени минус 1');
566    result = result.replace(/10 в -2/g, 'десять в степени минус 2');
567    result = result.replace(/10 в -3/g, 'десять в степени минус 3');
568    result = result.replace(/10 в -4/g, 'десять в степени минус 4');
569    result = result.replace(/10 в -6/g, 'десять в степени минус 6');
570    result = result.replace(/10 в -9/g, 'десять в степени минус 9');
571    result = result.replace(/10 в -12/g, 'десять в степени минус 12');
572    result = result.replace(/10 в -18/g, 'десять в степени минус 18');
573    result = result.replace(/10 в -27/g, 'десять в степени минус 27');
574    
575    return result;
576}
577
578// Функция для удаления сокращений в скобках и преобразования текста
579function convertUnitsToSpeech(text) {
580    let result = text;
581    
582    // Удаляем всё, что в скобках (включая сами скобки)
583    result = result.replace(/\([^)]*\)/g, '');
584    
585    // Убираем лишние пробелы
586    result = result.replace(/\s+/g, ' ').trim();
587    
588    // Заменяем "в 1" на "в одном" для более естественного звучания
589    result = result.replace(/в 1 /g, 'в одном ');
590    result = result.replace(/в 1\)/g, 'в одном)');
591    
592    // Заменяем "1" на "один" в вопросах
593    result = result.replace(/^Сколько (.*?) в 1 /, 'Сколько $1 в одном ');
594    result = result.replace(/ в 1 квадратном /g, ' в одном квадратном ');
595    result = result.replace(/ в 1 кубическом /g, ' в одном кубическом ');
596    
597    // Заменяем "квадратных" на "квадратных" (оставляем как есть)
598    // Заменяем "кубических" на "кубических" (оставляем как есть)
599    
600    // Дополнительная чистка: убираем двойные пробелы
601    result = result.replace(/\s+/g, ' ').trim();
602    
603    return result;
604}
605
606// Функция для получения текста для произношения
607function getSpokenText(item, lang) {
608    let text;
609    
610    // Если lang = 0 (вопрос) - произносим вопрос без сокращений в скобках
611    if (lang === 0) {
612        text = convertUnitsToSpeech(item[0]);
613    }
614    // Если lang = 1 (ответ) - произносим ответ с преобразованием в "десять в степени X"
615    else {
616        text = convertToSpeechFormat(item[1]);
617    }
618    
619    return text;
620}
621
622const massiv_slov  = [
623["Сколько нанометров (нм) в 1 метре?", "10 в 9"],
624["Сколько микрометров (мкм) в 1 метре?", "10 в 6"],
625["Сколько миллиметров (мм) в 1 метре?", "10 в 3"],
626["Сколько сантиметров (см) в 1 метре?", "10 в 2"],
627["Сколько дециметров (дм) в 1 метре?", "10 в 1"],
628["Сколько километров (км) в 1 метре?", "10 в -3"],
629["Сколько метров (м) в 1 нанометре?", "10 в -9"],
630["Сколько метров (м) в 1 микрометре?", "10 в -6"],
631["Сколько метров (м) в 1 миллиметре?", "10 в -3"],
632["Сколько метров (м) в 1 сантиметре?", "10 в -2"],
633["Сколько метров (м) в 1 дециметре?", "10 в -1"],
634["Сколько метров (м) в 1 километре?", "10 в 3"],
635["Сколько квадратных нанометров (нм²) в 1 квадратном метре?", "10 в 18"],
636["Сколько квадратных микрометров (мкм²) в 1 квадратном метре?", "10 в 12"],
637["Сколько квадратных миллиметров (мм²) в 1 квадратном метре?", "10 в 6"],
638["Сколько квадратных сантиметров (см²) в 1 квадратном метре?", "10 в 4"],
639["Сколько квадратных дециметров (дм²) в 1 квадратном метре?", "10 в 2"],
640["Сколько квадратных километров (км²) в 1 квадратном метре?", "10 в -6"],
641["Сколько гектаров (га) в 1 квадратном метре?", "10 в -4"],
642["Сколько квадратных метров (м²) в 1 квадратном нанометре?", "10 в -18"],
643["Сколько квадратных метров (м²) в 1 квадратном микрометре?", "10 в -12"],
644["Сколько квадратных метров (м²) в 1 квадратном миллиметре?", "10 в -6"],
645["Сколько квадратных метров (м²) в 1 квадратном сантиметре?", "10 в -4"],
646["Сколько квадратных метров (м²) в 1 квадратном дециметре?", "10 в -2"],
647["Сколько квадратных метров (м²) в 1 квадратном километре?", "10 в 6"],
648["Сколько квадратных метров (м²) в 1 гектаре?", "10 в 4"],
649["Сколько кубических нанометров (нм³) в 1 кубическом метре?", "10 в 27"],
650["Сколько кубических микрометров (мкм³) в 1 кубическом метре?", "10 в 18"],
651["Сколько кубических миллиметров (мм³) в 1 кубическом метре?", "10 в 9"],
652["Сколько кубических сантиметров (см³) в 1 кубическом метре?", "10 в 6"],
653["Сколько кубических дециметров (дм³) в 1 кубическом метре?", "10 в 3"],
654["Сколько кубических километров (км³) в 1 кубическом метре?", "10 в -9"],
655["Сколько кубических метров (м³) в 1 кубическом нанометре?", "10 в -27"],
656["Сколько кубических метров (м³) в 1 кубическом микрометре?", "10 в -18"],
657["Сколько кубических метров (м³) в 1 кубическом миллиметре?", "10 в -9"],
658["Сколько кубических метров (м³) в 1 кубическом сантиметре?", "10 в -6"],
659["Сколько кубических метров (м³) в 1 кубическом дециметре?", "10 в -3"],
660["Сколько кубических метров (м³) в 1 кубическом километре?", "10 в 9"]
661];
662
663let words_count = massiv_slov.length;
664
665	
666loop = 1;
667while (loop == 1) {
668
669	result = "Слова для работы над ошибками";
670	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
671	alert(result);
672
673    // Вариант направления перевода
674 //   const prime_lang = prompt("Выбирите направление перевода единиц\n0 - прямой\n1 - обратный", "0");
675 //   const lang = prime_lang == 0 ? 0 : 1;
676	const lang = 0;
677
678    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
679    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
680
681    async function delayedFunction() {
682        await new Promise(resolve => setTimeout(resolve, 1000));
683    }
684
685    //перемешивание слов
686    prime_sum_slov = massiv_slov.length;
687
688    for (j = 0; j < prime_sum_slov; j++) {
689        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
690        temp = massiv_slov[r];
691        massiv_slov[r] = massiv_slov[j];
692        massiv_slov[j] = temp;
693    }
694    //проверка перемешивания слов
695    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
696    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
697
698    // перебор массива слов
699    sum_slov = 0;
700    for (index = 0; index < massiv_slov.length; index++) {
701        sum_slov = sum_slov + 1;
702        
703        // произношение - используем функцию getSpokenText
704        u.text = getSpokenText(massiv_slov[index], lang);
705        delayedFunction();
706        u.rate = 1;
707        speechSynthesis.speak(u);
708
709        // ввод что было сказано - показываем вопрос с ответом в формате "10 в X"
710        test = prompt(massiv_slov[index][lang]);
711        if (test === null) {
712            massiv_slov[massiv_slov.length] = massiv_slov[index];
713            x = oshibki.get(massiv_slov[index]);
714            if (x == null) { x = 0; }
715            x++;
716            oshibki.set(massiv_slov[index], x);
717            break;
718        }
719        //	u.lang = 'en-UK';
720        //	u.text = massiv_slov[index][1];
721        //	speechSynthesis.speak(u);  
722
723        // проверка того что было сказано - сравниваем в формате "10 в X"
724        if (massiv_slov[index][(lang + 1) % 2] !== test) {
725            u.text = 'Неправильно!     Правильный ответ       ';
726            delayedFunction();
727            speechSynthesis.speak(u);
728
729            // Произносим правильный ответ с преобразованием в "десять в степени X"
730            u.text = convertToSpeechFormat(massiv_slov[index][(lang + 1) % 2]);
731            delayedFunction();
732            speechSynthesis.speak(u);
733            
734            alert("Ошибка Вы написали\n\"" + test + "\".       Правильный ответ      \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
735            );
736
737            massiv_slov[massiv_slov.length] = massiv_slov[index];
738            x = oshibki.get(massiv_slov[index]);
739            if (x == null) { x = 0; }
740            x++;
741            //alert ("x="+x);
742            oshibki.set(massiv_slov[index], x);
743        }
744        else {
745            u.text = 'Хорошо!     ';
746            if (lang == 0) {
747                u.text = u.text + test;
748            }
749            u.text = u.text + '    это правильный ответ!';
750            delayedFunction();
751            speechSynthesis.speak(u);
752
753            alert("Хорошо!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
754            );
755        }
756    }
757    //вывод ошибок
758		let now = new Date();
759    otchet0 = '';
760    otchet = '';
761    otchet = "        \nПо списку слов для работы над ошибками \nсостоящиму из " + words_count + " слов, \nбыло задано " + sum_slov +
762        " вопросов,\n в направлении " +
763        lang1+"\n"
764        + now.toString()
765		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
766
767
768
769    for (pair of oshibki.entries()) {
770        // pair - это массив [key, values]
771        //alert(pair[0]); // ключ
772        //alert(pair[1]); // значение
773        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
774        otchet0 = otchet0 + `${pair[0]}\n`;
775
776        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
777    }
778
779    alert(otchet);
780    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
781
782    alert(otchet0);
783    oshibki.clear()
784    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
785}
786}</script>
786
787<!-- end Simple Custom CSS and JS -->
788<!-- start Simple Custom CSS and JS -->
789<script type="text/javascript">
790if (window.location.pathname == '/fr/')
791{
792let nw=10;
793oshibki = new Map();
794u = new SpeechSynthesisUtterance();
795u.rate = 1;
796
797const set_of_words = [
798    // Unité 1 / Premier contact
799    ["Привет!", "Salut!"],
800    ["Здравствуйте!", "Bonjour!"],
801    ["Спасибо.", "Merci."],
802    ["До свидания", "Au revoir"],
803    ["Как дела?", "Ça va?"],
804    ["Да", "Oui"],
805    ["Нет", "Non"],
806    ["Меня зовут...", "Je m'appelle..."],
807    ["Мальчик", "Un garçon"],
808    ["Девочка", "Une fille"],
809    ["Друг / Подруга", "Un copain / Une copine"],
810    ["Цифра", "Un chiffre"],
811    ["Один, два, три...", "Un, deux, trois..."],
812
813    // Unité 2: Знакомство, школа
814    ["Я живу в...", "J'habite à..."],
815    ["Мне ... лет.", "J'ai ... ans."],
816    ["Школа", "Une école"],
817    ["Класс (комната)", "Une salle de classe"],
818    ["Учитель / Учительница", "Un professeur / Une prof"],
819    ["Ученик", "Un élève"],
820    ["Тетрадь", "Un cahier"],
821    ["Книга", "Un livre"],
822    ["Ручка", "Un stylo"],
823    ["Карандаш", "Un crayon"],
824    ["Ластик", "Une gomme"],
825    ["Линейка", "Une règle"],
826    ["Пенал", "Une trousse"],
827    ["Кто это?", "Qui est-ce?"],
828    ["Это...", "C'est..."],
829    ["Что это?", "Qu'est-ce que c'est?"],
830    ["Вот...", "Voici..."],
831
832    // Unité 3: Семья, цвета
833    ["Семья", "Une famille"],
834    ["Отец (папа)", "Un père (papa)"],
835    ["Мать (мама)", "Une mère (maman)"],
836    ["Брат", "Un frère"],
837    ["Сестра", "Une sœur"],
838    ["Кот", "Un chat"],
839    ["Собака", "Un chien"],
840    ["Он... / Она...", "Il est... / Elle est..."],
841    ["Большой/ая, высокий/ая", "Grand(e)"],
842    ["Маленький/ая", "Petit(e)"],
843    ["Симпатичный, приятный", "Sympa"],
844    ["Цвета", "Les couleurs"],
845    ["Красный, желтый, синий", "Rouge, jaune, bleu"],
846
847    // Unité 4: Дом, комната
848    ["Дом", "Une maison"],
849    ["Квартира", "Un appartement"],
850    ["Комната (спальня)", "Une chambre"],
851    ["Кухня", "Une cuisine"],
852    ["Гостиная", "Un salon"],
853    ["Ванная", "Une salle de bains"],
854    ["Кровать", "Un lit"],
855    ["Стол", "Une table"],
856    ["Стул", "Une chaise"],
857    ["Шкаф", "Une armoire"],
858    ["Дверь", "Une porte"],
859    ["Окно", "Une fenêtre"],
860    ["Где...?", "Où est...?"],
861    ["Есть, имеется", "Il y a..."],
862
863    // Unité 5: Еда, напитки
864    ["Я люблю...", "J'aime..."],
865    ["Я не люблю...", "Je n'aime pas..."],
866    ["Есть, кушать", "Manger"],
867    ["Пить", "Boire"],
868    ["Завтрак", "Le petit déjeuner"],
869    ["Круассан", "Un croissant"],
870    ["Багет", "Une baguette"],
871    ["Молоко", "Du lait"],
872    ["Апельсиновый сок", "Du jus d'orange"],
873    ["Фрукт", "Un fruit"],
874    ["Яблоко", "Une pomme"],
875    ["Банан", "Une banane"],
876    ["Вода", "De l'eau"],
877    ["Вкусный/ая, хороший/ая", "Bon / Bonne"],
878
879    // Unité 6: Время, распорядок дня
880    ["Который час?", "Quelle heure est-il?"],
881    ["Сейчас ... часов.", "Il est ... heures"],
882    ["Утро", "Le matin"],
883    ["День (после полудня)", "L'après-midi"],
884    ["Вечер", "Le soir"],
885    ["Я встаю", "Je me lève"],
886    ["Я иду в школу", "Je vais à l'école"],
887    ["Я делаю уроки", "Je fais mes devoirs"],
888    ["Я смотрю телевизор", "Je regarde la télé"],
889    ["Я сплю", "Je dors"],
890    ["Дни недели", "Les jours de la semaine"],
891
892    // Unité 7: Хобби, погода
893    ["Что ты любишь делать?", "Qu'est-ce que tu aimes faire?"],
894    ["танцевать", "danser"],
895    ["петь", "chanter"],
896    ["слушать музыку", "écouter de la musique"],
897    ["читать", "lire"],
898    ["рисовать", "dessiner"],
899    ["играть в футбол", "jouer au football"],
900    ["Хорошая погода", "Il fait beau"],
901    ["Холодно", "Il fait froid"],
902    ["Жарко", "Il fait chaud"],
903    ["Идет дождь", "Il pleut"],
904    ["Идет снег", "Il neige"]
905]
906
907let words_count = set_of_words.length;
908
909let words_10 = Math.floor(words_count / nw);
910if(nw*words_10 != words_count)	{
911	words_10=words_10+1;
912}
913let choise=words_10;
914let	name = "Алеша";
915name=prompt("Как вас зовут", name);
916	
917loop = 1;
918while (loop == 1) {
919
920	let date = new Date(2026, 0, 13); // 12 января 2026
921	date.setHours(0, 0, 0, 0);
922
923
924// plan_date будет вычисляться позже
925let plan_date = new Date(2026, 0, 13); // Используем base_date вместо текущей даты
926	plan_date.setHours(0, 0, 0, 0);
927
928	
929	const current_date = new Date();// Текущая дата на начало суток
930	current_date.setHours(0, 0, 0, 0);
931	date2 = current_date.toLocaleDateString();
932	
933	let zap = "";
934
935	for (let i = 1; i <= words_10; i++) {
936		zap = zap +
937			String(i).padStart(3) + ":    " +
938			String(nw * (words_10 - i)+1).padStart(3) + "-" +
939			(nw * (1 + words_10 - i)) + "   " +
940			date.toLocaleDateString() + "\n";
941		
942		date1 = date.toLocaleDateString();
943
944		if (date1 == date2) {
945			choise = i;
946		};
947
948		date.setDate(date.getDate() + 1);
949		date.setHours(0, 0, 0, 0);
950	}
951
952	choise = prompt(zap, choise);
953	
954
955
956plan_date.setDate(plan_date.getDate() + parseInt(choise) - 1); // -1 если нужно смещение
957plan_date.setHours(0, 0, 0, 0);
958		let aa=plan_date.toLocaleDateString('ru-RU');
959	
960	const massiv_slov = set_of_words.slice(nw * (words_10 - choise), nw * (1 + words_10 - choise));
961	result = "";
962	result = result + `выбраный диапазон: ${nw * (words_10 - choise)+1}-${nw * (1 + words_10 - choise) } ${aa}\n\n`;
963
964	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
965	alert(result);
966
967
968
969    // Вариант направления перевода
970    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на французский\n1 - с французского на русский", "0");
971    const lang = prime_lang == 0 ? 0 : 1;
972
973    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
974    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
975
976    async function delayedFunction() {
977        await new Promise(resolve => setTimeout(resolve, 1000));
978    }
979
980    //перемешивание слов
981    prime_sum_slov = massiv_slov.length;
982
983    for (j = 0; j < prime_sum_slov; j++) {
984        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
985        temp = massiv_slov[r];
986        massiv_slov[r] = massiv_slov[j];
987        massiv_slov[j] = temp;
988    }
989    //проверка перемешивания словundefined
990    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
991    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
992
993    // перебор массива слов
994    sum_slov = 0;
995    for (index = 0; index < massiv_slov.length; index++) {
996        sum_slov = sum_slov + 1;
997        // произношение
998
999        u.lang = lang == 0 ? 'ru-RU' : 'fr';
1000        u.text = massiv_slov[index][lang];
1001        delayedFunction();
1002        u.rate = 1;
1003        speechSynthesis.speak(u);
1004
1005        // ввод что было сказано 
1006        u.lang = lang != 0 ? 'ru-RU' : 'fr';
1007        test = prompt(massiv_slov[index][lang]);
1008        if (test === null) {
1009            massiv_slov[massiv_slov.length] = massiv_slov[index];
1010            x = oshibki.get(massiv_slov[index]);
1011            if (x == null) { x = 0; }
1012            x++;
1013            oshibki.set(massiv_slov[index], x);
1014            break;
1015        }
1016        //	u.lang = 'fr-FR';
1017        //	u.text = massiv_slov[index][1];
1018        //	speechSynthesis.speak(u);  
1019
1020        // проверка того что было сказано
1021        if (massiv_slov[index][(lang + 1) % 2] !== test) {
1022            u.lang = 'fr-FR';
1023            u.text = 'Faux! La bonne réponse est       ';
1024            delayedFunction();
1025            speechSynthesis.speak(u);
1026
1027            u.lang = lang != 0 ? 'ru-RU' : 'fr';
1028            u.text = massiv_slov[index][(lang + 1) % 2];
1029            delayedFunction();
1030            speechSynthesis.speak(u);
1031            alert("Erreur! Tu as écrit\n\"" + test + "\".       La bonne réponse est       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
1032            );
1033
1034            massiv_slov[massiv_slov.length] = massiv_slov[index];
1035            x = oshibki.get(massiv_slov[index]);
1036            if (x == null) { x = 0; }
1037            x++;
1038            //alert ("x="+x);
1039            oshibki.set(massiv_slov[index], x);
1040        }
1041        else {
1042            u.lang = 'fr';
1043            u.text = 'Très bien!     ';
1044            if (lang == 0) {
1045                u.text = u.text + test;
1046            }
1047            u.text = u.text + '    est la bonne réponse!';
1048            delayedFunction();
1049            speechSynthesis.speak(u);
1050
1051            alert("Très bien!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
1052            );
1053        }
1054    }
1055    //вывод ошибок
1056		let now = new Date();
1057    otchet0 = '';
1058    otchet = '';
1059
1060    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
1061    otchet = name+"\nПо диапазону \""  + (nw * (words_10 - choise)+1)+"-" + nw * (1 + words_10 - choise)+
1062         "\" за "+ aa +"\nсостоящиму из "+nw+" слов, \nбыло задано " + sum_slov +//"+ plan_date +"
1063        " вопросов,\n в направлении " +
1064        lang1+"\n"
1065        + now.toString()
1066		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
1067
1068
1069
1070    for (pair of oshibki.entries()) {
1071        // pair - это массив [key, values]
1072        //alert(pair[0]); // ключ
1073        //alert(pair[1]); // значение
1074        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
1075        otchet0 = otchet0 + `${pair[0]}\n`;
1076
1077        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
1078    }
1079
1080    alert(otchet);
1081    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
1082
1083    alert(otchet0);
1084    oshibki.clear()
1085    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
1086}
1087}</script>
1087
1088<!-- end Simple Custom CSS and JS -->
1089<!-- start Simple Custom CSS and JS -->
1090<script type="text/javascript">
1091if (window.location.pathname == '/mesyats-240/')
1092{
1093let nw=240;
1094oshibki = new Map();
1095u = new SpeechSynthesisUtterance();
1096u.rate = 1;
1097
1098const set_of_words = [
1099       	["миллиард", "billion"], // 1
1100		["мост", "bridge"], // 2
1101		["Не стоит благодарности.", "Don't mention it."], // 3
1102		["Как дела?", "How do you do?"], // 4
1103		["миллион", "million"], // 5
1104		["лестница", "stairs"], // 6
1105		["тысяча", "thousand"], // 7
1106		["туннель", "tunnel"], // 8
1107		["кондиционер", "air conditioner"], // 9
1108		["тумбочка", "bedside table"], // 10
1109		["нижний ярус кровати", "the bottom bed"], // 11
1110		["двухъярусная кровать", "bunk beds"], // 12
1111		["нести", "carry"], // 13 - ПЕРВОЕ carry
1112		["изменить", "change"], // 14
1113		["комод", "chest of drawers"], // 15
1114		["занавес", "curtain"], // 16
1115		["украшать", "decorate"], // 17
1116		["приветствие", "greetings"], // 18
1117		["Это выглядит фантастически!", "It looks fantastic!"], // 19
1118		["коврик", "mat"], // 20
1119		["MP3-плеер", "MP3 player"], // 21
1120		["Приятно познакомиться!", "Nice to meet you!"], // 22
1121		["нажимать", "press"], // 23
1122		["поднимать", "put up"], // 24
1123		["поднимать занавес", "put up the curtains"], // 25
1124		["вполне готов", "quite ready"], // 26
1125		["полки", "shelves"], // 27
1126		["отдыхать", "take a break"], // 28
1127		["хотя", "though"], // 29
1128		["верхний ярус кровати", "the top bed"], // 30
1129		["включить", "turn on"], // 31
1130		["близнецы", "twins"], // 32
1131		["наконец", "at last"], // 33
1132		["готовить", "cook"], // 34
1133		["украшение", "decoration"], // 35
1134		["гладить", "do the ironing"], // 36
1135		["пылесосить", "do the vacuuming"], // 37
1136		["мыть посуду", "do the washing-up"], // 38
1137		["наряжаться", "dress up"], // 39
1138		["стереть пыль с мебели", "dust the furniture"], // 40
1139		["забывать", "forget"], // 41
1140		["наверняка", "for sure"], // 42
1141		["гламурный", "glamorous"], // 43
1142		["тренироваться", "get some exercise"], // 44
1143		["ходить по магазинам", "go shopping"], // 45
1144		["проводить встречу, собрание", "have a meeting"], // 46
1145		["Я на диете.", "I'm on a diet."], // 47
1146		["Могу поспорить.", "I bet"], // 48
1147		["приглашение", "invitation"], // 49
1148		["заправлять кровать", "make the beds"], // 50
1149		["матч", "match"], // 51
1150		["мыть пол", "mop the floor"], // 52
1151		["ремонтник", "repairman"], // 53
1152		["безалкогольные напитки", "soft drinks"], // 54
1153		["спортивный", "sporty"], // 55
1154		["отключить", "switch off"], // 56
1155		["тематическая вечеринка", "theme party"], // 57
1156		["А что я?", "What about me?"], // 58
1157		["работать допоздна", "work late"], // 59
1158		["до тех пор, как", "as long as"], // 60
1159		["коллекционировать комиксы", "collect comics"], // 61
1160		["не против", "don't mind"], // 62
1161		["скачивать музыку", "download music"], // 63
1162		["получить информацию", "get information"], // 64
1163		["остаться на ночь", "go to a sleepover"], // 65
1164		["болтаться, проводить время", "hang out"], // 66
1165		["получать удовольствие", "have fun"], // 67
1166		["честный", "honest"], // 68
1167		["информация", "information"], // 69
1168		["возражать", "mind"], // 70
1169		["самостоятельно", "on my own"], // 71
1170		["общительный", "outgoing"], // 72
1171		["играть в спортивные игры", "play sports"], // 73
1172		["популярный", "popular"], // 74
1173		["предпочитать", "prefer"], // 75 - ПЕРВОЕ prefer
1174		["тихий", "quiet"], // 76
1175		["тест", "quiz"], // 77
1176		["читать журналы", "read magazines"], // 78
1177		["надёжный", "reliable"], // 79
1178		["отправлять текстовые сообщения", "send text messages"], // 80
1179		["общительный", "sociable"], // 81
1180		["искать информацию в интернете", "surf the Net"], // 82
1181		["приключение", "adventure"], // 83
1182		["бить", "beat"], // 84
1183		["пчела", "bee"], // 85
1184		["начинать", "begin"], // 86
1185		["герой книги, фильма", "character"], // 87
1186		["погоня", "chase"], // 88
1187		["соревноваться", "compete"], // 89
1188		["противоположный", "contrasting"], // 90
1189		["коридор", "corridor"], // 91
1190		["быть без ума от", "crazy about"], // 92
1191		["создавать", "create"], // 93
1192		["одеваться", "dress"], // 94
1193		["враг", "enemy"], // 95
1194		["исследовать", "explore"], // 96
1195		["фэнтези (жанр игр, книг)", "fantasy"], // 97
1196		["драться", "fight"], // 98
1197		["плыть", "float"], // 99
1198		["галактика", "galaxy"], // 100
1199		["присоединиться к", "join"], // 101
1200		["спрыгнуть", "jump off"], // 102
1201		["похитить", "kidnap"], // 103
1202		["должен петь", "must sing"], // 104
1203		["окрестности", "neighbourhood"], // 105
1204		["личность", "personality"], // 106
1205		["портрет", "portrait"], // 107
1206		["принцесса", "princess"], // 108
1207		["заключённый", "prisoner"], // 109
1208		["бежать за", "run after"], // 110
1209		["сохранять", "save"], // 111
1210		["делать заклинания", "spell-making"], // 112
1211		["сюжет", "storyline"], // 113
1212		["брать", "take up"], // 114
1213		["путешествовать по", "travel across"], // 115
1214		["волшебная палочка", "wand"], // 116
1215		["выполнять работу по дому", "do housework"], // 117
1216		["хобби", "hobby"], // 118
1217		["искать", "look for"], // 119
1218		["двигаться", "move"], // 120
1219		["осторожнее!", "watch out"], // 121
1220		["рядом со мной", "by my side"], // 122
1221		["потолок", "ceiling"], // 123
1222		["повседневная жизнь", "daily life"], // 124
1223		["герой", "hero"], // 125
1224		["изобретение", "invention"], // 126
1225		["лабиринт", "maze"], // 127
1226		["безопасно", "safely"], // 128
1227		["вонючий", "smelly"], // 129
1228		["космос", "space"], // 130
1229		["коснуться", "touch"], // 131
1230		["скучающий", "bored"], // 132
1231		["тщательно", "carefully"], // 133
1232		["подойти близко", "come close"], // 134
1233		["подойти к", "come up to"], // 135
1234		["компьютерный программист", "computer programmer"], // 136
1235		["проектировать, конструировать", "design"], // 137
1236		["человек, чьей работой является выгуливание собак", "dog walker"], // 138
1237		["модный", "fashionable"], // 139
1238		["модельер", "fashion designer"], // 140
1239		["приносить", "fetch"], // 141
1240		["Я не совсем уверен.", "I'm not so sure."], // 142
1241		["Звучит здорово.", "It sounds like fun."], // 143
1242		["укротитель львов", "lion tamer"], // 144
1243		["терпеливо", "patiently"], // 145
1244		["фотограф", "photographer"], // 146
1245		["тихо", "silently"], // 147
1246		["продавец-консультант", "shop assistant"], // 148
1247		["ветеринар", "vet"], // 149
1248		["виртуальная реальность", "virtual reality"], // 150
1249		["дикая природа", "wildlife"], // 151
1250		["храбрый", "brave"], // 152
1251		["взломщик", "burglar"], // 153
1252		["дворецкий", "butler"], // 154
1253		["профориентация", "career zone"], // 155
1254		["шофёр", "chauffeur"], // 156
1255		["творческий", "creative"], // 157
1256		["кроме", "except"], // 158
1257		["исправить", "fix"], // 159
1258		["любящий что-либо", "fond of"], // 160
1259		["дружелюбно", "friendly"], // 161
1260		["войти/выйти", "get into/get out of"], // 162
1261		["хирургия", "surgery"], // 163
1262		["карман", "pocket"], // 164
1263		["ограбление", "robbery"], // 165
1264		["микроавтобус", "minibus"], // 166
1265		["любящий", "loving"], // 167
1266		["антиквариат", "antiques"], // 168
1267		["сообщать, докладывать", "report"], // 169
1268		["развлечение", "entertainment"], // 170
1269		["стоить", "cost"], // 171
1270		["комплимент", "compliment"], // 172
1271		["трудолюбивый", "hard-working"], // 173
1272		["магазинный вор", "shoplifter"], // 174
1273		["вертолёт", "helicopter"], // 175
1274		["толпа", "crowd"], // 176
1275		["восхищаться", "admire"], // 177
1276		["добрый", "kind"], // 178
1277		["выход", "exit"], // 179
1278		["куст", "bush"], // 180
1279		["кемпинг", "camp"], // 181
1280		["сажать цветы", "plant flowers"], // 182
1281		["рассказ", "story"], // 183
1282		["бортпроводник", "flight attendant"], // 184
1283		["переусердствовать", "overdo"], // 185
1284		["корабль", "ship"], // 186
1285		["мотоцикл", "motorbike"], // 187
1286		["исполнять, выступать", "perform"], // 188
1287		["трамвай", "tram"], // 189
1288		["пересекать", "cross"], // 190
1289		["успешно", "successfully"], // 191
1290		["интересный", "interesting"], // 192
1291		["пропустить, пролистнуть", "*skip"], // 193
1292		["терпеливый", "patient"], // 194
1293		["зеленеть", "turn green"], // 195
1294		["метро", "subway"], // 196
1295		["личный", "personal"], // 197
1296		["удивительный", "amazing"], // 198
1297		["верить, полагать", "believe"], // 199
1298		["версия", "version"], // 200
1299		["в помещении", "indoors"], // 201
1300		["тренер", "coach"], // 202
1301		["крыло", "wing"], // 203
1302		["брать интервью, спрашивать", "interview"], // 204
1303		["на улице", "outdoors"], // 205
1304		["транспортные средства", "means of transport"], // 206
1305		["подземный", "underground"], // 207 - ВМЕСТО ВТОРОГО "prefer"
1306		["преступник", "criminal"], // 208
1307		["иметь сильную страсть к", "have a strong passion for"], // 209
1308		["фургон", "van"], // 210
1309		["согласно", "according to"], // 211
1310		["культура", "culture"], // 212
1311		["обойти", "get around"], // 213
1312		["сесть на/выйти из (get on the bus/get off the bus)", "get on/get off"], // 214
1313		["подарок", "gift"], // 215
1314		["инспектор", "inspector"], // 216
1315		["прибывать", "arrive"], // 217
1316		["фея", "fairy"], // 218
1317		["достопримечательность", "attraction"], // 219
1318		["успешный в чём-либо", "good at"], // 220
1319		["оканчиваться", "end up"], // 221
1320		["скутер", "scooter"], // 222
1321		["копировать", "copy"], // 223
1322		["лекарство", "medicine"], // 224
1323		["крошечные существа", "tiny creatures"], // 225
1324		["двухэтажный автобус", "double-decker bus"], // 226
1325		["легенда", "legend"], // 227
1326		["содержать", "contain"], // 228
1327		["миф", "myth"], // 229
1328		["иметь проблемы", "have trouble"], // 230
1329		["удивительно", "surprisingly"], // 231
1330		["проходить", "pass"], // 232
1331		["страстный", "passionate"], // 233
1332		["феи", "fairies"], // 234
1333		["посудомоечная машина", "dishwasher"], // 235
1334		["преступление", "crime"], // 236
1335		["подбирать", "pick up"], // 237
1336		["ток-шоу", "talk show"], // 238
1337		["ответственность", "responsibility"], // 239
1338		["одарённый", "gifted"], // 240
1339		["налить", "pour"], // 241
1340		["бестселлер", "best seller"], // 242
1341		["пушистый", "fluffy"], // 243
1342		["утомительный", "tiring"], // 244
1343		["оружие", "weapon"], // 245
1344		["пятнистый", "spotted"], // 246
1345		["уровень", "level"], // 247
1346		["лекарство", "cure"], // 248
1347		["шея", "neck"], // 249
1348		["страшный", "terrible"], // 250
1349		["целый", "whole"], // 251
1350		["кемпинг", "campsite"], // 252
1351		["учебный центр полётов", "flight training centre"], // 253
1352		["медведь", "bear"], // 254
1353		["в клеточку", "checked"], // 255
1354		["говорить", "say"], // 256
1355		["смеяться", "laugh"], // 257
1356		["всеобщий, главный", "general"], // 258
1357		["редкий", "rare"], // 259
1358		["сознательный", "conscious"], // 260
1359		["загорать", "go sunbathing"], // 261
1360		["куртка", "jacket"], // 262
1361		["строгий", "formal"], // 263
1362		["узор", "pattern"], // 264
1363		["закрывать", "shut"], // 265
1364		["петь", "sing"], // 266
1365		["лёгкий", "easy"], // 267
1366		["использованный", "used"], // 268
1367		["открытый", "open"], // 269
1368		["садовник", "gardener"], // 270
1369		["рак", "cancer"], // 271
1370		["леопард", "leopard"], // 272
1371		["показ мод", "fashion show"], // 273
1372		["аксессуары", "accessories"], // 274
1373		["встречать", "meet"], // 275
1374		["лучший", "best"], // 276
1375		["подозрительный", "suspicious"], // 277
1376		["светлый", "light"], // 278
1377		["улитка", "snail"], // 279
1378		["размер", "size"], // 280
1379		["ставить", "put"], // 281
1380		["холодный", "cold"], // 282
1381		["поездка", "trip"], // 283
1382		["ёж", "hedgehog"], // 284
1383		["стейк", "steak"], // 285
1384		["трясти", "shake"], // 286
1385		["есть", "eat"], // 287
1386		["спрашивать", "ask"], // 288
1387		["дружественный", "friendly"], // 289
1388		["местный", "local"], // 290
1389		["древний", "ancient"], // 291
1390		["отправиться в поход", "go camping"], // 292
1391		["заняться виндсерфингом", "go windsurfing"], // 293
1392		["носки", "socks"], // 294
1393		["Какой у вас размер?", "What size are you?"], // 295
1394		["давать", "give"], // 296
1395		["кожа", "leather"], // 297
1396		["смешивать", "mix"], // 298
1397		["автоматический", "automatic"], // 299
1398		["типичный", "typical"], // 300
1399		["полезный", "useful"], // 301
1400		["змея", "snake"], // 302
1401		["действовать", "act"], // 303
1402		["немного узкий", "a bit tight"], // 304
1403		["голодный", "hungry"], // 305
1404		["пустыня", "desert"], // 306
1405		["сурок", "groundhog"], // 307
1406		["брюки", "trousers"], // 308
1407		["тень", "shadow"], // 309
1408		["говорить", "speak"], // 310
1409		["спина", "back"], // 311
1410		["пальто", "coat"], // 312
1411		["способный", "able"], // 313
1412		["острый", "sharp"], // 314
1413		["выпускать", "release"], // 315
1414		["моряк", "sailor"], // 316
1415		["пить", "drink"], // 317
1416		["испуганный", "afraid"], // 318
1417		["мощный", "powerful"], // 319
1418		["полезный", "helpful"], // 320
1419		["ворота", "gate"], // 321
1420		["листья", "leaves"], // 322
1421		["схватить", "grip"], // 323
1422		["необычный", "unusual"], // 324
1423		["разумный", "reasonable"], // 325
1424		["позже", "later on"], // 326
1425		["население", "population"], // 327
1426		["коала", "koala"], // 328
1427		["впадать в спячку", "hibernate"], // 329
1428		["великолепный", "splendid"], // 330
1429		["тревожный", "anxious"], // 331
1430		["частный", "private"], // 332
1431		["стихотворение", "poem"], // 333
1432		["ушибить", "injure"], // 334
1433		["отправлять", "send"], // 335
1434		["ясный, чистый", "clear"], // 336
1435		["золотая рыбка", "goldfish"], // 337
1436		["фламинго", "flamingo"], // 338
1437		["ломтики", "slices"], // 339
1438		["ветер дует", "wind blows"], // 340
1439		["тунец", "tuna"], // 341
1440		["ломать", "break"], // 342
1441		["устанавливать", "set"], // 343
1442		["писать", "write"], // 344
1443		["левый", "left"], // 345
1444		["эффективный", "efficient"], // 346
1445		["международный", "international"], // 347
1446		["волк", "wolf"], // 348
1447		["секретное сообщение", "secret message"], // 349
1448		["ежедневный", "daily"], // 350
1449		["щенок", "puppy"], // 351
1450		["сердитый", "angry"], // 352
1451		["обезьяна", "monkey"], // 353
1452		["тяжёлый", "heavy"], // 354
1453		["перебраться, перейти", "get across"], // 355
1454		["звезда", "star"], // 356
1455		["примерить", "try on"], // 357
1456		["обращаться к", "turn to"], // 358
1457		["костюм", "suit"], // 359
1458		["толстый", "thick"], // 360
1459		["дорогой", "expensive"], // 361
1460		["дешёвая игрушка", "cheap toy"], // 362
1461		["включать в себя", "include"], // 363
1462		["удерживать", "hold"], // 364
1463		["прятать", "hide"], // 365
1464		["улучшаться", "improve"], // 366 - ПЕРВОЕ improve
1465		["вероятный, возможный", "likely"], // 367
1466		["тёмный", "dark"], // 368
1467		["неофициальный", "informal"], // 369
1468		["исторический", "historical"], // 370
1469		["широкий", "wide"], // 371
1470		["старомодный", "old-fashioned"], // 372
1471		["простой", "plain"], // 373
1472		["торговый центр", "mall"], // 374
1473		["идти", "go"], // 375
1474		["конечный", "final"], // 376
1475		["замечательный, выдающийся", "remarkable"], // 377
1476		["определённый, отчётливый", "distinct"], // 378
1477		["язык", "tongue"], // 379
1478		["лайм", "lime"], // 380
1479		["мешковатый", "baggy"], // 381
1480		["мести", "sweep"], // 382
1481		["бежать", "run"], // 383
1482		["снежный", "snowy"], // 384
1483		["аккуратный", "tidy"], // 385 - ВМЕСТО ВТОРОГО "improve"
1484		["худший", "worst"], // 386 - ВМЕСТО "сани"
1485		["загрязнение", "pollution"], // 387
1486		["возмущать", "irritate"], // 388
1487		["запирать", "lock"], // 389
1488		["психологический", "psychological"], // 390
1489		["поздний, последний", "late"], // 391
1490		["окружающая среда", "environment"], // 392
1491		["центральный", "central"], // 393
1492		["краб", "crab"], // 394
1493		["курение", "smoking"], // 395 - ВМЕСТО ВТОРОГО "carry"
1494		["смотреть", "look"], // 396
1495		["физический", "physical"], // 397
1496		["приятный, весёлый", "pleasant"], // 398
1497		["блестящий", "brilliant"], // 399
1498		["сокровище", "treasure"], // 400
1499		["радость", "delight"], // 401
1500		["мелко резать", "chop"], // 402
1501		["светиться", "glow"], // 403
1502		["тревожность", "anxiety"], // 404
1503		["одинокий", "lonely"], // 405
1504		["грубый", "rude"], // 406
1505		["светить", "shine"], // 407
1506		["песок", "sand"], // 408
1507		["энергичный", "energetic"], // 409
1508		["торговаться", "bargain"], // 410
1509		["покидать", "leave"], // 411
1510		["заключать брак", "marry"], // 412
1511		["платить", "pay"], // 413
1512		["одалживать", "lend"], // 414
1513		["терпеть неудачу, скучать", "miss"], // 415
1514		["испуганный", "scared"], // 416
1515		["мешок", "bag"], // 417
1516		["принимать калории", "take calories"], // 418
1517		["запись", "record"], // 419
1518		["шутить", "joke"], // 420
1519		["неважно", "no matter"], // 421 !!!!!!!!!!!!!!!! 6
1520		["убивать", "kill"], // 422
1521		["чтобы ни было", "whatever"], // 423
1522		["звонить", "call"], // 424
1523		["уродливый", "ugly"], // 425
1524		["прямой, верный", "right"], // 426
1525		["существующий", "existing"], // 427
1526		["облачный", "cloudy"], // 428
1527		["жёсткий, усердный", "hard"], // 429
1528		["продвинутый, расширенный", "advanced"], // 430
1529		["гепард", "cheetah"], // 431 !!!!!!!!!!!!!!!! 5
1530		["учёный", "scientist"], // 432
1531		["немного сложно", "a bit difficult"], // 433
1532		["молочные продукты", "dairy products"], // 434
1533		["волнующее событие", "exciting event"], // 435
1534		["жить", "live"], // 436
1535		["судить", "judge"], // 437
1536		["ночной кошмар", "nightmare"], // 438
1537		["отчаявшиеся домохозяйки", "desperate housewives"], // 439
1538		["сильный", "strong"], // 440 
1539		["пиво", "beer"], // 441 !!!!!!!!!!!!!!!! 4
1540		["опыт", "experience"], // 442
1541		["будущее", "future"], // 443
1542		["неспособный", "unable"], // 444
1543		["политический", "political"], // 445
1544		["религиозный", "religious"], // 446
1545		["расшифровывать", "decode"], // 447
1546		["уничтожить", "destroy"], // 448
1547		["горб", "hump"], // 449
1548		["Поймал тебя!", "Got you!"], // 450
1549		["общий, популярный", "common"], // 451 !!!!!!!!!!!!!!!! 3
1550		["принимающий решение", "decision-maker"], // 452
1551		["ресницы", "eyelashes"], // 453
1552		["ковбой", "cowboy"], // 454
1553		["слабый", "weak"], // 455
1554		["прошлый, прошедший", "past"], // 456
1555		["вдохновлять", "inspire"], // 457
1556		["гражданин", "citizen"], // 458
1557		["это поле такое чудесное!", "this field is so marvelous"], // 459
1558		["мёд", "honey"], // 460
1559		["Это выгодная сделка.", "It's a deal."], // 461 !!!!!!!!!!!!!!!! 2
1560		["ленты", "ribbons"], // 462
1561		["читать", "read"], // 463
1562		["чувствовать", "feel"], // 464
1563		["свободный", "free"], // 465
1564		["трудный", "difficult"], // 466
1565		["осторожный", "careful"], // 467
1566		["это баг или фича?", "Is this bug or feature?"], // 468
1567		["передай мне", "pass me"], // 469
1568		["секунда", "second"], // 470
1569		["полосатый", "striped"], // 471 !!!!!!!!!!!!!!!! 1
1570		["развивать", "develop"], // 472
1571		["правительство", "government"], // 473
1572		["верный", "loyal"], // 474
1573		["короткий", "short"], // 475
1574		["предотвращать", "prevent"], // 476
1575		["галстук", "tie"], // 477
1576		["огромный", "huge"], // 478
1577		["обёртка, фантик", "sweet wrapper"], // 479
1578		["искать", "seek"] // 480
1579];
1580
1581let words_count = set_of_words.length;
1582
1583let words_10 = Math.floor(words_count / nw);
1584if(nw*words_10 != words_count)	{
1585	words_10=words_10+1;
1586}
1587let choise=words_10;
1588
1589	
1590loop = 1;
1591while (loop == 1) {
1592
1593	const date = new Date(2026, 1, 8); // 8 февраля 2026
1594	const current_date = new Date();// Текущая дата на начало суток
1595	
1596	let zap = "";
1597
1598	for (let i = 1; i <= words_10; i++) {
1599		zap = zap +
1600			String(i).padStart(3) + ":    " +
1601			String(nw * (words_10 - i)+1).padStart(3) + "-" +
1602			(nw * (1 + words_10 - i)) + "   " +
1603			date.toLocaleDateString() + "\n";
1604
1605		if (date <= current_date) {
1606			choise = i;
1607		};
1608
1609		date.setDate(date.getDate() + 28);
1610	}
1611
1612	choise = prompt(zap, choise);
1613
1614	const massiv_slov = set_of_words.slice(nw * (words_10 - choise), nw * (1 + words_10 - choise));
1615	result = "";
1616	result = result + `выбраный диапазон: ${nw * (words_10 - choise)+1}-${nw * (1 + words_10 - choise) }\n\n`;
1617
1618	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
1619	alert(result);
1620
1621
1622
1623    // Вариант направления перевода
1624    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
1625    const lang = prime_lang == 0 ? 0 : 1;
1626
1627    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
1628    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
1629
1630    async function delayedFunction() {
1631        await new Promise(resolve => setTimeout(resolve, 1000));
1632    }
1633
1634    //перемешивание слов
1635    prime_sum_slov = massiv_slov.length;
1636
1637    for (j = 0; j < prime_sum_slov; j++) {
1638        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
1639        temp = massiv_slov[r];
1640        massiv_slov[r] = massiv_slov[j];
1641        massiv_slov[j] = temp;
1642    }
1643    //проверка перемешивания словundefined
1644    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
1645    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
1646
1647    // перебор массива слов
1648    sum_slov = 0;
1649    for (index = 0; index < massiv_slov.length; index++) {
1650        sum_slov = sum_slov + 1;
1651        // произношение
1652
1653        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
1654        u.text = massiv_slov[index][lang];
1655        delayedFunction();
1656        u.rate = 1;
1657        speechSynthesis.speak(u);
1658
1659        // ввод что было сказано 
1660        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
1661        test = prompt(massiv_slov[index][lang]);
1662        if (test === null) {
1663            massiv_slov[massiv_slov.length] = massiv_slov[index];
1664            x = oshibki.get(massiv_slov[index]);
1665            if (x == null) { x = 0; }
1666            x++;
1667            oshibki.set(massiv_slov[index], x);
1668            break;
1669        }
1670        //	u.lang = 'en-UK';
1671        //	u.text = massiv_slov[index][1];
1672        //	speechSynthesis.speak(u);  
1673
1674        // проверка того что было сказано
1675        if (massiv_slov[index][(lang + 1) % 2] !== test) {
1676            u.lang = 'en-UK';
1677            u.text = 'Wrong!     The correct answer is        ';
1678            delayedFunction();
1679            speechSynthesis.speak(u);
1680
1681            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
1682            u.text = massiv_slov[index][(lang + 1) % 2];
1683            delayedFunction();
1684            speechSynthesis.speak(u);
1685            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
1686            );
1687
1688            massiv_slov[massiv_slov.length] = massiv_slov[index];
1689            x = oshibki.get(massiv_slov[index]);
1690            if (x == null) { x = 0; }
1691            x++;
1692            //alert ("x="+x);
1693            oshibki.set(massiv_slov[index], x);
1694        }
1695        else {
1696            u.lang = 'en-UK';
1697            u.text = 'Great!     ';
1698            if (lang == 0) {
1699                u.text = u.text + test;
1700            }
1701            u.text = u.text + '    is the correct answer!';
1702            delayedFunction();
1703            speechSynthesis.speak(u);
1704
1705            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
1706            );
1707        }
1708    }
1709    //вывод ошибок
1710		let now = new Date();
1711    otchet0 = '';
1712    otchet = '';
1713    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
1714    otchet = "По диапазону "  + (nw * (words_10 - choise)+1)+"-" + nw * (1 + words_10 - choise)+
1715        "\"\nсостоящиму из "+nw+" слов, \nбыло задано " + sum_slov +
1716        " вопросов,\n в направлении " +
1717        lang1+"\n"
1718        + now.toString()
1719		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
1720
1721
1722
1723    for (pair of oshibki.entries()) {
1724        // pair - это массив [key, values]
1725        //alert(pair[0]); // ключ
1726        //alert(pair[1]); // значение
1727        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
1728        otchet0 = otchet0 + `${pair[0]}\n`;
1729
1730        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
1731    }
1732
1733    alert(otchet);
1734    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
1735
1736    alert(otchet0);
1737    oshibki.clear()
1738    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
1739}
1740}</script>
1740
1741<!-- end Simple Custom CSS and JS -->
1742<!-- start Simple Custom CSS and JS -->
1743<script type="text/javascript">
1744if (window.location.pathname == '/nedelya-60/')
1745{
1746let nw=60;
1747oshibki = new Map();
1748u = new SpeechSynthesisUtterance();
1749u.rate = 1;
1750
1751const set_of_words = [
1752       	["миллиард", "billion"], // 1
1753		["мост", "bridge"], // 2
1754		["Не стоит благодарности.", "Don't mention it."], // 3
1755		["Как дела?", "How do you do?"], // 4
1756		["миллион", "million"], // 5
1757		["лестница", "stairs"], // 6
1758		["тысяча", "thousand"], // 7
1759		["туннель", "tunnel"], // 8
1760		["кондиционер", "air conditioner"], // 9
1761		["тумбочка", "bedside table"], // 10
1762		["нижний ярус кровати", "the bottom bed"], // 11
1763		["двухъярусная кровать", "bunk beds"], // 12
1764		["нести", "carry"], // 13 - ПЕРВОЕ carry
1765		["изменить", "change"], // 14
1766		["комод", "chest of drawers"], // 15
1767		["занавес", "curtain"], // 16
1768		["украшать", "decorate"], // 17
1769		["приветствие", "greetings"], // 18
1770		["Это выглядит фантастически!", "It looks fantastic!"], // 19
1771		["коврик", "mat"], // 20
1772		["MP3-плеер", "MP3 player"], // 21
1773		["Приятно познакомиться!", "Nice to meet you!"], // 22
1774		["нажимать", "press"], // 23
1775		["поднимать", "put up"], // 24
1776		["поднимать занавес", "put up the curtains"], // 25
1777		["вполне готов", "quite ready"], // 26
1778		["полки", "shelves"], // 27
1779		["отдыхать", "take a break"], // 28
1780		["хотя", "though"], // 29
1781		["верхний ярус кровати", "the top bed"], // 30
1782		["включить", "turn on"], // 31
1783		["близнецы", "twins"], // 32
1784		["наконец", "at last"], // 33
1785		["готовить", "cook"], // 34
1786		["украшение", "decoration"], // 35
1787		["гладить", "do the ironing"], // 36
1788		["пылесосить", "do the vacuuming"], // 37
1789		["мыть посуду", "do the washing-up"], // 38
1790		["наряжаться", "dress up"], // 39
1791		["стереть пыль с мебели", "dust the furniture"], // 40
1792		["забывать", "forget"], // 41
1793		["наверняка", "for sure"], // 42
1794		["гламурный", "glamorous"], // 43
1795		["тренироваться", "get some exercise"], // 44
1796		["ходить по магазинам", "go shopping"], // 45
1797		["проводить встречу, собрание", "have a meeting"], // 46
1798		["Я на диете.", "I'm on a diet."], // 47
1799		["Могу поспорить.", "I bet"], // 48
1800		["приглашение", "invitation"], // 49
1801		["заправлять кровать", "make the beds"], // 50
1802		["матч", "match"], // 51
1803		["мыть пол", "mop the floor"], // 52
1804		["ремонтник", "repairman"], // 53
1805		["безалкогольные напитки", "soft drinks"], // 54
1806		["спортивный", "sporty"], // 55
1807		["отключить", "switch off"], // 56
1808		["тематическая вечеринка", "theme party"], // 57
1809		["А что я?", "What about me?"], // 58
1810		["работать допоздна", "work late"], // 59
1811		["до тех пор, как", "as long as"], // 60
1812		["коллекционировать комиксы", "collect comics"], // 61
1813		["не против", "don't mind"], // 62
1814		["скачивать музыку", "download music"], // 63
1815		["получить информацию", "get information"], // 64
1816		["остаться на ночь", "go to a sleepover"], // 65
1817		["болтаться, проводить время", "hang out"], // 66
1818		["получать удовольствие", "have fun"], // 67
1819		["честный", "honest"], // 68
1820		["информация", "information"], // 69
1821		["возражать", "mind"], // 70
1822		["самостоятельно", "on my own"], // 71
1823		["общительный", "outgoing"], // 72
1824		["играть в спортивные игры", "play sports"], // 73
1825		["популярный", "popular"], // 74
1826		["предпочитать", "prefer"], // 75 - ПЕРВОЕ prefer
1827		["тихий", "quiet"], // 76
1828		["тест", "quiz"], // 77
1829		["читать журналы", "read magazines"], // 78
1830		["надёжный", "reliable"], // 79
1831		["отправлять текстовые сообщения", "send text messages"], // 80
1832		["общительный", "sociable"], // 81
1833		["искать информацию в интернете", "surf the Net"], // 82
1834		["приключение", "adventure"], // 83
1835		["бить", "beat"], // 84
1836		["пчела", "bee"], // 85
1837		["начинать", "begin"], // 86
1838		["герой книги, фильма", "character"], // 87
1839		["погоня", "chase"], // 88
1840		["соревноваться", "compete"], // 89
1841		["противоположный", "contrasting"], // 90
1842		["коридор", "corridor"], // 91
1843		["быть без ума от", "crazy about"], // 92
1844		["создавать", "create"], // 93
1845		["одеваться", "dress"], // 94
1846		["враг", "enemy"], // 95
1847		["исследовать", "explore"], // 96
1848		["фэнтези (жанр игр, книг)", "fantasy"], // 97
1849		["драться", "fight"], // 98
1850		["плыть", "float"], // 99
1851		["галактика", "galaxy"], // 100
1852		["присоединиться к", "join"], // 101
1853		["спрыгнуть", "jump off"], // 102
1854		["похитить", "kidnap"], // 103
1855		["должен петь", "must sing"], // 104
1856		["окрестности", "neighbourhood"], // 105
1857		["личность", "personality"], // 106
1858		["портрет", "portrait"], // 107
1859		["принцесса", "princess"], // 108
1860		["заключённый", "prisoner"], // 109
1861		["бежать за", "run after"], // 110
1862		["сохранять", "save"], // 111
1863		["делать заклинания", "spell-making"], // 112
1864		["сюжет", "storyline"], // 113
1865		["брать", "take up"], // 114
1866		["путешествовать по", "travel across"], // 115
1867		["волшебная палочка", "wand"], // 116
1868		["выполнять работу по дому", "do housework"], // 117
1869		["хобби", "hobby"], // 118
1870		["искать", "look for"], // 119
1871		["двигаться", "move"], // 120
1872		["осторожнее!", "watch out"], // 121
1873		["рядом со мной", "by my side"], // 122
1874		["потолок", "ceiling"], // 123
1875		["повседневная жизнь", "daily life"], // 124
1876		["герой", "hero"], // 125
1877		["изобретение", "invention"], // 126
1878		["лабиринт", "maze"], // 127
1879		["безопасно", "safely"], // 128
1880		["вонючий", "smelly"], // 129
1881		["космос", "space"], // 130
1882		["коснуться", "touch"], // 131
1883		["скучающий", "bored"], // 132
1884		["тщательно", "carefully"], // 133
1885		["подойти близко", "come close"], // 134
1886		["подойти к", "come up to"], // 135
1887		["компьютерный программист", "computer programmer"], // 136
1888		["проектировать, конструировать", "design"], // 137
1889		["человек, чьей работой является выгуливание собак", "dog walker"], // 138
1890		["модный", "fashionable"], // 139
1891		["модельер", "fashion designer"], // 140
1892		["приносить", "fetch"], // 141
1893		["Я не совсем уверен.", "I'm not so sure."], // 142
1894		["Звучит здорово.", "It sounds like fun."], // 143
1895		["укротитель львов", "lion tamer"], // 144
1896		["терпеливо", "patiently"], // 145
1897		["фотограф", "photographer"], // 146
1898		["тихо", "silently"], // 147
1899		["продавец-консультант", "shop assistant"], // 148
1900		["ветеринар", "vet"], // 149
1901		["виртуальная реальность", "virtual reality"], // 150
1902		["дикая природа", "wildlife"], // 151
1903		["храбрый", "brave"], // 152
1904		["взломщик", "burglar"], // 153
1905		["дворецкий", "butler"], // 154
1906		["профориентация", "career zone"], // 155
1907		["шофёр", "chauffeur"], // 156
1908		["творческий", "creative"], // 157
1909		["кроме", "except"], // 158
1910		["исправить", "fix"], // 159
1911		["любящий что-либо", "fond of"], // 160
1912		["дружелюбно", "friendly"], // 161
1913		["войти/выйти", "get into/get out of"], // 162
1914		["хирургия", "surgery"], // 163
1915		["карман", "pocket"], // 164
1916		["ограбление", "robbery"], // 165
1917		["микроавтобус", "minibus"], // 166
1918		["любящий", "loving"], // 167
1919		["антиквариат", "antiques"], // 168
1920		["сообщать, докладывать", "report"], // 169
1921		["развлечение", "entertainment"], // 170
1922		["стоить", "cost"], // 171
1923		["комплимент", "compliment"], // 172
1924		["трудолюбивый", "hard-working"], // 173
1925		["магазинный вор", "shoplifter"], // 174
1926		["вертолёт", "helicopter"], // 175
1927		["толпа", "crowd"], // 176
1928		["восхищаться", "admire"], // 177
1929		["добрый", "kind"], // 178
1930		["выход", "exit"], // 179
1931		["куст", "bush"], // 180
1932		["кемпинг", "camp"], // 181
1933		["сажать цветы", "plant flowers"], // 182
1934		["рассказ", "story"], // 183
1935		["бортпроводник", "flight attendant"], // 184
1936		["переусердствовать", "overdo"], // 185
1937		["корабль", "ship"], // 186
1938		["мотоцикл", "motorbike"], // 187
1939		["исполнять, выступать", "perform"], // 188
1940		["трамвай", "tram"], // 189
1941		["пересекать", "cross"], // 190
1942		["успешно", "successfully"], // 191
1943		["интересный", "interesting"], // 192
1944		["пропустить, пролистнуть", "*skip"], // 193
1945		["терпеливый", "patient"], // 194
1946		["зеленеть", "turn green"], // 195
1947		["метро", "subway"], // 196
1948		["личный", "personal"], // 197
1949		["удивительный", "amazing"], // 198
1950		["верить, полагать", "believe"], // 199
1951		["версия", "version"], // 200
1952		["в помещении", "indoors"], // 201
1953		["тренер", "coach"], // 202
1954		["крыло", "wing"], // 203
1955		["брать интервью, спрашивать", "interview"], // 204
1956		["на улице", "outdoors"], // 205
1957		["транспортные средства", "means of transport"], // 206
1958		["подземный", "underground"], // 207 - ВМЕСТО ВТОРОГО "prefer"
1959		["преступник", "criminal"], // 208
1960		["иметь сильную страсть к", "have a strong passion for"], // 209
1961		["фургон", "van"], // 210
1962		["согласно", "according to"], // 211
1963		["культура", "culture"], // 212
1964		["обойти", "get around"], // 213
1965		["сесть на/выйти из (get on the bus/get off the bus)", "get on/get off"], // 214
1966		["подарок", "gift"], // 215
1967		["инспектор", "inspector"], // 216
1968		["прибывать", "arrive"], // 217
1969		["фея", "fairy"], // 218
1970		["достопримечательность", "attraction"], // 219
1971		["успешный в чём-либо", "good at"], // 220
1972		["оканчиваться", "end up"], // 221
1973		["скутер", "scooter"], // 222
1974		["копировать", "copy"], // 223
1975		["лекарство", "medicine"], // 224
1976		["крошечные существа", "tiny creatures"], // 225
1977		["двухэтажный автобус", "double-decker bus"], // 226
1978		["легенда", "legend"], // 227
1979		["содержать", "contain"], // 228
1980		["миф", "myth"], // 229
1981		["иметь проблемы", "have trouble"], // 230
1982		["удивительно", "surprisingly"], // 231
1983		["проходить", "pass"], // 232
1984		["страстный", "passionate"], // 233
1985		["феи", "fairies"], // 234
1986		["посудомоечная машина", "dishwasher"], // 235
1987		["преступление", "crime"], // 236
1988		["подбирать", "pick up"], // 237
1989		["ток-шоу", "talk show"], // 238
1990		["ответственность", "responsibility"], // 239
1991		["одарённый", "gifted"], // 240
1992		["налить", "pour"], // 241
1993		["бестселлер", "best seller"], // 242
1994		["пушистый", "fluffy"], // 243
1995		["утомительный", "tiring"], // 244
1996		["оружие", "weapon"], // 245
1997		["пятнистый", "spotted"], // 246
1998		["уровень", "level"], // 247
1999		["лекарство", "cure"], // 248
2000		["шея", "neck"], // 249
2001		["страшный", "terrible"], // 250
2002		["целый", "whole"], // 251
2003		["кемпинг", "campsite"], // 252
2004		["учебный центр полётов", "flight training centre"], // 253
2005		["медведь", "bear"], // 254
2006		["в клеточку", "checked"], // 255
2007		["говорить", "say"], // 256
2008		["смеяться", "laugh"], // 257
2009		["всеобщий, главный", "general"], // 258
2010		["редкий", "rare"], // 259
2011		["сознательный", "conscious"], // 260
2012		["загорать", "go sunbathing"], // 261
2013		["куртка", "jacket"], // 262
2014		["строгий", "formal"], // 263
2015		["узор", "pattern"], // 264
2016		["закрывать", "shut"], // 265
2017		["петь", "sing"], // 266
2018		["лёгкий", "easy"], // 267
2019		["использованный", "used"], // 268
2020		["открытый", "open"], // 269
2021		["садовник", "gardener"], // 270
2022		["рак", "cancer"], // 271
2023		["леопард", "leopard"], // 272
2024		["показ мод", "fashion show"], // 273
2025		["аксессуары", "accessories"], // 274
2026		["встречать", "meet"], // 275
2027		["лучший", "best"], // 276
2028		["подозрительный", "suspicious"], // 277
2029		["светлый", "light"], // 278
2030		["улитка", "snail"], // 279
2031		["размер", "size"], // 280
2032		["ставить", "put"], // 281
2033		["холодный", "cold"], // 282
2034		["поездка", "trip"], // 283
2035		["ёж", "hedgehog"], // 284
2036		["стейк", "steak"], // 285
2037		["трясти", "shake"], // 286
2038		["есть", "eat"], // 287
2039		["спрашивать", "ask"], // 288
2040		["дружественный", "friendly"], // 289
2041		["местный", "local"], // 290
2042		["древний", "ancient"], // 291
2043		["отправиться в поход", "go camping"], // 292
2044		["заняться виндсерфингом", "go windsurfing"], // 293
2045		["носки", "socks"], // 294
2046		["Какой у вас размер?", "What size are you?"], // 295
2047		["давать", "give"], // 296
2048		["кожа", "leather"], // 297
2049		["смешивать", "mix"], // 298
2050		["автоматический", "automatic"], // 299
2051		["типичный", "typical"], // 300
2052		["полезный", "useful"], // 301
2053		["змея", "snake"], // 302
2054		["действовать", "act"], // 303
2055		["немного узкий", "a bit tight"], // 304
2056		["голодный", "hungry"], // 305
2057		["пустыня", "desert"], // 306
2058		["сурок", "groundhog"], // 307
2059		["брюки", "trousers"], // 308
2060		["тень", "shadow"], // 309
2061		["говорить", "speak"], // 310
2062		["спина", "back"], // 311
2063		["пальто", "coat"], // 312
2064		["способный", "able"], // 313
2065		["острый", "sharp"], // 314
2066		["выпускать", "release"], // 315
2067		["моряк", "sailor"], // 316
2068		["пить", "drink"], // 317
2069		["испуганный", "afraid"], // 318
2070		["мощный", "powerful"], // 319
2071		["полезный", "helpful"], // 320
2072		["ворота", "gate"], // 321
2073		["листья", "leaves"], // 322
2074		["схватить", "grip"], // 323
2075		["необычный", "unusual"], // 324
2076		["разумный", "reasonable"], // 325
2077		["позже", "later on"], // 326
2078		["население", "population"], // 327
2079		["коала", "koala"], // 328
2080		["впадать в спячку", "hibernate"], // 329
2081		["великолепный", "splendid"], // 330
2082		["тревожный", "anxious"], // 331
2083		["частный", "private"], // 332
2084		["стихотворение", "poem"], // 333
2085		["ушибить", "injure"], // 334
2086		["отправлять", "send"], // 335
2087		["ясный, чистый", "clear"], // 336
2088		["золотая рыбка", "goldfish"], // 337
2089		["фламинго", "flamingo"], // 338
2090		["ломтики", "slices"], // 339
2091		["ветер дует", "wind blows"], // 340
2092		["тунец", "tuna"], // 341
2093		["ломать", "break"], // 342
2094		["устанавливать", "set"], // 343
2095		["писать", "write"], // 344
2096		["левый", "left"], // 345
2097		["эффективный", "efficient"], // 346
2098		["международный", "international"], // 347
2099		["волк", "wolf"], // 348
2100		["секретное сообщение", "secret message"], // 349
2101		["ежедневный", "daily"], // 350
2102		["щенок", "puppy"], // 351
2103		["сердитый", "angry"], // 352
2104		["обезьяна", "monkey"], // 353
2105		["тяжёлый", "heavy"], // 354
2106		["перебраться, перейти", "get across"], // 355
2107		["звезда", "star"], // 356
2108		["примерить", "try on"], // 357
2109		["обращаться к", "turn to"], // 358
2110		["костюм", "suit"], // 359
2111		["толстый", "thick"], // 360
2112		["дорогой", "expensive"], // 361
2113		["дешёвая игрушка", "cheap toy"], // 362
2114		["включать в себя", "include"], // 363
2115		["удерживать", "hold"], // 364
2116		["прятать", "hide"], // 365
2117		["улучшаться", "improve"], // 366 - ПЕРВОЕ improve
2118		["вероятный, возможный", "likely"], // 367
2119		["тёмный", "dark"], // 368
2120		["неофициальный", "informal"], // 369
2121		["исторический", "historical"], // 370
2122		["широкий", "wide"], // 371
2123		["старомодный", "old-fashioned"], // 372
2124		["простой", "plain"], // 373
2125		["торговый центр", "mall"], // 374
2126		["идти", "go"], // 375
2127		["конечный", "final"], // 376
2128		["замечательный, выдающийся", "remarkable"], // 377
2129		["определённый, отчётливый", "distinct"], // 378
2130		["язык", "tongue"], // 379
2131		["лайм", "lime"], // 380
2132		["мешковатый", "baggy"], // 381
2133		["мести", "sweep"], // 382
2134		["бежать", "run"], // 383
2135		["снежный", "snowy"], // 384
2136		["аккуратный", "tidy"], // 385 - ВМЕСТО ВТОРОГО "improve"
2137		["худший", "worst"], // 386 - ВМЕСТО "сани"
2138		["загрязнение", "pollution"], // 387
2139		["возмущать", "irritate"], // 388
2140		["запирать", "lock"], // 389
2141		["психологический", "psychological"], // 390
2142		["поздний, последний", "late"], // 391
2143		["окружающая среда", "environment"], // 392
2144		["центральный", "central"], // 393
2145		["краб", "crab"], // 394
2146		["курение", "smoking"], // 395 - ВМЕСТО ВТОРОГО "carry"
2147		["смотреть", "look"], // 396
2148		["физический", "physical"], // 397
2149		["приятный, весёлый", "pleasant"], // 398
2150		["блестящий", "brilliant"], // 399
2151		["сокровище", "treasure"], // 400
2152		["радость", "delight"], // 401
2153		["мелко резать", "chop"], // 402
2154		["светиться", "glow"], // 403
2155		["тревожность", "anxiety"], // 404
2156		["одинокий", "lonely"], // 405
2157		["грубый", "rude"], // 406
2158		["светить", "shine"], // 407
2159		["песок", "sand"], // 408
2160		["энергичный", "energetic"], // 409
2161		["торговаться", "bargain"], // 410
2162		["покидать", "leave"], // 411
2163		["заключать брак", "marry"], // 412
2164		["платить", "pay"], // 413
2165		["одалживать", "lend"], // 414
2166		["терпеть неудачу, скучать", "miss"], // 415
2167		["испуганный", "scared"], // 416
2168		["мешок", "bag"], // 417
2169		["принимать калории", "take calories"], // 418
2170		["запись", "record"], // 419
2171		["шутить", "joke"], // 420
2172		["неважно", "no matter"], // 421 !!!!!!!!!!!!!!!! 6
2173		["убивать", "kill"], // 422
2174		["чтобы ни было", "whatever"], // 423
2175		["звонить", "call"], // 424
2176		["уродливый", "ugly"], // 425
2177		["прямой, верный", "right"], // 426
2178		["существующий", "existing"], // 427
2179		["облачный", "cloudy"], // 428
2180		["жёсткий, усердный", "hard"], // 429
2181		["продвинутый, расширенный", "advanced"], // 430
2182		["гепард", "cheetah"], // 431 !!!!!!!!!!!!!!!! 5
2183		["учёный", "scientist"], // 432
2184		["немного сложно", "a bit difficult"], // 433
2185		["молочные продукты", "dairy products"], // 434
2186		["волнующее событие", "exciting event"], // 435
2187		["жить", "live"], // 436
2188		["судить", "judge"], // 437
2189		["ночной кошмар", "nightmare"], // 438
2190		["отчаявшиеся домохозяйки", "desperate housewives"], // 439
2191		["сильный", "strong"], // 440 
2192		["пиво", "beer"], // 441 !!!!!!!!!!!!!!!! 4
2193		["опыт", "experience"], // 442
2194		["будущее", "future"], // 443
2195		["неспособный", "unable"], // 444
2196		["политический", "political"], // 445
2197		["религиозный", "religious"], // 446
2198		["расшифровывать", "decode"], // 447
2199		["уничтожить", "destroy"], // 448
2200		["горб", "hump"], // 449
2201		["Поймал тебя!", "Got you!"], // 450
2202		["общий, популярный", "common"], // 451 !!!!!!!!!!!!!!!! 3
2203		["принимающий решение", "decision-maker"], // 452
2204		["ресницы", "eyelashes"], // 453
2205		["ковбой", "cowboy"], // 454
2206		["слабый", "weak"], // 455
2207		["прошлый, прошедший", "past"], // 456
2208		["вдохновлять", "inspire"], // 457
2209		["гражданин", "citizen"], // 458
2210		["это поле такое чудесное!", "this field is so marvelous"], // 459
2211		["мёд", "honey"], // 460
2212		["Это выгодная сделка.", "It's a deal."], // 461 !!!!!!!!!!!!!!!! 2
2213		["ленты", "ribbons"], // 462
2214		["читать", "read"], // 463
2215		["чувствовать", "feel"], // 464
2216		["свободный", "free"], // 465
2217		["трудный", "difficult"], // 466
2218		["осторожный", "careful"], // 467
2219		["это баг или фича?", "Is this bug or feature?"], // 468
2220		["передай мне", "pass me"], // 469
2221		["секунда", "second"], // 470
2222		["полосатый", "striped"], // 471 !!!!!!!!!!!!!!!! 1
2223		["развивать", "develop"], // 472
2224		["правительство", "government"], // 473
2225		["верный", "loyal"], // 474
2226		["короткий", "short"], // 475
2227		["предотвращать", "prevent"], // 476
2228		["галстук", "tie"], // 477
2229		["огромный", "huge"], // 478
2230		["обёртка, фантик", "sweet wrapper"], // 479
2231		["искать", "seek"] // 480
2232];
2233
2234let words_count = set_of_words.length;
2235
2236let words_10 = Math.floor(words_count / nw);
2237if(nw*words_10 != words_count)	{
2238	words_10=words_10+1;
2239}
2240let choise=words_10;
2241
2242	
2243loop = 1;
2244while (loop == 1) {
2245
2246	const date = new Date(2026, 0, 18); // 18 января 2026
2247	const current_date = new Date();// Текущая дата на начало суток
2248	
2249	let zap = "";
2250
2251	for (let i = 1; i <= words_10; i++) {
2252		zap = zap +
2253			String(i).padStart(3) + ":    " +
2254			String(nw * (words_10 - i)+1).padStart(3) + "-" +
2255			(nw * (1 + words_10 - i)) + "   " +
2256			date.toLocaleDateString() + "\n";
2257
2258		if (date <= current_date) {
2259			choise = i;
2260		};
2261
2262		date.setDate(date.getDate() + 7);
2263	}
2264
2265	choise = prompt(zap, choise);
2266
2267	const massiv_slov = set_of_words.slice(nw * (words_10 - choise), nw * (1 + words_10 - choise));
2268	result = "";
2269	result = result + `выбраный диапазон: ${nw * (words_10 - choise)+1}-${nw * (1 + words_10 - choise) }\n\n`;
2270
2271	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
2272	alert(result);
2273
2274
2275
2276    // Вариант направления перевода
2277    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
2278    const lang = prime_lang == 0 ? 0 : 1;
2279
2280    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
2281    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
2282
2283    async function delayedFunction() {
2284        await new Promise(resolve => setTimeout(resolve, 1000));
2285    }
2286
2287    //перемешивание слов
2288    prime_sum_slov = massiv_slov.length;
2289
2290    for (j = 0; j < prime_sum_slov; j++) {
2291        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
2292        temp = massiv_slov[r];
2293        massiv_slov[r] = massiv_slov[j];
2294        massiv_slov[j] = temp;
2295    }
2296    //проверка перемешивания словundefined
2297    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
2298    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
2299
2300    // перебор массива слов
2301    sum_slov = 0;
2302    for (index = 0; index < massiv_slov.length; index++) {
2303        sum_slov = sum_slov + 1;
2304        // произношение
2305
2306        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
2307        u.text = massiv_slov[index][lang];
2308        delayedFunction();
2309        u.rate = 1;
2310        speechSynthesis.speak(u);
2311
2312        // ввод что было сказано 
2313        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
2314        test = prompt(massiv_slov[index][lang]);
2315        if (test === null) {
2316            massiv_slov[massiv_slov.length] = massiv_slov[index];
2317            x = oshibki.get(massiv_slov[index]);
2318            if (x == null) { x = 0; }
2319            x++;
2320            oshibki.set(massiv_slov[index], x);
2321            break;
2322        }
2323        //	u.lang = 'en-UK';
2324        //	u.text = massiv_slov[index][1];
2325        //	speechSynthesis.speak(u);  
2326
2327        // проверка того что было сказано
2328        if (massiv_slov[index][(lang + 1) % 2] !== test) {
2329            u.lang = 'en-UK';
2330            u.text = 'Wrong!     The correct answer is        ';
2331            delayedFunction();
2332            speechSynthesis.speak(u);
2333
2334            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
2335            u.text = massiv_slov[index][(lang + 1) % 2];
2336            delayedFunction();
2337            speechSynthesis.speak(u);
2338            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
2339            );
2340
2341            massiv_slov[massiv_slov.length] = massiv_slov[index];
2342            x = oshibki.get(massiv_slov[index]);
2343            if (x == null) { x = 0; }
2344            x++;
2345            //alert ("x="+x);
2346            oshibki.set(massiv_slov[index], x);
2347        }
2348        else {
2349            u.lang = 'en-UK';
2350            u.text = 'Great!     ';
2351            if (lang == 0) {
2352                u.text = u.text + test;
2353            }
2354            u.text = u.text + '    is the correct answer!';
2355            delayedFunction();
2356            speechSynthesis.speak(u);
2357
2358            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
2359            );
2360        }
2361    }
2362    //вывод ошибок
2363		let now = new Date();
2364    otchet0 = '';
2365    otchet = '';
2366    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
2367    otchet = "По диапазону "  + (nw * (words_10 - choise)+1)+"-" + nw * (1 + words_10 - choise)+
2368        "\"\nсостоящиму из "+nw+" слов, \nбыло задано " + sum_slov +
2369        " вопросов,\n в направлении " +
2370        lang1+"\n"
2371        + now.toString()
2372		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
2373
2374
2375
2376    for (pair of oshibki.entries()) {
2377        // pair - это массив [key, values]
2378        //alert(pair[0]); // ключ
2379        //alert(pair[1]); // значение
2380        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
2381        otchet0 = otchet0 + `${pair[0]}\n`;
2382
2383        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
2384    }
2385
2386    alert(otchet);
2387    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
2388
2389    alert(otchet0);
2390    oshibki.clear()
2391    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
2392}
2393}</script>
2393
2394<!-- end Simple Custom CSS and JS -->
2395<!-- start Simple Custom CSS and JS -->
2396<script type="text/javascript">
2397if (window.location.pathname == '/eng-480/')
2398{
2399let nw=60;//это по сколько слов в день
2400oshibki = new Map();
2401u = new SpeechSynthesisUtterance();
2402u.rate = 1;
2403
2404const set_of_words = [
2405       	["миллиард", "billion"], // 1
2406		["мост", "bridge"], // 2
2407		["Не стоит благодарности.", "Don't mention it."], // 3
2408		["Как дела?", "How do you do?"], // 4
2409		["миллион", "million"], // 5
2410		["лестница", "stairs"], // 6
2411		["тысяча", "thousand"], // 7
2412		["туннель", "tunnel"], // 8
2413		["кондиционер", "air conditioner"], // 9
2414		["тумбочка", "bedside table"], // 10
2415		["нижний ярус кровати", "the bottom bed"], // 11
2416		["двухъярусная кровать", "bunk beds"], // 12
2417		["нести", "carry"], // 13 - ПЕРВОЕ carry
2418		["изменить", "change"], // 14
2419		["комод", "chest of drawers"], // 15
2420		["занавес", "curtain"], // 16
2421		["украшать", "decorate"], // 17
2422		["приветствие", "greetings"], // 18
2423		["Это выглядит фантастически!", "It looks fantastic!"], // 19
2424		["коврик", "mat"], // 20
2425		["MP3-плеер", "MP3 player"], // 21
2426		["Приятно познакомиться!", "Nice to meet you!"], // 22
2427		["нажимать", "press"], // 23
2428		["поднимать", "put up"], // 24
2429		["поднимать занавес", "put up the curtains"], // 25
2430		["вполне готов", "quite ready"], // 26
2431		["полки", "shelves"], // 27
2432		["отдыхать", "take a break"], // 28
2433		["хотя", "though"], // 29
2434		["верхний ярус кровати", "the top bed"], // 30
2435		["включить", "turn on"], // 31
2436		["близнецы", "twins"], // 32
2437		["наконец", "at last"], // 33
2438		["готовить", "cook"], // 34
2439		["украшение", "decoration"], // 35
2440		["гладить", "do the ironing"], // 36
2441		["пылесосить", "do the vacuuming"], // 37
2442		["мыть посуду", "do the washing-up"], // 38
2443		["наряжаться", "dress up"], // 39
2444		["стереть пыль с мебели", "dust the furniture"], // 40
2445		["забывать", "forget"], // 41
2446		["наверняка", "for sure"], // 42
2447		["гламурный", "glamorous"], // 43
2448		["тренироваться", "get some exercise"], // 44
2449		["ходить по магазинам", "go shopping"], // 45
2450		["проводить встречу, собрание", "have a meeting"], // 46
2451		["Я на диете.", "I'm on a diet."], // 47
2452		["Могу поспорить.", "I bet"], // 48
2453		["приглашение", "invitation"], // 49
2454		["заправлять кровать", "make the beds"], // 50
2455		["матч", "match"], // 51
2456		["мыть пол", "mop the floor"], // 52
2457		["ремонтник", "repairman"], // 53
2458		["безалкогольные напитки", "soft drinks"], // 54
2459		["спортивный", "sporty"], // 55
2460		["отключить", "switch off"], // 56
2461		["тематическая вечеринка", "theme party"], // 57
2462		["А что я?", "What about me?"], // 58
2463		["работать допоздна", "work late"], // 59
2464		["до тех пор, как", "as long as"], // 60
2465		["коллекционировать комиксы", "collect comics"], // 61
2466		["не против", "don't mind"], // 62
2467		["скачивать музыку", "download music"], // 63
2468		["получить информацию", "get information"], // 64
2469		["остаться на ночь", "go to a sleepover"], // 65
2470		["болтаться, проводить время", "hang out"], // 66
2471		["получать удовольствие", "have fun"], // 67
2472		["честный", "honest"], // 68
2473		["информация", "information"], // 69
2474		["возражать", "mind"], // 70
2475		["самостоятельно", "on my own"], // 71
2476		["общительный", "outgoing"], // 72
2477		["играть в спортивные игры", "play sports"], // 73
2478		["популярный", "popular"], // 74
2479		["предпочитать", "prefer"], // 75 - ПЕРВОЕ prefer
2480		["тихий", "quiet"], // 76
2481		["тест", "quiz"], // 77
2482		["читать журналы", "read magazines"], // 78
2483		["надёжный", "reliable"], // 79
2484		["отправлять текстовые сообщения", "send text messages"], // 80
2485		["общительный", "sociable"], // 81
2486		["искать информацию в интернете", "surf the Net"], // 82
2487		["приключение", "adventure"], // 83
2488		["бить", "beat"], // 84
2489		["пчела", "bee"], // 85
2490		["начинать", "begin"], // 86
2491		["герой книги, фильма", "character"], // 87
2492		["погоня", "chase"], // 88
2493		["соревноваться", "compete"], // 89
2494		["противоположный", "contrasting"], // 90
2495		["коридор", "corridor"], // 91
2496		["быть без ума от", "crazy about"], // 92
2497		["создавать", "create"], // 93
2498		["одеваться", "dress"], // 94
2499		["враг", "enemy"], // 95
2500		["исследовать", "explore"], // 96
2501		["фэнтези (жанр игр, книг)", "fantasy"], // 97
2502		["драться", "fight"], // 98
2503		["плыть", "float"], // 99
2504		["галактика", "galaxy"], // 100
2505		["присоединиться к", "join"], // 101
2506		["спрыгнуть", "jump off"], // 102
2507		["похитить", "kidnap"], // 103
2508		["должен петь", "must sing"], // 104
2509		["окрестности", "neighbourhood"], // 105
2510		["личность", "personality"], // 106
2511		["портрет", "portrait"], // 107
2512		["принцесса", "princess"], // 108
2513		["заключённый", "prisoner"], // 109
2514		["бежать за", "run after"], // 110
2515		["сохранять", "save"], // 111
2516		["делать заклинания", "spell-making"], // 112
2517		["сюжет", "storyline"], // 113
2518		["брать", "take up"], // 114
2519		["путешествовать по", "travel across"], // 115
2520		["волшебная палочка", "wand"], // 116
2521		["выполнять работу по дому", "do housework"], // 117
2522		["хобби", "hobby"], // 118
2523		["искать", "look for"], // 119
2524		["двигаться", "move"], // 120
2525		["осторожнее!", "watch out"], // 121
2526		["рядом со мной", "by my side"], // 122
2527		["потолок", "ceiling"], // 123
2528		["повседневная жизнь", "daily life"], // 124
2529		["герой", "hero"], // 125
2530		["изобретение", "invention"], // 126
2531		["лабиринт", "maze"], // 127
2532		["безопасно", "safely"], // 128
2533		["вонючий", "smelly"], // 129
2534		["космос", "space"], // 130
2535		["коснуться", "touch"], // 131
2536		["скучающий", "bored"], // 132
2537		["тщательно", "carefully"], // 133
2538		["подойти близко", "come close"], // 134
2539		["подойти к", "come up to"], // 135
2540		["компьютерный программист", "computer programmer"], // 136
2541		["проектировать, конструировать", "design"], // 137
2542		["человек, чьей работой является выгуливание собак", "dog walker"], // 138
2543		["модный", "fashionable"], // 139
2544		["модельер", "fashion designer"], // 140
2545		["приносить", "fetch"], // 141
2546		["Я не совсем уверен.", "I'm not so sure."], // 142
2547		["Звучит здорово.", "It sounds like fun."], // 143
2548		["укротитель львов", "lion tamer"], // 144
2549		["терпеливо", "patiently"], // 145
2550		["фотограф", "photographer"], // 146
2551		["тихо", "silently"], // 147
2552		["продавец-консультант", "shop assistant"], // 148
2553		["ветеринар", "vet"], // 149
2554		["виртуальная реальность", "virtual reality"], // 150
2555		["дикая природа", "wildlife"], // 151
2556		["храбрый", "brave"], // 152
2557		["взломщик", "burglar"], // 153
2558		["дворецкий", "butler"], // 154
2559		["профориентация", "career zone"], // 155
2560		["шофёр", "chauffeur"], // 156
2561		["творческий", "creative"], // 157
2562		["кроме", "except"], // 158
2563		["исправить", "fix"], // 159
2564		["любящий что-либо", "fond of"], // 160
2565		["дружелюбно", "friendly"], // 161
2566		["войти/выйти", "get into/get out of"], // 162
2567		["хирургия", "surgery"], // 163
2568		["карман", "pocket"], // 164
2569		["ограбление", "robbery"], // 165
2570		["микроавтобус", "minibus"], // 166
2571		["любящий", "loving"], // 167
2572		["антиквариат", "antiques"], // 168
2573		["сообщать, докладывать", "report"], // 169
2574		["развлечение", "entertainment"], // 170
2575		["стоить", "cost"], // 171
2576		["комплимент", "compliment"], // 172
2577		["трудолюбивый", "hard-working"], // 173
2578		["магазинный вор", "shoplifter"], // 174
2579		["вертолёт", "helicopter"], // 175
2580		["толпа", "crowd"], // 176
2581		["восхищаться", "admire"], // 177
2582		["добрый", "kind"], // 178
2583		["выход", "exit"], // 179
2584		["куст", "bush"], // 180
2585		["кемпинг", "camp"], // 181
2586		["сажать цветы", "plant flowers"], // 182
2587		["рассказ", "story"], // 183
2588		["бортпроводник", "flight attendant"], // 184
2589		["переусердствовать", "overdo"], // 185
2590		["корабль", "ship"], // 186
2591		["мотоцикл", "motorbike"], // 187
2592		["исполнять, выступать", "perform"], // 188
2593		["трамвай", "tram"], // 189
2594		["пересекать", "cross"], // 190
2595		["успешно", "successfully"], // 191
2596		["интересный", "interesting"], // 192
2597		["пропустить, пролистнуть", "*skip"], // 193
2598		["терпеливый", "patient"], // 194
2599		["зеленеть", "turn green"], // 195
2600		["метро", "subway"], // 196
2601		["личный", "personal"], // 197
2602		["удивительный", "amazing"], // 198
2603		["верить, полагать", "believe"], // 199
2604		["версия", "version"], // 200
2605		["в помещении", "indoors"], // 201
2606		["тренер", "coach"], // 202
2607		["крыло", "wing"], // 203
2608		["брать интервью, спрашивать", "interview"], // 204
2609		["на улице", "outdoors"], // 205
2610		["транспортные средства", "means of transport"], // 206
2611		["подземный", "underground"], // 207 - ВМЕСТО ВТОРОГО "prefer"
2612		["преступник", "criminal"], // 208
2613		["иметь сильную страсть к", "have a strong passion for"], // 209
2614		["фургон", "van"], // 210
2615		["согласно", "according to"], // 211
2616		["культура", "culture"], // 212
2617		["обойти", "get around"], // 213
2618		["сесть на/выйти из (get on the bus/get off the bus)", "get on/get off"], // 214
2619		["подарок", "gift"], // 215
2620		["инспектор", "inspector"], // 216
2621		["прибывать", "arrive"], // 217
2622		["фея", "fairy"], // 218
2623		["достопримечательность", "attraction"], // 219
2624		["успешный в чём-либо", "good at"], // 220
2625		["оканчиваться", "end up"], // 221
2626		["скутер", "scooter"], // 222
2627		["копировать", "copy"], // 223
2628		["лекарство", "medicine"], // 224
2629		["крошечные существа", "tiny creatures"], // 225
2630		["двухэтажный автобус", "double-decker bus"], // 226
2631		["легенда", "legend"], // 227
2632		["содержать", "contain"], // 228
2633		["миф", "myth"], // 229
2634		["иметь проблемы", "have trouble"], // 230
2635		["удивительно", "surprisingly"], // 231
2636		["проходить", "pass"], // 232
2637		["страстный", "passionate"], // 233
2638		["феи", "fairies"], // 234
2639		["посудомоечная машина", "dishwasher"], // 235
2640		["преступление", "crime"], // 236
2641		["подбирать", "pick up"], // 237
2642		["ток-шоу", "talk show"], // 238
2643		["ответственность", "responsibility"], // 239
2644		["одарённый", "gifted"], // 240
2645		["налить", "pour"], // 241
2646		["бестселлер", "best seller"], // 242
2647		["пушистый", "fluffy"], // 243
2648		["утомительный", "tiring"], // 244
2649		["оружие", "weapon"], // 245
2650		["пятнистый", "spotted"], // 246
2651		["уровень", "level"], // 247
2652		["лекарство", "cure"], // 248
2653		["шея", "neck"], // 249
2654		["страшный", "terrible"], // 250
2655		["целый", "whole"], // 251
2656		["кемпинг", "campsite"], // 252
2657		["учебный центр полётов", "flight training centre"], // 253
2658		["медведь", "bear"], // 254
2659		["в клеточку", "checked"], // 255
2660		["говорить", "say"], // 256
2661		["смеяться", "laugh"], // 257
2662		["всеобщий, главный", "general"], // 258
2663		["редкий", "rare"], // 259
2664		["сознательный", "conscious"], // 260
2665		["загорать", "go sunbathing"], // 261
2666		["куртка", "jacket"], // 262
2667		["строгий", "formal"], // 263
2668		["узор", "pattern"], // 264
2669		["закрывать", "shut"], // 265
2670		["петь", "sing"], // 266
2671		["лёгкий", "easy"], // 267
2672		["использованный", "used"], // 268
2673		["открытый", "open"], // 269
2674		["садовник", "gardener"], // 270
2675		["рак", "cancer"], // 271
2676		["леопард", "leopard"], // 272
2677		["показ мод", "fashion show"], // 273
2678		["аксессуары", "accessories"], // 274
2679		["встречать", "meet"], // 275
2680		["лучший", "best"], // 276
2681		["подозрительный", "suspicious"], // 277
2682		["светлый", "light"], // 278
2683		["улитка", "snail"], // 279
2684		["размер", "size"], // 280
2685		["ставить", "put"], // 281
2686		["холодный", "cold"], // 282
2687		["поездка", "trip"], // 283
2688		["ёж", "hedgehog"], // 284
2689		["стейк", "steak"], // 285
2690		["трясти", "shake"], // 286
2691		["есть", "eat"], // 287
2692		["спрашивать", "ask"], // 288
2693		["дружественный", "friendly"], // 289
2694		["местный", "local"], // 290
2695		["древний", "ancient"], // 291
2696		["отправиться в поход", "go camping"], // 292
2697		["заняться виндсерфингом", "go windsurfing"], // 293
2698		["носки", "socks"], // 294
2699		["Какой у вас размер?", "What size are you?"], // 295
2700		["давать", "give"], // 296
2701		["кожа", "leather"], // 297
2702		["смешивать", "mix"], // 298
2703		["автоматический", "automatic"], // 299
2704		["типичный", "typical"], // 300
2705		["полезный", "useful"], // 301
2706		["змея", "snake"], // 302
2707		["действовать", "act"], // 303
2708		["немного узкий", "a bit tight"], // 304
2709		["голодный", "hungry"], // 305
2710		["пустыня", "desert"], // 306
2711		["сурок", "groundhog"], // 307
2712		["брюки", "trousers"], // 308
2713		["тень", "shadow"], // 309
2714		["говорить", "speak"], // 310
2715		["спина", "back"], // 311
2716		["пальто", "coat"], // 312
2717		["способный", "able"], // 313
2718		["острый", "sharp"], // 314
2719		["выпускать", "release"], // 315
2720		["моряк", "sailor"], // 316
2721		["пить", "drink"], // 317
2722		["испуганный", "afraid"], // 318
2723		["мощный", "powerful"], // 319
2724		["полезный", "helpful"], // 320
2725		["ворота", "gate"], // 321
2726		["листья", "leaves"], // 322
2727		["схватить", "grip"], // 323
2728		["необычный", "unusual"], // 324
2729		["разумный", "reasonable"], // 325
2730		["позже", "later on"], // 326
2731		["население", "population"], // 327
2732		["коала", "koala"], // 328
2733		["впадать в спячку", "hibernate"], // 329
2734		["великолепный", "splendid"], // 330
2735		["тревожный", "anxious"], // 331
2736		["частный", "private"], // 332
2737		["стихотворение", "poem"], // 333
2738		["ушибить", "injure"], // 334
2739		["отправлять", "send"], // 335
2740		["ясный, чистый", "clear"], // 336
2741		["золотая рыбка", "goldfish"], // 337
2742		["фламинго", "flamingo"], // 338
2743		["ломтики", "slices"], // 339
2744		["ветер дует", "wind blows"], // 340
2745		["тунец", "tuna"], // 341
2746		["ломать", "break"], // 342
2747		["устанавливать", "set"], // 343
2748		["писать", "write"], // 344
2749		["левый", "left"], // 345
2750		["эффективный", "efficient"], // 346
2751		["международный", "international"], // 347
2752		["волк", "wolf"], // 348
2753		["секретное сообщение", "secret message"], // 349
2754		["ежедневный", "daily"], // 350
2755		["щенок", "puppy"], // 351
2756		["сердитый", "angry"], // 352
2757		["обезьяна", "monkey"], // 353
2758		["тяжёлый", "heavy"], // 354
2759		["перебраться, перейти", "get across"], // 355
2760		["звезда", "star"], // 356
2761		["примерить", "try on"], // 357
2762		["обращаться к", "turn to"], // 358
2763		["костюм", "suit"], // 359
2764		["толстый", "thick"], // 360
2765		["дорогой", "expensive"], // 361
2766		["дешёвая игрушка", "cheap toy"], // 362
2767		["включать в себя", "include"], // 363
2768		["удерживать", "hold"], // 364
2769		["прятать", "hide"], // 365
2770		["улучшаться", "improve"], // 366 - ПЕРВОЕ improve
2771		["вероятный, возможный", "likely"], // 367
2772		["тёмный", "dark"], // 368
2773		["неофициальный", "informal"], // 369
2774		["исторический", "historical"], // 370
2775		["широкий", "wide"], // 371
2776		["старомодный", "old-fashioned"], // 372
2777		["простой", "plain"], // 373
2778		["торговый центр", "mall"], // 374
2779		["идти", "go"], // 375
2780		["конечный", "final"], // 376
2781		["замечательный, выдающийся", "remarkable"], // 377
2782		["определённый, отчётливый", "distinct"], // 378
2783		["язык", "tongue"], // 379
2784		["лайм", "lime"], // 380
2785		["мешковатый", "baggy"], // 381
2786		["мести", "sweep"], // 382
2787		["бежать", "run"], // 383
2788		["снежный", "snowy"], // 384
2789		["аккуратный", "tidy"], // 385 - ВМЕСТО ВТОРОГО "improve"
2790		["худший", "worst"], // 386 - ВМЕСТО "сани"
2791		["загрязнение", "pollution"], // 387
2792		["возмущать", "irritate"], // 388
2793		["запирать", "lock"], // 389
2794		["психологический", "psychological"], // 390
2795		["поздний, последний", "late"], // 391
2796		["окружающая среда", "environment"], // 392
2797		["центральный", "central"], // 393
2798		["краб", "crab"], // 394
2799		["курение", "smoking"], // 395 - ВМЕСТО ВТОРОГО "carry"
2800		["смотреть", "look"], // 396
2801		["физический", "physical"], // 397
2802		["приятный, весёлый", "pleasant"], // 398
2803		["блестящий", "brilliant"], // 399
2804		["сокровище", "treasure"], // 400
2805		["радость", "delight"], // 401
2806		["мелко резать", "chop"], // 402
2807		["светиться", "glow"], // 403
2808		["тревожность", "anxiety"], // 404
2809		["одинокий", "lonely"], // 405
2810		["грубый", "rude"], // 406
2811		["светить", "shine"], // 407
2812		["песок", "sand"], // 408
2813		["энергичный", "energetic"], // 409
2814		["торговаться", "bargain"], // 410
2815		["покидать", "leave"], // 411
2816		["заключать брак", "marry"], // 412
2817		["платить", "pay"], // 413
2818		["одалживать", "lend"], // 414
2819		["терпеть неудачу, скучать", "miss"], // 415
2820		["испуганный", "scared"], // 416
2821		["мешок", "bag"], // 417
2822		["принимать калории", "take calories"], // 418
2823		["запись", "record"], // 419
2824		["шутить", "joke"], // 420
2825		["неважно", "no matter"], // 421 !!!!!!!!!!!!!!!! 6
2826		["убивать", "kill"], // 422
2827		["чтобы ни было", "whatever"], // 423
2828		["звонить", "call"], // 424
2829		["уродливый", "ugly"], // 425
2830		["прямой, верный", "right"], // 426
2831		["существующий", "existing"], // 427
2832		["облачный", "cloudy"], // 428
2833		["жёсткий, усердный", "hard"], // 429
2834		["продвинутый, расширенный", "advanced"], // 430
2835		["гепард", "cheetah"], // 431 !!!!!!!!!!!!!!!! 5
2836		["учёный", "scientist"], // 432
2837		["немного сложно", "a bit difficult"], // 433
2838		["молочные продукты", "dairy products"], // 434
2839		["волнующее событие", "exciting event"], // 435
2840		["жить", "live"], // 436
2841		["судить", "judge"], // 437
2842		["ночной кошмар", "nightmare"], // 438
2843		["отчаявшиеся домохозяйки", "desperate housewives"], // 439
2844		["сильный", "strong"], // 440 
2845		["пиво", "beer"], // 441 !!!!!!!!!!!!!!!! 4
2846		["опыт", "experience"], // 442
2847		["будущее", "future"], // 443
2848		["неспособный", "unable"], // 444
2849		["политический", "political"], // 445
2850		["религиозный", "religious"], // 446
2851		["расшифровывать", "decode"], // 447
2852		["уничтожить", "destroy"], // 448
2853		["горб", "hump"], // 449
2854		["Поймал тебя!", "Got you!"], // 450
2855		["общий, популярный", "common"], // 451 !!!!!!!!!!!!!!!! 3
2856		["принимающий решение", "decision-maker"], // 452
2857		["ресницы", "eyelashes"], // 453
2858		["ковбой", "cowboy"], // 454
2859		["слабый", "weak"], // 455
2860		["прошлый, прошедший", "past"], // 456
2861		["вдохновлять", "inspire"], // 457
2862		["гражданин", "citizen"], // 458
2863		["это поле такое чудесное!", "this field is so marvelous"], // 459
2864		["мёд", "honey"], // 460
2865		["Это выгодная сделка.", "It's a deal."], // 461 !!!!!!!!!!!!!!!! 2
2866		["ленты", "ribbons"], // 462
2867		["читать", "read"], // 463
2868		["чувствовать", "feel"], // 464
2869		["свободный", "free"], // 465
2870		["трудный", "difficult"], // 466
2871		["осторожный", "careful"], // 467
2872		["это баг или фича?", "Is this bug or feature?"], // 468
2873		["передай мне", "pass me"], // 469
2874		["секунда", "second"], // 470
2875		["полосатый", "striped"], // 471 !!!!!!!!!!!!!!!! 1
2876		["развивать", "develop"], // 472
2877		["правительство", "government"], // 473
2878		["верный", "loyal"], // 474
2879		["короткий", "short"], // 475
2880		["предотвращать", "prevent"], // 476
2881		["галстук", "tie"], // 477
2882		["огромный", "huge"], // 478
2883		["обёртка, фантик", "sweet wrapper"], // 479
2884		["искать", "seek"] // 480
2885];
2886
2887let words_count = set_of_words.length;
2888
2889let words_10 = Math.floor(words_count / nw);
2890if(nw*words_10 != words_count)	{
2891	words_10=words_10+1;
2892}
2893let choise=words_10;
2894let	name = "Алеша";
2895name=prompt("Как вас зовут", name);
2896	
2897loop = 1;
2898while (loop == 1) {
2899
2900	let date = new Date(2026, 8, 3); // 12 января 2026
2901	date.setHours(0, 0, 0, 0);
2902
2903
2904// plan_date будет вычисляться позже
2905let plan_date = new Date(2026, 8, 3); // Используем base_date вместо текущей даты
2906	plan_date.setHours(0, 0, 0, 0);
2907
2908	
2909	const current_date = new Date();// Текущая дата на начало суток
2910	current_date.setHours(0, 0, 0, 0);
2911	date2 = current_date.toLocaleDateString();
2912	
2913	let zap = "";
2914
2915	for (let i = 1; i <= words_10; i++) {
2916		zap = zap +
2917			String(i).padStart(3) + ":    " +
2918			String(nw * (words_10 - i)+1).padStart(3) + "-" +
2919			(nw * (1 + words_10 - i)) + "   " +
2920			date.toLocaleDateString() + "\n";
2921		
2922		date1 = date.toLocaleDateString();
2923
2924		if (date1 == date2) {
2925			choise = i;
2926		};
2927
2928		date.setDate(date.getDate() + 1);
2929		date.setHours(0, 0, 0, 0);
2930	}
2931
2932	choise = prompt(zap, choise);
2933	
2934
2935
2936plan_date.setDate(plan_date.getDate() + parseInt(choise) - 1); // -1 если нужно смещение
2937plan_date.setHours(0, 0, 0, 0);
2938		let aa=plan_date.toLocaleDateString('ru-RU');
2939	
2940	const massiv_slov = set_of_words.slice(nw * (words_10 - choise), nw * (1 + words_10 - choise));
2941	result = "";
2942	result = result + `выбраный диапазон: ${nw * (words_10 - choise)+1}-${nw * (1 + words_10 - choise) } ${aa}\n\n`;
2943
2944	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
2945	alert(result);
2946
2947
2948
2949    // Вариант направления перевода
2950    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
2951    const lang = prime_lang == 0 ? 0 : 1;
2952
2953    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
2954    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
2955
2956    async function delayedFunction() {
2957        await new Promise(resolve => setTimeout(resolve, 1000));
2958    }
2959
2960    //перемешивание слов
2961    prime_sum_slov = massiv_slov.length;
2962
2963    for (j = 0; j < prime_sum_slov; j++) {
2964        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
2965        temp = massiv_slov[r];
2966        massiv_slov[r] = massiv_slov[j];
2967        massiv_slov[j] = temp;
2968    }
2969    //проверка перемешивания словundefined
2970    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
2971    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
2972
2973    // перебор массива слов
2974    sum_slov = 0;
2975    for (index = 0; index < massiv_slov.length; index++) {
2976        sum_slov = sum_slov + 1;
2977        // произношение
2978
2979        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
2980        u.text = massiv_slov[index][lang];
2981        delayedFunction();
2982        u.rate = 1;
2983        speechSynthesis.speak(u);
2984
2985        // ввод что было сказано 
2986        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
2987        test = prompt(massiv_slov[index][lang]);
2988        if (test === null) {
2989            massiv_slov[massiv_slov.length] = massiv_slov[index];
2990            x = oshibki.get(massiv_slov[index]);
2991            if (x == null) { x = 0; }
2992            x++;
2993            oshibki.set(massiv_slov[index], x);
2994            break;
2995        }
2996        //	u.lang = 'en-UK';
2997        //	u.text = massiv_slov[index][1];
2998        //	speechSynthesis.speak(u);  
2999
3000        // проверка того что было сказано
3001        if (massiv_slov[index][(lang + 1) % 2] !== test) {
3002            u.lang = 'en-UK';
3003            u.text = 'Wrong!     The correct answer is        ';
3004            delayedFunction();
3005            speechSynthesis.speak(u);
3006
3007            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3008            u.text = massiv_slov[index][(lang + 1) % 2];
3009            delayedFunction();
3010            speechSynthesis.speak(u);
3011            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
3012            );
3013
3014            massiv_slov[massiv_slov.length] = massiv_slov[index];
3015            x = oshibki.get(massiv_slov[index]);
3016            if (x == null) { x = 0; }
3017            x++;
3018            //alert ("x="+x);
3019            oshibki.set(massiv_slov[index], x);
3020        }
3021        else {
3022            u.lang = 'en-UK';
3023            u.text = 'Great!     ';
3024            if (lang == 0) {
3025                u.text = u.text + test;
3026            }
3027            u.text = u.text + '    is the correct answer!';
3028            delayedFunction();
3029            speechSynthesis.speak(u);
3030
3031            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
3032            );
3033        }
3034    }
3035    //вывод ошибок
3036		let now = new Date();
3037    otchet0 = '';
3038    otchet = '';
3039
3040    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
3041    otchet = name+"\nПо диапазону \""  + (nw * (words_10 - choise)+1)+"-" + nw * (1 + words_10 - choise)+
3042         "\" за "+ aa +"\nсостоящиму из "+nw+" слов, \nбыло задано " + sum_slov +//"+ plan_date +"
3043        " вопросов,\n в направлении " +
3044        lang1+"\n"
3045        + now.toString()
3046		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
3047
3048
3049
3050    for (pair of oshibki.entries()) {
3051        // pair - это массив [key, values]
3052        //alert(pair[0]); // ключ
3053        //alert(pair[1]); // значение
3054        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
3055        otchet0 = otchet0 + `${pair[0]}\n`;
3056
3057        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
3058    }
3059
3060    alert(otchet);
3061    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
3062
3063    alert(otchet0);
3064    oshibki.clear()
3065    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
3066}
3067}</script>
3067
3068<!-- end Simple Custom CSS and JS -->
3069<!-- start Simple Custom CSS and JS -->
3070<script type="text/javascript">
3071if (window.location.pathname == '/eng-vlada/')
3072{
3073
3074oshibki = new Map();
3075u = new SpeechSynthesisUtterance();
3076u.rate = 1;
3077
3078const massiv_slov  = [
3079    // Основные природные катастрофы
3080    ["лавина, снежный обвал", "avalanche"],
3081    ["циклон", "cyclone"],
3082    ["засуха", "drought"],
3083    ["землетрясение", "earthquake"],
3084    ["наводнение, потоп", "flood"],
3085    ["лесной пожар", "forest fire"],
3086    ["ураган", "hurricane"],
3087    ["торнадо, смерч", "tornado"],
3088    ["цунами", "tsunami"],
3089    ["извержение вулкана", "volcanic eruption"],
3090    
3091    // Сопутствующая лексика
3092    ["ущерб, повреждение", "damage"],
3093    ["разрушение", "destruction"],
3094    ["выживший человек", "survivor"],
3095    ["поисково-спасательная команда", "rescue team"],
3096    ["обрушиваться", "collapse"],
3097    ["происходить, случаться", "occur"],
3098    ["ранить, травмировать", "injure"],
3099    ["сильный, мощный", "forceful"],
3100    ["массивный, огромный", "massive"],
3101    ["ужасающий, ужасный", "horrific"],
3102    
3103    // Устойчивые выражения
3104    ["потрескавшиеся дороги", "cracked roads"],
3105    ["разрушенные мосты", "collapsed bridges"],
3106    ["огромные волны", "massive waves"],
3107    ["сильный подземный толчок", "forceful tremor"],
3108    ["спасательное снаряжение, припасы", "rescue supplies"]
3109	
3110];
3111
3112let words_count = massiv_slov.length;
3113
3114	
3115loop = 1;
3116while (loop == 1) {
3117
3118	result = "Слова для работы над ошибками";
3119	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
3120	alert(result);
3121
3122    // Вариант направления перевода
3123    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
3124    const lang = prime_lang == 0 ? 0 : 1;
3125
3126    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
3127    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
3128
3129    async function delayedFunction() {
3130        await new Promise(resolve => setTimeout(resolve, 1000));
3131    }
3132
3133    //перемешивание слов
3134    prime_sum_slov = massiv_slov.length;
3135
3136    for (j = 0; j < prime_sum_slov; j++) {
3137        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
3138        temp = massiv_slov[r];
3139        massiv_slov[r] = massiv_slov[j];
3140        massiv_slov[j] = temp;
3141    }
3142    //проверка перемешивания словundefined
3143    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
3144    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
3145
3146    // перебор массива слов
3147    sum_slov = 0;
3148    for (index = 0; index < massiv_slov.length; index++) {
3149        sum_slov = sum_slov + 1;
3150        // произношение
3151
3152        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
3153        u.text = massiv_slov[index][lang];
3154        delayedFunction();
3155        u.rate = 1;
3156        speechSynthesis.speak(u);
3157
3158        // ввод что было сказано 
3159        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3160        test = prompt(massiv_slov[index][lang]);
3161        if (test === null) {
3162            massiv_slov[massiv_slov.length] = massiv_slov[index];
3163            x = oshibki.get(massiv_slov[index]);
3164            if (x == null) { x = 0; }
3165            x++;
3166            oshibki.set(massiv_slov[index], x);
3167            break;
3168        }
3169        //	u.lang = 'en-UK';
3170        //	u.text = massiv_slov[index][1];
3171        //	speechSynthesis.speak(u);  
3172
3173        // проверка того что было сказано
3174        if (massiv_slov[index][(lang + 1) % 2] !== test) {
3175            u.lang = 'en-UK';
3176            u.text = 'Wrong!     The correct answer is        ';
3177            delayedFunction();
3178            speechSynthesis.speak(u);
3179
3180            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3181            u.text = massiv_slov[index][(lang + 1) % 2];
3182            delayedFunction();
3183            speechSynthesis.speak(u);
3184            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
3185            );
3186
3187            massiv_slov[massiv_slov.length] = massiv_slov[index];
3188            x = oshibki.get(massiv_slov[index]);
3189            if (x == null) { x = 0; }
3190            x++;
3191            //alert ("x="+x);
3192            oshibki.set(massiv_slov[index], x);
3193        }
3194        else {
3195            u.lang = 'en-UK';
3196            u.text = 'Great!     ';
3197            if (lang == 0) {
3198                u.text = u.text + test;
3199            }
3200            u.text = u.text + '    is the correct answer!';
3201            delayedFunction();
3202            speechSynthesis.speak(u);
3203
3204            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
3205            );
3206        }
3207    }
3208    //вывод ошибок
3209		let now = new Date();
3210    otchet0 = '';
3211    otchet = '';
3212    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
3213    otchet = "    ВЛАДА    \nПо списку слов для работы над ошибками \nсостоящиму из " + words_count + " слов, \nбыло задано " + sum_slov +
3214        " вопросов,\n в направлении " +
3215        lang1+"\n"
3216        + now.toString()
3217		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
3218
3219
3220
3221    for (pair of oshibki.entries()) {
3222        // pair - это массив [key, values]
3223        //alert(pair[0]); // ключ
3224        //alert(pair[1]); // значение
3225        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
3226        otchet0 = otchet0 + `${pair[0]}\n`;
3227
3228        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
3229    }
3230
3231    alert(otchet);
3232    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
3233
3234    alert(otchet0);
3235    oshibki.clear()
3236    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
3237}
3238}</script>
3238
3239<!-- end Simple Custom CSS and JS -->
3240<!-- start Simple Custom CSS and JS -->
3241<script type="text/javascript">
3242if (window.location.pathname == '/eng-alexey/')
3243{
3244let nw=10;
3245oshibki = new Map();
3246u = new SpeechSynthesisUtterance();
3247u.rate = 1;
3248
3249const set_of_words = [
3250		["мост", "bridge"], // 2
3251		["Не стоит благодарности.", "Don't mention it."], // 3
3252		["тысяча", "thousand"], // 7
3253		["нести", "carry"], // 13 - ПЕРВОЕ carry
3254		["изменить", "change"], // 14
3255		["украшать", "decorate"], // 17
3256		["хотя", "though"], // 29
3257		["верхний ярус кровати", "the top bed"], // 30
3258		["включить", "turn on"], // 31
3259		["наконец", "at last"], // 33
3260		["украшение", "decoration"], // 35
3261		["гладить", "do the ironing"], // 36
3262		["мыть посуду", "do the washing-up"], // 38
3263		["стереть пыль с мебели", "dust the furniture"], // 40
3264		["забывать", "forget"], // 41
3265		["наверняка", "for sure"], // 42
3266		["до тех пор, как", "as long as"], // 60
3267		["не против", "don't mind"], // 62
3268		["остаться на ночь", "go to a sleepover"], // 65
3269		["болтаться, проводить время", "hang out"], // 66
3270		["получать удовольствие", "have fun"], // 67
3271		["честный", "honest"], // 68
3272		["возражать", "mind"], // 70
3273		["самостоятельно", "on my own"], // 71
3274		["общительный", "outgoing"], // 72
3275		["общительный", "sociable"], // 81
3276		["приключение", "adventure"], // 83
3277		["бить", "beat"], // 84
3278		["герой книги, фильма", "character"], // 87
3279		["погоня", "chase"], // 88
3280		["соревноваться", "compete"], // 89
3281		["противоположный", "contrasting"], // 90
3282		["коридор", "corridor"], // 91
3283		["быть без ума от", "crazy about"], // 92
3284		["плыть", "float"], // 99
3285		["присоединиться к", "join"], // 101
3286		["окрестности", "neighbourhood"], // 105
3287		["личность", "personality"], // 106
3288		["путешествовать по", "travel across"], // 115
3289		["искать", "look for"], // 119
3290		["двигаться", "move"], // 120
3291		["осторожнее!", "watch out"], // 121
3292		["рядом со мной", "by my side"], // 122
3293		["потолок", "ceiling"], // 123
3294		["изобретение", "invention"], // 126
3295		["безопасно", "safely"], // 128
3296		["вонючий", "smelly"], // 129
3297		["космос", "space"], // 130
3298		["скучающий", "bored"], // 132
3299		["проектировать, конструировать", "design"], // 137
3300		["Звучит здорово.", "It sounds like fun."], // 143
3301		["терпеливо", "patiently"], // 145
3302		["тихо", "silently"], // 147
3303		["продавец-консультант", "shop assistant"], // 148
3304		["дикая природа", "wildlife"], // 151
3305		["взломщик", "burglar"], // 153
3306		["кроме", "except"], // 158
3307		["любящий что-либо", "fond of"], // 160
3308		["хирургия", "surgery"], // 163
3309		["ограбление", "robbery"], // 165
3310		["любящий", "loving"], // 167
3311		["антиквариат", "antiques"], // 168
3312		["сообщать, докладывать", "report"], // 169
3313		["развлечение", "entertainment"], // 170
3314		["стоить", "cost"], // 171
3315		["толпа", "crowd"], // 176
3316		["восхищаться", "admire"], // 177
3317		["куст", "bush"], // 180
3318		["бортпроводник", "flight attendant"], // 184
3319		["переусердствовать", "overdo"], // 185
3320		["исполнять, выступать", "perform"], // 188
3321		["трамвай", "tram"], // 189
3322		["пересекать", "cross"], // 190
3323		["метро", "subway"], // 196
3324		["удивительный", "amazing"], // 198
3325		["верить, полагать", "believe"], // 199
3326		["тренер", "coach"], // 202
3327		["транспортные средства", "means of transport"], // 206
3328		["преступник", "criminal"], // 208
3329		["фургон", "van"], // 210
3330		["согласно", "according to"], // 211
3331		["культура", "culture"], // 212
3332		["обойти", "get around"], // 213
3333		["сесть на/выйти из (get on the bus/get off the bus)", "get on/get off"], // 214
3334		["подарок", "gift"], // 215
3335		["прибывать", "arrive"], // 217
3336		["достопримечательность", "attraction"], // 219
3337		["оканчиваться", "end up"], // 221
3338		["лекарство", "medicine"], // 224
3339		["содержать", "contain"], // 228
3340		["миф", "myth"], // 229
3341		["удивительно", "surprisingly"], // 231
3342		["проходить", "pass"], // 232
3343		["страстный", "passionate"], // 233
3344		["посудомоечная машина", "dishwasher"], // 235
3345		["ток-шоу", "talk show"], // 238
3346		["ответственность", "responsibility"], // 239
3347		["одарённый", "gifted"], // 240
3348		["налить", "pour"], // 241
3349		["утомительный", "tiring"], // 244
3350		["пятнистый", "spotted"], // 246
3351		["лекарство", "cure"], // 248
3352		["страшный", "terrible"], // 250
3353		["целый", "whole"], // 251
3354		["кемпинг", "campsite"], // 252
3355		["в клеточку", "checked"], // 255
3356		["всеобщий, главный", "general"], // 258
3357		["сознательный", "conscious"], // 260
3358		["загорать", "go sunbathing"], // 261
3359		["узор", "pattern"], // 264
3360		["использованный", "used"], // 268
3361		["садовник", "gardener"], // 270
3362		["рак", "cancer"], // 271
3363		["подозрительный", "suspicious"], // 277
3364		["улитка", "snail"], // 279
3365		["ставить", "put"], // 281
3366		["поездка", "trip"], // 283
3367		["ёж", "hedgehog"], // 284
3368		["стейк", "steak"], // 285
3369		["спрашивать", "ask"], // 288
3370		["древний", "ancient"], // 291
3371		["заняться виндсерфингом", "go windsurfing"], // 293
3372		["кожа", "leather"], // 297
3373		["автоматический", "automatic"], // 299
3374		["полезный", "useful"], // 301
3375		["действовать", "act"], // 303
3376		["немного узкий", "a bit tight"], // 304
3377		["пустыня", "desert"], // 306
3378		["сурок", "groundhog"], // 307
3379		["брюки", "trousers"], // 308
3380		["тень", "shadow"], // 309
3381		["пальто", "coat"], // 312
3382		["выпускать", "release"], // 315
3383		["моряк", "sailor"], // 316
3384		["испуганный", "afraid"], // 318
3385		["мощный", "powerful"], // 319
3386		["полезный", "helpful"], // 320
3387		["схватить", "grip"], // 323
3388		["необычный", "unusual"], // 324
3389		["разумный", "reasonable"], // 325
3390		["позже", "later on"], // 326
3391		["впадать в спячку", "hibernate"], // 329
3392		["великолепный", "splendid"], // 330
3393		["тревожный", "anxious"], // 331
3394		["частный", "private"], // 332
3395		["ушибить", "injure"], // 334
3396		["ломтики", "slices"], // 339
3397		["ветер дует", "wind blows"], // 340
3398		["тунец", "tuna"], // 341
3399		["ломать", "break"], // 342
3400		["устанавливать", "set"], // 343
3401		["писать", "write"], // 344
3402		["эффективный", "efficient"], // 346
3403		["международный", "international"], // 347
3404		["щенок", "puppy"], // 351
3405		["сердитый", "angry"], // 352
3406		["тяжёлый", "heavy"], // 354
3407		["перебраться, перейти", "get across"], // 355
3408		["примерить", "try on"], // 357
3409		["толстый", "thick"], // 360
3410		["удерживать", "hold"], // 364
3411		["улучшаться", "improve"], // 366 - ПЕРВОЕ improve
3412		["вероятный, возможный", "likely"], // 367
3413		["неофициальный", "informal"], // 369
3414		["широкий", "wide"], // 371
3415		["простой", "plain"], // 373
3416		["замечательный, выдающийся", "remarkable"], // 377
3417		["определённый, отчётливый", "distinct"], // 378
3418		["язык", "tongue"], // 379
3419		["мести", "sweep"], // 382
3420		["аккуратный", "tidy"], // 385 - ВМЕСТО ВТОРОГО "improve"
3421		["худший", "worst"], // 386 - ВМЕСТО "сани"
3422		["загрязнение", "pollution"], // 387
3423		["возмущать", "irritate"], // 388
3424		["психологический", "psychological"], // 390
3425		["окружающая среда", "environment"], // 392
3426		["смотреть", "look"], // 396
3427		["приятный, весёлый", "pleasant"], // 398
3428		["блестящий", "brilliant"], // 399
3429		["радость", "delight"], // 401
3430		["мелко резать", "chop"], // 402
3431		["светиться", "glow"], // 403
3432		["тревожность", "anxiety"], // 404
3433		["грубый", "rude"], // 406
3434		["песок", "sand"], // 408
3435		["торговаться", "bargain"], // 410
3436		["покидать", "leave"], // 411
3437		["заключать брак", "marry"], // 412
3438		["одалживать", "lend"], // 414
3439		["испуганный", "scared"], // 416
3440		["запись", "record"], // 419
3441		["звонить", "call"], // 424
3442		["существующий", "existing"], // 427
3443		["жёсткий, усердный", "hard"], // 429
3444		["продвинутый, расширенный", "advanced"], // 430
3445		["гепард", "cheetah"], // 431 !!!!!!!!!!!!!!!! 5
3446		["учёный", "scientist"], // 432
3447		["судить", "judge"], // 437
3448		["неспособный", "unable"], // 444
3449		["общий, популярный", "common"], // 451 !!!!!!!!!!!!!!!! 3
3450		["принимающий решение", "decision-maker"], // 452
3451		["слабый", "weak"], // 455
3452		["вдохновлять", "inspire"], // 457
3453		["чувствовать", "feel"], // 464
3454		["трудный", "difficult"], // 466
3455		["развивать", "develop"], // 472
3456		["правительство", "government"], // 473
3457		["предотвращать", "prevent"], // 476
3458];
3459let words_count = set_of_words.length;
3460
3461let words_10 = Math.floor(words_count / nw);
3462if(nw*words_10 != words_count)	{
3463	words_10=words_10+1;
3464}
3465let choise=words_10;
3466let	name = "Алеша";
3467name=prompt("Как вас зовут", name);
3468	
3469loop = 1;
3470while (loop == 1) {
3471
3472	let date = new Date(2026, 1, 24); // 23 февраля 2026
3473	date.setHours(0, 0, 0, 0);
3474
3475
3476// plan_date будет вычисляться позже
3477let plan_date = new Date(2026, 0, 13); // Используем base_date вместо текущей даты
3478	plan_date.setHours(0, 0, 0, 0);
3479
3480	
3481	const current_date = new Date();// Текущая дата на начало суток
3482	current_date.setHours(0, 0, 0, 0);
3483	date2 = current_date.toLocaleDateString();
3484	
3485	let zap = "";
3486
3487	for (let i = 1; i <= words_10; i++) {
3488		zap = zap +
3489			String(i).padStart(3) + ":    " +
3490			String(nw * (words_10 - i)+1).padStart(3) + "-" +
3491			(nw * (1 + words_10 - i)) + "   " +
3492			date.toLocaleDateString() + "\n";
3493		
3494		date1 = date.toLocaleDateString();
3495
3496		if (date1 == date2) {
3497			choise = i;
3498		};
3499
3500		date.setDate(date.getDate() + 1);
3501		date.setHours(0, 0, 0, 0);
3502	}
3503
3504	choise = prompt(zap, choise);
3505	
3506
3507
3508plan_date.setDate(plan_date.getDate() + parseInt(choise) - 1); // -1 если нужно смещение
3509plan_date.setHours(0, 0, 0, 0);
3510		let aa=plan_date.toLocaleDateString('ru-RU');
3511	
3512	const massiv_slov = set_of_words.slice(nw * (words_10 - choise), nw * (1 + words_10 - choise));
3513	result = "";
3514	result = result + `выбраный диапазон: ${nw * (words_10 - choise)+1}-${nw * (1 + words_10 - choise) } ${aa}\n\n`;
3515
3516	result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
3517	alert(result);
3518
3519
3520
3521    // Вариант направления перевода
3522    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
3523    const lang = prime_lang == 0 ? 0 : 1;
3524
3525    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
3526    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
3527
3528    async function delayedFunction() {
3529        await new Promise(resolve => setTimeout(resolve, 1000));
3530    }
3531
3532    //перемешивание слов
3533    prime_sum_slov = massiv_slov.length;
3534
3535    for (j = 0; j < prime_sum_slov; j++) {
3536        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
3537        temp = massiv_slov[r];
3538        massiv_slov[r] = massiv_slov[j];
3539        massiv_slov[j] = temp;
3540    }
3541    //проверка перемешивания словundefined
3542    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
3543    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
3544
3545    // перебор массива слов
3546    sum_slov = 0;
3547    for (index = 0; index < massiv_slov.length; index++) {
3548        sum_slov = sum_slov + 1;
3549        // произношение
3550
3551        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
3552        u.text = massiv_slov[index][lang];
3553        delayedFunction();
3554        u.rate = 1;
3555        speechSynthesis.speak(u);
3556
3557        // ввод что было сказано 
3558        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3559        test = prompt(massiv_slov[index][lang]);
3560        if (test === null) {
3561            massiv_slov[massiv_slov.length] = massiv_slov[index];
3562            x = oshibki.get(massiv_slov[index]);
3563            if (x == null) { x = 0; }
3564            x++;
3565            oshibki.set(massiv_slov[index], x);
3566            break;
3567        }
3568        //	u.lang = 'en-UK';
3569        //	u.text = massiv_slov[index][1];
3570        //	speechSynthesis.speak(u);  
3571
3572        // проверка того что было сказано
3573        if (massiv_slov[index][(lang + 1) % 2] !== test) {
3574            u.lang = 'en-UK';
3575            u.text = 'Wrong!     The correct answer is        ';
3576            delayedFunction();
3577            speechSynthesis.speak(u);
3578
3579            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3580            u.text = massiv_slov[index][(lang + 1) % 2];
3581            delayedFunction();
3582            speechSynthesis.speak(u);
3583            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
3584            );
3585
3586            massiv_slov[massiv_slov.length] = massiv_slov[index];
3587            x = oshibki.get(massiv_slov[index]);
3588            if (x == null) { x = 0; }
3589            x++;
3590            //alert ("x="+x);
3591            oshibki.set(massiv_slov[index], x);
3592        }
3593        else {
3594            u.lang = 'en-UK';
3595            u.text = 'Great!     ';
3596            if (lang == 0) {
3597                u.text = u.text + test;
3598            }
3599            u.text = u.text + '    is the correct answer!';
3600            delayedFunction();
3601            speechSynthesis.speak(u);
3602
3603            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
3604            );
3605        }
3606    }
3607    //вывод ошибок
3608		let now = new Date();
3609    otchet0 = '';
3610    otchet = '';
3611
3612    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
3613    otchet = name+"\nПо диапазону \""  + (nw * (words_10 - choise)+1)+"-" + nw * (1 + words_10 - choise)+
3614         "\" за "+ aa +"\nсостоящиму из "+nw+" слов, \nбыло задано " + sum_slov +//"+ plan_date +"
3615        " вопросов,\n в направлении " +
3616        lang1+"\n"
3617        + now.toString()
3618		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
3619
3620
3621
3622    for (pair of oshibki.entries()) {
3623        // pair - это массив [key, values]
3624        //alert(pair[0]); // ключ
3625        //alert(pair[1]); // значение
3626        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
3627        otchet0 = otchet0 + `${pair[0]}\n`;
3628
3629        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
3630    }
3631
3632    alert(otchet);
3633    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
3634
3635    alert(otchet0);
3636    oshibki.clear()
3637    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1");
3638}
3639}</script>
3639
3640<!-- end Simple Custom CSS and JS -->
3641<!-- start Simple Custom CSS and JS -->
3642<script type="text/javascript">
3643if (window.location.pathname == '/eng-2/')
3644{
3645oshibki = new Map();
3646u = new SpeechSynthesisUtterance();
3647u.rate = 1;
3648
3649const set_of_words = [
3650
3651        ["осень", "autumn"],
3652        ["зима", "winter"],
3653        ["весна", "spring"],
3654        ["лето", "summer"]
3655        ["Январь", "January"],
3656        ["Февраль", "February"],
3657        ["Март", "March"],
3658        ["Апрель", "April"],
3659        ["Май", "May"],
3660        ["Июнь", "June"],
3661        ["Июль", "July"],
3662        ["Август", "August"],
3663        ["Сентябрь", "September"],
3664        ["Октябрь", "October"],
3665        ["Ноябрь", "November"],
3666        ["Декабрь", "December"]
3667        ["приносить", "bring brought brought"],
3668        ["покупать", "buy bought bought"],
3669        ["бороться", "fight fought fought"],
3670        ["думать", "think thought thought"],
3671        ["искать", "seek sought sought"],
3672        ["ловить", "catch caught caught"],
3673        ["обучать", "teach taught taught"]
3674	]
3675loop = 1;
3676while (loop = 1) {
3677
3678    // Запрашиваем у пользователя сколько слов выводить
3679    const count = prompt("Сколько слов выводить?:\n",10);
3680    countInt = parseInt(count);
3681    // Запрашиваем у пользователя с какого выводить
3682    const start = prompt("С какого номера стартовать?:\n",0);
3683    startInt = parseInt(start);
3684
3685    // Создаем 2D массив massiv_slov (variant)
3686    let massiv_slov = [];
3687    result = "";
3688default_start=0;
3689    if (startInt < 0 || startInt >= set_of_words.length) {
3690        startInt = default_start;
3691        result = "Неверный номер начала, по умолчанию ";
3692    }
3693
3694    massiv_slov = set_of_words.slice(startInt, 5countInt); 
3695
3696const message = massiv_slov
3697    .map(pair => `${pair[0]} - ${pair[1]}`)
3698    .join('\n');
3699
3700// Выводим все пары в одном alert
3701alert(message);
3702
3703    result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
3704    alert(result);
3705
3706    variant = 1;
3707
3708    // Вариант направления перевода
3709    const prime_lang = prompt("Выбирите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
3710    const lang = prime_lang == 0 ? 0 : 1;
3711
3712    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
3713    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
3714
3715    async function delayedFunction() {
3716        await new Promise(resolve => setTimeout(resolve, 1000));
3717    }
3718
3719    //перемешивание слов
3720    prime_sum_slov = massiv_slov.length;
3721
3722    for (j = 0; j < prime_sum_slov; j++) {
3723        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
3724        temp = massiv_slov[r];
3725        massiv_slov[r] = massiv_slov[j];
3726        massiv_slov[j] = temp;
3727    }
3728    //проверка перемешивания словundefined
3729    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
3730    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
3731
3732    // перебор массива слов
3733    sum_slov = 0;
3734    for (index = 0; index < massiv_slov.length; index++) {
3735        sum_slov = sum_slov + 1;
3736        // произношение
3737
3738        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
3739        u.text = massiv_slov[index][lang];
3740        delayedFunction();
3741        u.rate = 1;
3742        speechSynthesis.speak(u);
3743
3744        // ввод что было сказано 
3745        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3746        test = prompt(massiv_slov[index][lang]);
3747        if (test === null) {
3748            massiv_slov[massiv_slov.length] = massiv_slov[index];
3749            x = oshibki.get(massiv_slov[index]);
3750            if (x == null) { x = 0; }
3751            x++;
3752            oshibki.set(massiv_slov[index], x);
3753            break;
3754        }
3755        //	u.lang = 'en-UK';
3756        //	u.text = massiv_slov[index][1];
3757        //	speechSynthesis.speak(u);  
3758
3759        // проверка того что было сказано
3760        if (massiv_slov[index][(lang + 1) % 2] !== test) {
3761            u.lang = 'en-UK';
3762            u.text = 'Wrong!     The correct answer is        ';
3763            delayedFunction();
3764            speechSynthesis.speak(u);
3765
3766            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
3767            u.text = massiv_slov[index][(lang + 1) % 2];
3768            delayedFunction();
3769            speechSynthesis.speak(u);
3770            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
3771            );
3772
3773            massiv_slov[massiv_slov.length] = massiv_slov[index];
3774            x = oshibki.get(massiv_slov[index]);
3775            if (x == null) { x = 0; }
3776            x++;
3777            //alert ("x="+x);
3778            oshibki.set(massiv_slov[index], x);
3779        }
3780        else {
3781            u.lang = 'en-UK';
3782            u.text = 'Great!     ';
3783            if (lang == 0) {
3784                u.text = u.text + test;
3785            }
3786            u.text = u.text + '    is the correct answer!';
3787            delayedFunction();
3788            speechSynthesis.speak(u);
3789
3790            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
3791            );
3792        }
3793    }
3794    //вывод ошибок
3795	let now = new Date();
3796    otchet0 = '';
3797    otchet = '';
3798    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
3799    otchet = "По словарю \"" + selectedCategory[0] +
3800        "\"\nсостоящиму из " + prime_sum_slov +
3801        " слов, \nбыло задано " + sum_slov +
3802        " вопросов,\n в направлении " +
3803        lang1+"\n"
3804        + now.toString()
3805		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
3806
3807
3808
3809    for (pair of oshibki.entries()) {
3810        // pair - это массив [key, values]
3811        //alert(pair[0]); // ключ
3812        //alert(pair[1]); // значение
3813        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
3814        otchet0 = otchet0 + `${pair[0]}\n`;
3815
3816        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
3817    }
3818
3819    alert(otchet);
3820    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
3821
3822    alert(otchet0);
3823    oshibki.clear()
3824    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1")
3825
3826}
3827}</script>
3827
3828<!-- end Simple Custom CSS and JS -->
3829<!-- start Simple Custom CSS and JS -->
3830<style type="text/css">
3831.span-reading-time{
3832  margin-right: 0px!important;
3833}
3834.rt-time{
3835  margin-right: 0px!important;
3836}
3837
3838.rt-reading-time{
3839  margin-right: 0px!important;
3840}</style>
3841<!-- end Simple Custom CSS and JS -->
3842<!-- start Simple Custom CSS and JS -->
3843<style type="text/css">
3844.contentDiv {
3845    background-position: left top;
3846    background-color: #f4f6ff;
3847    padding: 50px 10px 10px 10px;
3848    background-image: url('/wp-content/uploads/contentTitle.png');
3849    background-repeat: no-repeat;
3850    margin-bottom: 20px;
3851} 
3852
3853
3854.mwm-aal-container {
3855    background-position: left top;
3856    background-color: #f4f6ff;
3857    border: 1px solid #999999;
3858    padding: 50px 10px 10px 10px;
3859    background-image: url('/wp-content/uploads/contentTitle.png');
3860    background-repeat: no-repeat;
3861    margin-bottom: 20px;
3862} 
3863
3864ol.mwm-aal-container {
3865    padding: 0px;
3866    margin: 0px 0px 0px 0px;
3867    width: 100%;
3868}
3869
3870.mwm-aal-container li {
3871    padding: 0px 0px 1px 0px;
3872    margin: 0px;
3873    list-style-type: none;
3874}
3875
3876    .mwm-aal-container li a {
3877        padding: 0px 0px 0px 5px;
3878        display: block;
3879        text-decoration: none!important;
3880        border-bottom: 1px solid #f5f6f6;
3881line-height: 1em !important;
3882    }
3883@media all and (min-width: 700px) {
3884  .mwm-aal-container li a {
3885    padding: 0px 0px 0px 40px;
3886  }
3887}
3888        .mwm-aal-container li a:hover {
3889            padding: 0px 0px 0px 45px;
3890            display: block;
3891            color: #990000;
3892            text-decoration: none;
3893
3894        } 
3895
3896
3897.mwm-aal-container ul > li {
3898	list-style: none !important;
3899} 
3900
3901a {
3902    text-decoration: none;
3903    -webkit-transition: all 200ms ease-in;
3904    -o-transition: all 200ms ease-in;
3905    -moz-transition: all 200ms ease-in;
3906} 
3907/* модифицирование плагина Better Anchor Links под димино "Содержание" end */ 
3908.mwm-aal-container ul{
3909  margin: 0 0 0px 15px;
3910}</style>
3911<!-- end Simple Custom CSS and JS -->
3912<!-- start Simple Custom CSS and JS -->
3913<style type="text/css">
3914.box.info .tie-shortcode-boxicon::before {
3915    color: #ecc21b;
3916}
3917
3918.box.info {
3919  background: #9c7024;
3920  border-color: #9c7024;
3921  color: white;
3922}</style>
3923<!-- end Simple Custom CSS and JS -->
3924<!-- start Simple Custom CSS and JS -->
3925<script data-ad-client="ca-pub-4126641005487513" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
3925
3926<!-- end Simple Custom CSS and JS -->
3927
3928		<style type="text/css">
3929			.header-widgets-wrapper, .content-wrap-bg { background-color:  }
3930			.featured-sidebar, .featured-sidebar ul li { border-color:  !important; }
3931			.page-numbers li a, .blogposts-list .blogpost-button, .page-numbers.current, span.page-numbers.dots { background: ; }
3932			.banner-widget-wrapper p, .banner-widget-wrapper h1, .banner-widget-wrapper h2, .banner-widget-wrapper h3, .banner-widget-wrapper h4, .banner-widget-wrapper h5, .banner-widget-wrapper h6, .banner-widget-wrapper ul, .banner-widget-wrapper{ color:  }
3933			.banner-widget-wrapper a, .banner-widget-wrapper a:hover, .banner-widget-wrapper a:active, .banner-widget-wrapper a:focus{ color: ; }
3934			.banner-widget-wrapper ul li { border-color: ; }
3935			body, .site, .swidgets-wrap h3, .post-data-text { background: ; }
3936			.site-title a, .site-description { color: ; }
3937			.header-bg { background-color:  !important; }
3938			.main-navigation ul li a, .main-navigation ul li .sub-arrow, .super-menu .toggle-mobile-menu,.toggle-mobile-menu:before, .mobile-menu-active .smenu-hide { color: ; }
3939			#smobile-menu.show .main-navigation ul ul.children.active, #smobile-menu.show .main-navigation ul ul.sub-menu.active, #smobile-menu.show .main-navigation ul li, .smenu-hide.toggle-mobile-menu.menu-toggle, #smobile-menu.show .main-navigation ul li, .primary-menu ul li ul.children li, .primary-menu ul li ul.sub-menu li, .primary-menu .pmenu, .super-menu { border-color: ; border-bottom-color: ; }
3940			#secondary .widget h3, #secondary .widget h3 a, #secondary .widget h4, #secondary .widget h1, #secondary .widget h2, #secondary .widget h5, #secondary .widget h6 { color: ; }
3941			#secondary .widget a, #secondary a, #secondary .widget li a , #secondary span.sub-arrow{ color: ; }
3942			#secondary, #secondary .widget, #secondary .widget p, #secondary .widget li, .widget time.rpwe-time.published { color: ; }
3943			#secondary .swidgets-wrap, .featured-sidebar .search-field { border-color: ; }
3944			.site-info, .footer-column-three input.search-submit, .footer-column-three p, .footer-column-three li, .footer-column-three td, .footer-column-three th, .footer-column-three caption { color: ; }
3945			.footer-column-three h3, .footer-column-three h4, .footer-column-three h5, .footer-column-three h6, .footer-column-three h1, .footer-column-three h2, .footer-column-three h4, .footer-column-three h3 a { color: ; }
3946			.footer-column-three a, .footer-column-three li a, .footer-column-three .widget a, .footer-column-three .sub-arrow { color: ; }
3947			.footer-column-three h3:after { background: ; }
3948			.site-info, .widget ul li, .footer-column-three input.search-field, .footer-column-three input.search-submit { border-color: ; }
3949			.site-footer { background-color: ; }
3950			.archive .page-header h1, .blogposts-list h2 a, .blogposts-list h2 a:hover, .blogposts-list h2 a:active, .search-results h1.page-title { color: ; }
3951			.blogposts-list .post-data-text, .blogposts-list .post-data-text a{ color: ; }
3952			.blogposts-list p { color: ; }
3953			.page-numbers li a, .blogposts-list .blogpost-button, span.page-numbers.dots, .page-numbers.current, .page-numbers li a:hover { color: ; }
3954			.archive .page-header h1, .search-results h1.page-title, .blogposts-list.fbox, span.page-numbers.dots, .page-numbers li a, .page-numbers.current { border-color: ; }
3955			.blogposts-list .post-data-divider { background: ; }
3956			.page .comments-area .comment-author, .page .comments-area .comment-author a, .page .comments-area .comments-title, .page .content-area h1, .page .content-area h2, .page .content-area h3, .page .content-area h4, .page .content-area h5, .page .content-area h6, .page .content-area th, .single  .comments-area .comment-author, .single .comments-area .comment-author a, .single .comments-area .comments-title, .single .content-area h1, .single .content-area h2, .single .content-area h3, .single .content-area h4, .single .content-area h5, .single .content-area h6, .single .content-area th, .search-no-results h1, .error404 h1 { color: ; }
3957			.single .post-data-text, .page .post-data-text, .page .post-data-text a, .single .post-data-text a, .comments-area .comment-meta .comment-metadata a { color: ; }
3958			.page .content-area p, .page article, .page .content-area table, .page .content-area dd, .page .content-area dt, .page .content-area address, .page .content-area .entry-content, .page .content-area li, .page .content-area ol, .single .content-area p, .single article, .single .content-area table, .single .content-area dd, .single .content-area dt, .single .content-area address, .single .entry-content, .single .content-area li, .single .content-area ol, .search-no-results .page-content p { color: ; }
3959			.single .entry-content a, .page .entry-content a, .comment-content a, .comments-area .reply a, .logged-in-as a, .comments-area .comment-respond a { color: ; }
3960			.comments-area p.form-submit input { background: ; }
3961			.error404 .page-content p, .error404 input.search-submit, .search-no-results input.search-submit { color: ; }
3962			.page .comments-area, .page article.fbox, .page article tr, .page .comments-area ol.comment-list ol.children li, .page .comments-area ol.comment-list .comment, .single .comments-area, .single article.fbox, .single article tr, .comments-area ol.comment-list ol.children li, .comments-area ol.comment-list .comment, .error404 main#main, .error404 .search-form label, .search-no-results .search-form label, .error404 input.search-submit, .search-no-results input.search-submit, .error404 main#main, .search-no-results section.fbox.no-results.not-found{ border-color: ; }
3963			.single .post-data-divider, .page .post-data-divider { background: ; }
3964			.single .comments-area p.form-submit input, .page .comments-area p.form-submit input { color: ; }
3965			.bottom-header-wrapper { padding-top: px; }
3966			.bottom-header-wrapper { padding-bottom: px; }
3967			.bottom-header-wrapper { background: ; }
3968			.bottom-header-wrapper *{ color: ; }
3969			.header-widget a, .header-widget li a, .header-widget i.fa { color: ; }
3970			.header-widget, .header-widget p, .header-widget li, .header-widget .textwidget { color: ; }
3971			.header-widget .widget-title, .header-widget h1, .header-widget h3, .header-widget h2, .header-widget h4, .header-widget h5, .header-widget h6{ color: ; }
3972			.header-widget.swidgets-wrap, .header-widget ul li, .header-widget .search-field { border-color: ; }
3973			.header-widgets-wrapper .swidgets-wrap{ background: ; }
3974			.primary-menu .pmenu, .super-menu, #smobile-menu, .primary-menu ul li ul.children, .primary-menu ul li ul.sub-menu { background-color: ; }
3975			#secondary .swidgets-wrap{ background: ; }
3976			#secondary .swidget { border-color: ; }
3977			.archive article.fbox, .search-results article.fbox, .blog article.fbox { background: ; }
3978			.comments-area, .single article.fbox, .page article.fbox { background: ; }
3979		</style>
3980	
3981		<style type="text/css">
3982			.header-widgets-wrapper, .content-wrap-bg { background-color:  }
3983			.featured-sidebar, .featured-sidebar ul li { border-color:  !important; }
3984			.page-numbers li a, .blogposts-list .blogpost-button, .page-numbers.current, span.page-numbers.dots { background: ; }
3985			.banner-widget-wrapper p, .banner-widget-wrapper h1, .banner-widget-wrapper h2, .banner-widget-wrapper h3, .banner-widget-wrapper h4, .banner-widget-wrapper h5, .banner-widget-wrapper h6, .banner-widget-wrapper ul, .banner-widget-wrapper{ color:  }
3986			.banner-widget-wrapper a, .banner-widget-wrapper a:hover, .banner-widget-wrapper a:active, .banner-widget-wrapper a:focus{ color: ; }
3987			.banner-widget-wrapper ul li { border-color: ; }
3988			body, .site, .swidgets-wrap h3, .post-data-text { background: ; }
3989			.site-title a, .site-description { color: ; }
3990			.header-bg { background-color:  !important; }
3991			.main-navigation ul li a, .main-navigation ul li .sub-arrow, .super-menu .toggle-mobile-menu,.toggle-mobile-menu:before, .mobile-menu-active .smenu-hide { c
3991olor: ; }
3992			#smobile-menu.show .main-navigation ul ul.children.active, #smobile-menu.show .main-navigation ul ul.sub-menu.active, #smobile-menu.show .main-navigation ul li, .smenu-hide.toggle-mobile-menu.menu-toggle, #smobile-menu.show .main-navigation ul li, .primary-menu ul li ul.children li, .primary-menu ul li ul.sub-menu li, .primary-menu .pmenu, .super-menu { border-color: ; border-bottom-color: ; }
3993			#secondary .widget h3, #secondary .widget h3 a, #secondary .widget h4, #secondary .widget h1, #secondary .widget h2, #secondary .widget h5, #secondary .widget h6 { color: ; }
3994			#secondary .widget a, #secondary a, #secondary .widget li a , #secondary span.sub-arrow{ color: ; }
3995			#secondary, #secondary .widget, #secondary .widget p, #secondary .widget li, .widget time.rpwe-time.published { color: ; }
3996			#secondary .swidgets-wrap, .featured-sidebar .search-field { border-color: ; }
3997			.site-info, .footer-column-three input.search-submit, .footer-column-three p, .footer-column-three li, .footer-column-three td, .footer-column-three th, .footer-column-three caption { color: ; }
3998			.footer-column-three h3, .footer-column-three h4, .footer-column-three h5, .footer-column-three h6, .footer-column-three h1, .footer-column-three h2, .footer-column-three h4, .footer-column-three h3 a { color: ; }
3999			.footer-column-three a, .footer-column-three li a, .footer-column-three .widget a, .footer-column-three .sub-arrow { color: ; }
4000			.footer-column-three h3:after { background: ; }
4001			.site-info, .widget ul li, .footer-column-three input.search-field, .footer-column-three input.search-submit { border-color: ; }
4002			.site-footer { background-color: ; }
4003			.archive .page-header h1, .blogposts-list h2 a, .blogposts-list h2 a:hover, .blogposts-list h2 a:active, .search-results h1.page-title { color: ; }
4004			.blogposts-list .post-data-text, .blogposts-list .post-data-text a{ color: ; }
4005			.blogposts-list p { color: ; }
4006			.page-numbers li a, .blogposts-list .blogpost-button, span.page-numbers.dots, .page-numbers.current, .page-numbers li a:hover { color: ; }
4007			.archive .page-header h1, .search-results h1.page-title, .blogposts-list.fbox, span.page-numbers.dots, .page-numbers li a, .page-numbers.current { border-color: ; }
4008			.blogposts-list .post-data-divider { background: ; }
4009			.page .comments-area .comment-author, .page .comments-area .comment-author a, .page .comments-area .comments-title, .page .content-area h1, .page .content-area h2, .page .content-area h3, .page .content-area h4, .page .content-area h5, .page .content-area h6, .page .content-area th, .single  .comments-area .comment-author, .single .comments-area .comment-author a, .single .comments-area .comments-title, .single .content-area h1, .single .content-area h2, .single .content-area h3, .single .content-area h4, .single .content-area h5, .single .content-area h6, .single .content-area th, .search-no-results h1, .error404 h1 { color: ; }
4010			.single .post-data-text, .page .post-data-text, .page .post-data-text a, .single .post-data-text a, .comments-area .comment-meta .comment-metadata a { color: ; }
4011			.page .content-area p, .page article, .page .content-area table, .page .content-area dd, .page .content-area dt, .page .content-area address, .page .content-area .entry-content, .page .content-area li, .page .content-area ol, .single .content-area p, .single article, .single .content-area table, .single .content-area dd, .single .content-area dt, .single .content-area address, .single .entry-content, .single .content-area li, .single .content-area ol, .search-no-results .page-content p { color: ; }
4012			.single .entry-content a, .page .entry-content a, .comment-content a, .comments-area .reply a, .logged-in-as a, .comments-area .comment-respond a { color: ; }
4013			.comments-area p.form-submit input { background: ; }
4014			.error404 .page-content p, .error404 input.search-submit, .search-no-results input.search-submit { color: ; }
4015			.page .comments-area, .page article.fbox, .page article tr, .page .comments-area ol.comment-list ol.children li, .page .comments-area ol.comment-list .comment, .single .comments-area, .single article.fbox, .single article tr, .comments-area ol.comment-list ol.children li, .comments-area ol.comment-list .comment, .error404 main#main, .error404 .search-form label, .search-no-results .search-form label, .error404 input.search-submit, .search-no-results input.search-submit, .error404 main#main, .search-no-results section.fbox.no-results.not-found{ border-color: ; }
4016			.single .post-data-divider, .page .post-data-divider { background: ; }
4017			.single .comments-area p.form-submit input, .page .comments-area p.form-submit input { color: ; }
4018			.bottom-header-wrapper { padding-top: px; }
4019			.bottom-header-wrapper { padding-bottom: px; }
4020			.bottom-header-wrapper { background: ; }
4021			.bottom-header-wrapper *{ color: ; }
4022			.header-widget a, .header-widget li a, .header-widget i.fa { color: ; }
4023			.header-widget, .header-widget p, .header-widget li, .header-widget .textwidget { color: ; }
4024			.header-widget .widget-title, .header-widget h1, .header-widget h3, .header-widget h2, .header-widget h4, .header-widget h5, .header-widget h6{ color: ; }
4025			.header-widget.swidgets-wrap, .header-widget ul li, .header-widget .search-field { border-color: ; }
4026			.header-widgets-wrapper .swidgets-wrap{ background: ; }
4027			.primary-menu .pmenu, .super-menu, #smobile-menu, .primary-menu ul li ul.children, .primary-menu ul li ul.sub-menu { background-color: ; }
4028			#secondary .swidgets-wrap{ background: ; }
4029			#secondary .swidget { border-color: ; }
4030			.archive article.fbox, .search-results article.fbox, .blog article.fbox { background: ; }
4031			.comments-area, .single article.fbox, .page article.fbox { background: ; }
4032		</style>
4033		      <meta name="onesignal" content="wordpress-plugin"/>
4034            
4034<script>
4035
4036      window.OneSignal = window.OneSignal || [];
4037
4038      OneSignal.push( function() {
4039        OneSignal.SERVICE_WORKER_UPDATER_PATH = "OneSignalSDKUpdaterWorker.js.php";
4040        OneSignal.SERVICE_WORKER_PATH = "OneSignalSDKWorker.js.php";
4041        OneSignal.SERVICE_WORKER_PARAM = { scope: '/' };
4042
4043        OneSignal.setDefaultNotificationUrl("https://zaitcev.ru");
4044        var oneSignal_options = {};
4045        window._oneSignalInitOptions = oneSignal_options;
4046
4047        oneSignal_options['wordpress'] = true;
4048oneSignal_options['appId'] = '789de7e4-2093-47e3-a308-026fd10c2ddf';
4049oneSignal_options['welcomeNotification'] = { };
4050oneSignal_options['welcomeNotification']['title'] = "";
4051oneSignal_options['welcomeNotification']['message'] = "Спасибо за подписку!";
4052oneSignal_options['path'] = "https://zaitcev.ru/wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/";
4053oneSignal_options['safari_web_id'] = "web.onesignal.auto.34f3144b-3497-4c5c-a43c-a5d9eb9bdd56";
4054oneSignal_options['persistNotification'] = true;
4055oneSignal_options['promptOptions'] = { };
4056oneSignal_options['promptOptions']['actionMessage'] = 'Мы хотели бы отправлять вам push-уведомления. Вы можете отказаться от подписки в любое время.';
4057oneSignal_options['promptOptions']['acceptButtonText'] = 'РАЗРЕШАЮ';
4058oneSignal_options['promptOptions']['cancelButtonText'] = 'НЕТ, СПАСИБО';
4059oneSignal_options['notifyButton'] = { };
4060oneSignal_options['notifyButton']['enable'] = true;
4061oneSignal_options['notifyButton']['position'] = 'bottom-right';
4062oneSignal_options['notifyButton']['theme'] = 'default';
4063oneSignal_options['notifyButton']['size'] = 'medium';
4064oneSignal_options['notifyButton']['showCredit'] = true;
4065oneSignal_options['notifyButton']['text'] = {};
4066oneSignal_options['notifyButton']['text']['tip.state.unsubscribed'] = 'Подпишитесь на уведомления о новых публикациях';
4067oneSignal_options['notifyButton']['text']['tip.state.subscribed'] = 'Вы подписаны на уведомления';
4068oneSignal_options['notifyButton']['text']['tip.state.blocked'] = 'Для вас уведомления заблокированы';
4069oneSignal_options['notifyButton']['text']['message.action.subscribed'] = 'Спасибо за подписку на уведомления!';
4070oneSignal_options['notifyButton']['text']['message.action.resubscribed'] = 'Вы подписаны на уведомления';
4071oneSignal_options['notifyButton']['text']['message.action.unsubscribed'] = 'Вы больше не будете получать уведомления';
4072oneSignal_options['notifyButton']['text']['dialog.main.title'] = 'Управление уведомлениями сайта';
4073oneSignal_options['notifyButton']['text']['dialog.main.button.subscribe'] = 'ПОДПИСАТЬСЯ';
4074oneSignal_options['notifyButton']['text']['dialog.main.button.unsubscribe'] = 'ОТПИСАТЬСЯ';
4075oneSignal_options['notifyButton']['text']['dialog.blocked.title'] = 'Разблокировать уведомления';
4076oneSignal_options['notifyButton']['text']['dialog.blocked.message'] = 'Следуйте этим инструкциям, чтобы разрешить уведомления:';
4077oneSignal_options['notifyButton']['offset'] = {};
4078oneSignal_options['notifyButton']['offset']['bottom'] = '50px';
4079oneSignal_options['notifyButton']['offset']['right'] = '10px';
4080                OneSignal.init(window._oneSignalInitOptions);
4081                OneSignal.showSlidedownPrompt();      });
4082
4083      function documentInitOneSignal() {
4084        var oneSignal_elements = document.getElementsByClassName("OneSignal-prompt");
4085
4086        var oneSignalLinkClickHandler = function(event) { OneSignal.push(['registerForPushNotifications']); event.preventDefault(); };        for(var i = 0; i < oneSignal_elements.length; i++)
4087          oneSignal_elements[i].addEventListener('click', oneSignalLinkClickHandler, false);
4088      }
4089
4090      if (document.readyState === 'complete') {
4091           documentInitOneSignal();
4092      }
4093      else {
4094           window.addEventListener("load", function(event){
4095               documentInitOneSignal();
4096          });
4097      }
4098    </script>
4098
4099<link rel="icon" href="https://res.cloudinary.com/cloudinary-zaitcev/image/upload/f_auto,q_auto/w_32,h_32,c_scale/v1590170815/cropped-aleksei-zai-tsev.png" sizes="32x32" />
4100<link rel="icon" href="https://res.cloudinary.com/cloudinary-zaitcev/image/upload/f_auto,q_auto/w_192,h_192,c_scale/v1590170815/cropped-aleksei-zai-tsev.png" sizes="192x192" />
4101<link rel="apple-touch-icon" href="https://res.cloudinary.com/cloudinary-zaitcev/image/upload/f_auto,q_auto/w_180,h_180,c_scale/v1590170815/cropped-aleksei-zai-tsev.png" />
4102<meta name="msapplication-TileImage" content="https://res.cloudinary.com/cloudinary-zaitcev/image/upload/f_auto,q_auto/w_270,h_270,c_scale/v1590170815/cropped-aleksei-zai-tsev.png" />
4103		<style type="text/css" media="screen">
4104            .footnote_tooltip { display: none; padding: 12px; font-size: 13px; background-color: #fff7a7; border-width: 1px; border-style: solid; border-color: #cccc99; border-radius: 3px; -webkit-box-shadow: 2px 2px 11px #666666; -moz-box-shadow: 2px 2px 11px #666666; box-shadow: 2px 2px 11px #666666;}        </style>
4105			</head>
4106
4107	<body class="page-template-default page page-id-42667 masthead-fixed">
4108		
4109		<a class="skip-link screen-reader-text" href="#content">Перейти к содержимому</a>
4110
4111		
4112		<div id="page" class="site">
4113			<header id="masthead" class="sheader site-header clearfix">
4114				<div class="content-wrap">
4115
4116					<!-- Header background color and image is added to class below -->
4117					<div class="header-bg">
4118													<div class="site-branding">
4119																
4120								<!-- If you are viewing the a sub page, make the title a paragraph -->
4121								<p class="site-title"><a href="https://zaitcev.ru/" rel="home">Авторский блог Алексея Зайцева</a></p>
4122																<p class="site-description">Математика Экономика Физика</p>
4123								
4124						</div>
4125															</div>
4126			</div>
4127
4128			<!-- Navigation below these lines, move it up if you want it above the header -->
4129			<nav id="primary-site-navigation" class="primary-menu main-navigation clearfix">
4130				<a href="#" id="pull" class="smenu-hide toggle-mobile-menu menu-toggle" aria-controls="secondary-menu" aria-expanded="false">Меню</a>
4131				<div class="content-wrap text-center">
4132					<div class="center-main-menu">
4133						<div id="primary-menu" class="pmenu"><ul>
4134<li class="page_item page-item-42667 current_page_item"><a href="https://zaitcev.ru/eng-480/" aria-current="page">480 EN</a></li>
4135<li class="page_item page-item-42692"><a href="https://zaitcev.ru/criminals-and-punishment/">C&#038;P</a></li>
4136<li class="page_item page-item-42688"><a href="https://zaitcev.ru/fr/">FR</a></li>
4137<li class="page_item page-item-42657"><a href="https://zaitcev.ru/eng-alexey/">Алеша повтор</a></li>
4138<li class="page_item page-item-42662"><a href="https://zaitcev.ru/eng-vlada/">Влада повтор</a></li>
4139<li class="page_item page-item-42678"><a href="https://zaitcev.ru/mesyats-240/">Месяц 240</a></li>
4140<li class="page_item page-item-42676"><a href="https://zaitcev.ru/nedelya-60/">Неделя 60</a></li>
4141<li class="page_item page-item-42634"><a href="https://zaitcev.ru/proverka-pravopisaniya-anglijskih-slov/">Проверка правописания EN</a></li>
4142<li class="page_item page-item-41949"><a href="https://zaitcev.ru/propisi-1-klass/">Прописи 1 класс</a></li>
4143<li class="page_item page-item-42705"><a href="https://zaitcev.ru/si/">СИ Длины Площади Объемы</a></li>
4144<li class="page_item page-item-42065"><a href="https://zaitcev.ru/slovarnyj-diktant-po-russkomu-yazyku/">Словарный диктант по русскому языку</a></li>
4145<li class="page_item page-item-42709"><a href="https://zaitcev.ru/power/">Степени</a></li>
4146<li class="page_item page-item-40951"><a href="https://zaitcev.ru/stranitsa-oplaty/">Страница оплаты</a></li>
4147<li class="page_item page-item-42287"><a href="https://zaitcev.ru/trenazher-po-arifmetike-2/">Тренажер по арифметике</a></li>
4148<li class="page_item page-item-42291"><a href="https://zaitcev.ru/trenazher-po-drobyam/">Тренажер по дробям</a></li>
4149</ul></div>
4150					</div>
4151				</div>
4152			</nav>
4153			<div class="content-wrap">
4154				<div class="super-menu clearfix">
4155					<div class="super-menu-inner">
4156						<a href="#" id="pull" class="toggle-mobile-menu menu-toggle" aria-controls="secondary-menu" aria-expanded="false">Меню</a>
4157					</div>
4158				</div>
4159			</div>
4160			<div id="mobile-menu-overlay"></div>
4161			<!-- Navigation above these lines, move it up if you want it above the header -->
4162		</header>
4163
4164		<div class="content-wrap">
4165
4166
4167			<!-- Upper widgets -->
4168			<div class="header-widgets-wrapper">
4169				
4170				
4171							</div>
4172
4173		</div>
4174
4175		<div id="content" class="site-content clearfix">
4176			<div class="content-wrap">
4177				<div class="content-wrap-bg">
4178
4179	<div id="primary" class="featured-content content-area">
4180		<main id="main" class="site-main">
4181
4182			<div class='code-block code-block-5' style='margin: 8px 0; clear: both;'>
4183<!-- Yandex.RTB R-A-542481-1 -->
4184<div id="yandex_rtb_R-A-542481-1"></div>
4185<script type="text/javascript">
4186    (function(w, d, n, s, t) {
4187        w[n] = w[n] || [];
4188        w[n].push(function() {
4189            Ya.Context.AdvManager.render({
4190                blockId: "R-A-542481-1",
4191                renderTo: "yandex_rtb_R-A-542481-1",
4192                async: true
4193            });
4194        });
4195        t = d.getElementsByTagName("script")[0];
4196        s = d.createElement("script");
4197        s.type = "text/javascript";
4198        s.src = "//an.yandex.ru/system/context.js";
4199        s.async = true;
4200        t.parentNode.insertBefore(s, t);
4201    })(this, this.document, "yandexContextAsyncCallbacks");
4202</script>
4202</div>
4203
4204<article id="post-42667" class="posts-entry fbox post-42667 page type-page status-publish hentry">
4205			<header class="entry-header">
4206		<h1 class="entry-title">480 EN</h1>	</header><!-- .entry-header -->
4207
4208	<div class="entry-content">
4209		<div class='code-block code-block-6' style='margin: 8px 0; clear: both;'>
4210<!-- Yandex.RTB R-A-542481-2 -->
4211<div id="yandex_rtb_R-A-542481-2"></div>
4212<script type="text/javascript">
4213    (function(w, d, n, s, t) {
4214        w[n] = w[n] || [];
4215        w[n].push(function() {
4216            Ya.Context.AdvManager.render({
4217                blockId: "R-A-542481-2",
4218                renderTo: "yandex_rtb_R-A-542481-2",
4219                async: true
4220            });
4221        });
4222        t = d.getElementsByTagName("script")[0];
4223        s = d.createElement("script");
4224        s.type = "text/javascript";
4225        s.src = "//an.yandex.ru/system/context.js";
4226        s.async = true;
4227        t.parentNode.insertBefore(s, t);
4228    })(this, this.document, "yandexContextAsyncCallbacks");
4229</script>
4229</div>
4230
4231			</div><!-- .entry-content -->
4232</article><!-- #post-42667 -->
4233
4234		</main><!-- #main -->
4235	</div><!-- #primary -->
4236
4237
4238<aside id="secondary" class="featured-sidebar widget-area">
4239	<section id="search-2" class="fbox swidgets-wrap widget widget_search"><form role="search" method="get" class="search-form" action="https://zaitcev.ru/">
4240				<label>
4241					<span class="screen-reader-text">Найти:</span>
4242					<input type="search" class="search-field" placeholder="Поиск&hellip;" value="" name="s" />
4243				</label>
4244				<input type="submit" class="search-submit" value="Поиск" />
4245			</form></section><section id="categories-3" class="fbox swidgets-wrap widget widget_categories"><div class="swidget"><div class="sidebar-title-border"><h3 class="widget-title">Рубрики</h3></div></div>
4246			<ul>
4247					<li class="cat-item cat-item-2"><a href="https://zaitcev.ru/category/globalnye-problemy/">Глобальные проблемы</a>
4248</li>
4249	<li class="cat-item cat-item-76"><a href="https://zaitcev.ru/category/informatsionnye-tehnologii/">Информационные технологии</a>
4250</li>
4251	<li class="cat-item cat-item-196"><a href="https://zaitcev.ru/category/istoriya-semi-i-roda-zajtsevyh/">История семьи и рода Зайцевых</a>
4252</li>
4253	<li class="cat-item cat-item-7"><a href="https://zaitcev.ru/category/kosmos/">Космос</a>
4254</li>
4255	<li class="cat-item cat-item-8"><a href="https://zaitcev.ru/category/mirovaya-ekonomika/">Мировая экономика</a>
4256</li>
4257	<li class="cat-item cat-item-51"><a href="https://zaitcev.ru/category/nauka/">Наука</a>
4258</li>
4259	<li class="cat-item cat-item-13"><a href="https://zaitcev.ru/category/obshhestvo/">Общество</a>
4260</li>
4261	<li class="cat-item cat-item-108"><a href="https://zaitcev.ru/category/politika/">Политика</a>
4262</li>
4263	<li class="cat-item cat-item-21"><a href="https://zaitcev.ru/category/spravochniki/">Справочники</a>
4264</li>
4265	<li class="cat-item cat-item-16"><a href="https://zaitcev.ru/category/ukraina/">Украина</a>
4266</li>
4267	<li class="cat-item cat-item-15"><a href="https://zaitcev.ru/category/ekologiya/">Экология</a>
4268</li>
4269	<li class="cat-item cat-item-126"><a href="https://zaitcev.ru/category/ekonomika/">Экономика</a>
4270</li>
4271	<li class="cat-item cat-item-6"><a href="https://zaitcev.ru/category/elektromobili/">Электромобили</a>
4272</li>
4273	<li class="cat-item cat-item-185"><a href="https://zaitcev.ru/category/energetika/">Энергетика</a>
4274</li>
4275			</ul>
4276
4277			</section><section id="tag_cloud-2" class="fbox swidgets-wrap widget widget_tag_cloud"><div class="swidget"><div class="sidebar-title-border"><h3 class="widget-title">Метки</h3></div></div><div class="tagcloud"><a href="https://zaitcev.ru/tag/it/" class="tag-cloud-link tag-link-88 tag-link-position-1" style="font-size: 14.853146853147pt;" aria-label="IT (19 элементов)">IT</a>
4278<a href="https://zaitcev.ru/tag/spacex/" class="tag-cloud-link tag-link-63 tag-link-position-2" style="font-size: 9.7622377622378pt;" aria-label="SpaceX (5 элементов)">SpaceX</a>
4279<a href="https://zaitcev.ru/tag/wordpress/" class="tag-cloud-link tag-link-89 tag-link-position-3" style="font-size: 8.979020979021pt;" aria-label="Wordpress (4 элемента)">Wordpress</a>
4280<a href="https://zaitcev.ru/tag/aviatsiya/" class="tag-cloud-link tag-link-50 tag-link-position-4" style="font-size: 8.979020979021pt;" aria-label="Авиация (4 элемента)">Авиация</a>
4281<a href="https://zaitcev.ru/tag/belorussiya/" class="tag-cloud-link tag-link-145 tag-link-position-5" style="font-size: 10.447552447552pt;" aria-label="Белоруссия (6 элементов)">Белоруссия</a>
4282<a href="https://zaitcev.ru/tag/gaz/" class="tag-cloud-link tag-link-128 tag-link-position-6" style="font-size: 13.678321678322pt;" aria-label="Газ (14 элементов)">Газ</a>
4283<a href="https://zaitcev.ru/tag/gazprom/" class="tag-cloud-link tag-link-132 tag-link-position-7" style="font-size: 10.447552447552pt;" aria-label="Газпром (6 элементов)">Газпром</a>
4284<a href="https://zaitcev.ru/tag/deti/" class="tag-cloud-link tag-link-49 tag-link-position-8" style="font-size: 8pt;" aria-label="Дети (3 элемента)">Дети</a>
4285<a href="https://zaitcev.ru/tag/es/" class="tag-cloud-link tag-link-9 tag-link-position-9" style="font-size: 11.426573426573pt;" aria-label="ЕС (8 элементов)">ЕС</a>
4286<a href="https://zaitcev.ru/tag/evropa/" class="tag-cloud-link tag-link-31 tag-link-position-10" style="font-size: 16.615384615385pt;" aria-label="Европа (29 элементов)">Европа</a>
4287<a href="https://zaitcev.ru/tag/zarabotok/" class="tag-cloud-link tag-link-38 tag-link-position-11" style="font-size: 11.426573426573pt;" aria-label="Заработок (8 элементов)">Заработок</a>
4288<a href="https://zaitcev.ru/tag/issledovaniya/" class="tag-cloud-link tag-link-17 tag-link-position-12" style="font-size: 14.657342657343pt;" aria-label="Исследования (18 элементов)">Исследования</a>
4289<a href="https://zaitcev.ru/tag/istoriya/" class="tag-cloud-link tag-link-109 tag-link-position-13" style="font-size: 9.7622377622378pt;" aria-label="История (5 элементов)">История</a>
4290<a href="https://zaitcev.ru/tag/kitaj/" class="tag-cloud-link tag-link-20 tag-link-position-14" style="font-size: 11.426573426573pt;" aria-label="Китай (8 элементов)">Китай</a>
4291<a href="https://zaitcev.ru/tag/koronavirus/" class="tag-cloud-link tag-link-39 tag-link-position-15" style="font-size: 17.202797202797pt;" aria-label="Коронавирус (34 элемента)">Коронавирус</a>
4292<a href="https://zaitcev.ru/tag/kosmos/" class="tag-cloud-link tag-link-199 tag-link-position-16" style="font-size: 8.979020979021pt;" aria-label="Космос (4 элемента)">Космос</a>
4293<a href="https://zaitcev.ru/tag/krizis/" class="tag-cloud-link tag-link-26 tag-link-position-17" style="font-size: 19.552447552448pt;" aria-label="Кризис (59 элементов)">Кризис</a>
4294<a href="https://zaitcev.ru/tag/kriminal/" class="tag-cloud-link tag-link-30 tag-link-position-18" style="font-size: 13.384615384615pt;" aria-label="Криминал (13 элементов)">Криминал</a>
4295<a href="https://zaitcev.ru/tag/kurs-dollara/" class="tag-cloud-link tag-link-69 tag-link-position-19" style="font-size: 10.937062937063pt;" aria-label="Курс доллара (7 элементов)">Курс доллара</a>
4296<a href="https://zaitcev.ru/tag/kurs-rublya/" class="tag-cloud-link tag-link-41 tag-link-position-20" style="font-size: 12.307692307692pt;" aria-label="Курс рубля (10 элементов)">Курс рубля</a>
4297<a href="https://zaitcev.ru/tag/matematika/" class="tag-cloud-link tag-link-47 tag-link-position-21" style="font-size: 12.699300699301pt;" aria-label="Математика (11 элементов)">Математика</a>
4298<a href="https://zaitcev.ru/tag/nauka/" class="tag-cloud-link tag-link-53 tag-link-position-22" style="font-size: 18.083916083916pt;" aria-label="Наука (42 элемента)">Наука</a>
4299<a href="https://zaitcev.ru/tag/neft/" class="tag-cloud-link tag-link-42 tag-link-position-23" style="font-size: 15.048951048951pt;" aria-label="Нефть (20 элементов)">Нефть</a>
4300<a href="https://zaitcev.ru/tag/oto/" class="tag-cloud-link tag-link-144 tag-link-position-24" style="font-size: 8.979020979021pt;" aria-label="ОТО (4 элемента)">ОТО</a>
4301<a href="https://zaitcev.ru/tag/obshhestvo/" class="tag-cloud-link tag-link-27 tag-link-position-25" style="font-size: 21.608391608392pt;" aria-label="Общество (96 элементов)">Общество</a>
4302<a href="https://zaitcev.ru/tag/oligarhi/" class="tag-cloud-link tag-link-22 tag-link-position-26" style="font-size: 12.307692307692pt;" aria-label="Олигархи (10 элементов)">Олигархи</a>
4303<a href="https://zaitcev.ru/tag/perspektivy/" class="tag-cloud-link tag-link-12 tag-link-position-27" style="font-size: 18.475524475524pt;" aria-label="Перспективы (46 элементов)">Перспективы</a>
4304<a href="https://zaitcev.ru/tag/politika/" class="tag-cloud-link tag-link-14 tag-link-position-28" style="font-size: 21.706293706294pt;" aria-label="Политика (98 элементов)">Политика</a>
4305<a href="https://zaitcev.ru/tag/pravoohranitelnaya-sistema/" class="tag-cloud-link tag-link-29 tag-link-position-29" style="font-size: 8.979020979021pt;" aria-label="Правоохранительная система (4 элемента)">Правоохранительная система</a>
4306<a href="https://zaitcev.ru/tag/prognoz/" class="tag-cloud-link tag-link-44 tag-link-position-30" style="font-size: 12.699300699301pt;" aria-label="Прогноз (11 элементов)">Прогноз</a>
4307<a href="https://zaitcev.ru/tag/putin/" class="tag-cloud-link tag-link-163 tag-link-position-31" style="font-size: 9.7622377622378pt;" aria-label="Путин (5 элементов)">Путин</a>
4308<a href="https://zaitcev.ru/tag/rossiya/" class="tag-cloud-link tag-link-57 tag-link-position-32" style="font-size: 22pt;" aria-label="Россия (106 элементов)">Россия</a>
4309<a href="https://zaitcev.ru/tag/sssr/" class="tag-cloud-link tag-link-110 tag-link-position-33" style="font-size: 10.447552447552pt;" aria-label="СССР (6 элементов)">СССР</a>
4310<a href="https://zaitcev.ru/tag/sto/" class="tag-cloud-link tag-link-81 tag-link-position-34" style="font-size: 10.937062937063pt;" aria-label="СТО (7 элементов)">СТО</a>
4311<a href="https://zaitcev.ru/tag/ssha/" class="tag-cloud-link tag-link-43 tag-link-position-35" style="font-size: 18.769230769231pt;" aria-label="США (49 элементов)">США</a>
4312<a href="https://zaitcev.ru/tag/saudovskaya-araviya/" class="tag-cloud-link tag-link-54 tag-link-position-36" style="font-size: 9.7622377622378pt;" aria-label="Саудовская Аравия (5 элементов)">Саудовская Аравия</a>
4313<a href="https://zaitcev.ru/tag/sud/" class="tag-cloud-link tag-link-34 tag-link-position-37" style="font-size: 8.979020979021pt;" aria-label="Суд (4 элемента)">Суд</a>
4314<a href="https://zaitcev.ru/tag/turizm/" class="tag-cloud-link tag-link-40 tag-link-position-38" style="font-size: 10.447552447552pt;" aria-label="Туризм (6 элементов)">Туризм</a>
4315<a href="https://zaitcev.ru/tag/ukraina/" class="tag-cloud-link tag-link-28 tag-link-position-39" style="font-size: 14.167832167832pt;" aria-label="Украина (16 элементов)">Украина</a>
4316<a href="https://zaitcev.ru/tag/fizika/" class="tag-cloud-link tag-link-52 tag-link-position-40" style="font-size: 17.986013986014pt;" aria-label="Физика (41 элемент)">Физика</a>
4317<a href="https://zaitcev.ru/tag/finansy/" class="tag-cloud-link tag-link-23 tag-link-position-41" style="font-size: 19.454545454545pt;" aria-label="Финансы (58 элементов)">Финансы</a>
4318<a href="https://zaitcev.ru/tag/fondovyj-rynok/" class="tag-cloud-link tag-link-37 tag-link-position-42" style="font-size: 10.937062937063pt;" aria-label="Фондовый рынок (7 элементов)">Фондовый рынок</a>
4319<a href="https://zaitcev.ru/tag/shkolnye-znaniya/" class="tag-cloud-link tag-link-143 tag-link-position-43" style="font-size: 12.993006993007pt;" aria-label="Школьные знания (12 элементов)">Школьные знания</a>
4320<a href="https://zaitcev.ru/tag/ekonomika/" class="tag-cloud-link tag-link-11 tag-link-position-44" style="font-size: 21.804195804196pt;" aria-label="Экономика (101 элемент)">Экономика</a>
4321<a href="https://zaitcev.ru/tag/epidemiya/" class="tag-cloud-link tag-link-59 tag-link-position-45" style="font-size: 15.93006993007pt;" aria-label="Эпидемия (25 элементов)">Эпидемия</a></div>
4322</section><section id="archives-2" class="fbox swidgets-wrap widget widget_archive"><div class="swidget"><div class="sidebar-title-border"><h3 class="widget-title">Архивы</h3></div></div>
4323			<ul>
4324					<li><a href='https://zaitcev.ru/2023/11/'>Ноябрь 2023</a></li>
4325	<li><a href='https://zaitcev.ru/2023/10/'>Октябрь 2023</a></li>
4326	<li><a href='https://zaitcev.ru/2022/10/'>Октябрь 2022</a></li>
4327	<li><a href='https://zaitcev.ru/2022/07/'>Июль 2022</a></li>
4328	<li>
4328<a href='https://zaitcev.ru/2021/11/'>Ноябрь 2021</a></li>
4329	<li><a href='https://zaitcev.ru/2021/03/'>Март 2021</a></li>
4330	<li><a href='https://zaitcev.ru/2020/12/'>Декабрь 2020</a></li>
4331	<li><a href='https://zaitcev.ru/2020/11/'>Ноябрь 2020</a></li>
4332	<li><a href='https://zaitcev.ru/2020/10/'>Октябрь 2020</a></li>
4333	<li><a href='https://zaitcev.ru/2020/09/'>Сентябрь 2020</a></li>
4334	<li><a href='https://zaitcev.ru/2020/08/'>Август 2020</a></li>
4335	<li><a href='https://zaitcev.ru/2020/07/'>Июль 2020</a></li>
4336	<li><a href='https://zaitcev.ru/2020/06/'>Июнь 2020</a></li>
4337	<li><a href='https://zaitcev.ru/2020/05/'>Май 2020</a></li>
4338	<li><a href='https://zaitcev.ru/2020/04/'>Апрель 2020</a></li>
4339	<li><a href='https://zaitcev.ru/2020/03/'>Март 2020</a></li>
4340	<li><a href='https://zaitcev.ru/2020/02/'>Февраль 2020</a></li>
4341	<li><a href='https://zaitcev.ru/2020/01/'>Январь 2020</a></li>
4342	<li><a href='https://zaitcev.ru/2019/12/'>Декабрь 2019</a></li>
4343	<li><a href='https://zaitcev.ru/2019/11/'>Ноябрь 2019</a></li>
4344	<li><a href='https://zaitcev.ru/2019/10/'>Октябрь 2019</a></li>
4345	<li><a href='https://zaitcev.ru/2019/09/'>Сентябрь 2019</a></li>
4346	<li><a href='https://zaitcev.ru/2019/08/'>Август 2019</a></li>
4347	<li><a href='https://zaitcev.ru/2019/07/'>Июль 2019</a></li>
4348	<li><a href='https://zaitcev.ru/2019/06/'>Июнь 2019</a></li>
4349	<li><a href='https://zaitcev.ru/2019/02/'>Февраль 2019</a></li>
4350	<li><a href='https://zaitcev.ru/2019/01/'>Январь 2019</a></li>
4351	<li><a href='https://zaitcev.ru/2018/09/'>Сентябрь 2018</a></li>
4352	<li><a href='https://zaitcev.ru/2017/12/'>Декабрь 2017</a></li>
4353	<li><a href='https://zaitcev.ru/2017/10/'>Октябрь 2017</a></li>
4354	<li><a href='https://zaitcev.ru/2017/09/'>Сентябрь 2017</a></li>
4355	<li><a href='https://zaitcev.ru/2017/06/'>Июнь 2017</a></li>
4356	<li><a href='https://zaitcev.ru/2017/05/'>Май 2017</a></li>
4357	<li><a href='https://zaitcev.ru/2016/12/'>Декабрь 2016</a></li>
4358	<li><a href='https://zaitcev.ru/2016/11/'>Ноябрь 2016</a></li>
4359	<li><a href='https://zaitcev.ru/2016/09/'>Сентябрь 2016</a></li>
4360	<li><a href='https://zaitcev.ru/2016/08/'>Август 2016</a></li>
4361	<li><a href='https://zaitcev.ru/2016/07/'>Июль 2016</a></li>
4362	<li><a href='https://zaitcev.ru/2016/06/'>Июнь 2016</a></li>
4363	<li><a href='https://zaitcev.ru/2016/04/'>Апрель 2016</a></li>
4364	<li><a href='https://zaitcev.ru/2016/03/'>Март 2016</a></li>
4365	<li><a href='https://zaitcev.ru/2015/12/'>Декабрь 2015</a></li>
4366	<li><a href='https://zaitcev.ru/2015/11/'>Ноябрь 2015</a></li>
4367	<li><a href='https://zaitcev.ru/2015/02/'>Февраль 2015</a></li>
4368	<li><a href='https://zaitcev.ru/2014/12/'>Декабрь 2014</a></li>
4369			</ul>
4370
4371			</section><section id="custom_html-2" class="widget_text fbox swidgets-wrap widget widget_custom_html"><div class="textwidget custom-html-widget"><a href="https://zaitcev.ru.ru/wp-admin/admin.php?page=anycomment-subscriptions">Подписанты</a></div></section><section id="custom_html-3" class="widget_text fbox swidgets-wrap widget widget_custom_html"><div class="textwidget custom-html-widget">Копии статей могут размещаться на <a name ="dzen" href="https://zen.yandex.ru/vseolgotah">Дзен канале "Все о льготах"</a></div></section></aside><!-- #secondary -->
4372	</div>
4373</div>
4374</div><!-- #content -->
4375<div class="content-wrap">
4376
4377	<footer id="colophon" class="site-footer clearfix">
4378
4379		
4380			
4381						<div class="site-info">
4382				&copy;2026 Авторский блог Алексея Зайцева
4383
4384				<!-- Delete below lines to remove copyright from footer -->
4385				<span class="footer-info-right">
4386					 | Дизайн: <a href="https://superbthemes.com/" rel="nofollow noopener">Газетная тема WordPress</a>
4387				</span>
4388				<!-- Delete above lines to remove copyright from footer -->
4389
4390			</div>
4391		</div>
4392	</footer><!-- #colophon -->
4393</div>
4394
4395</div><!-- #page -->
4396
4397<div id="smobile-menu" class="mobile-only"></div>
4398<div id="mobile-menu-overlay"></div>
4399
4400<script type='text/javascript' src='https://zaitcev.ru/wp-content/plugins/simple-posts-ticker/public/js/jquery.marquee.min.js?ver=1.5.0' id='spt-ticker-js-js'></script>
vendor: 1 bytes, line 4400
4400
4401<script type='text/javascript' src='https://zaitcev.ru/wp-content/plugins/simple-posts-ticker/public/js/ticker.min.js?ver=1.1.5' id='spt-init-js-js'></script>
vendor: 1 bytes, line 4401
4401
4402<script type='text/javascript' src='https://zaitcev.ru/wp-content/themes/newspaperly/js/navigation.js?ver=20170823' id='newspaperly-navigation-js'></script>
vendor: 1 bytes, line 4402
4402
4403<script type='text/javascript' src='https://zaitcev.ru/wp-content/themes/newspaperly/js/skip-link-focus-fix.js?ver=20170823' id='newspaperly-skip-link-focus-fix-js'></script>
vendor: 1 bytes, line 4403
4403
4404<script type='text/javascript' src='https://zaitcev.ru/wp-content/themes/newspaperly/js/jquery.flexslider.js?ver=20150423' id='newspaperly-flexslider-jquery-js'></script>
vendor: 1 bytes, line 4404
4404
4405<script type='text/javascript' src='https://zaitcev.ru/wp-content/themes/newspaperly/js/script.js?ver=20160720' id='newspaperly-script-js'></script>
vendor: 1 bytes, line 4405
4405
4406<script type='text/javascript' src='https://zaitcev.ru/wp-content/themes/newspaperly/js/accessibility.js?ver=20160720' id='newspaperly-accessibility-js'></script>
vendor: 1 bytes, line 4406
4406
4407<script type='text/javascript' src='https://cdn.onesignal.com/sdks/OneSignalSDK.js?ver=6.3.12' async='async' id='remote_sdk-js'></script>
4407
4408<!-- start Simple Custom CSS and JS -->
4409<script type="text/javascript">
4410if (window.location.pathname == '/proverka-pravopisaniya-anglijskih-slov/')
4411{
4412oshibki = new Map();
4413u = new SpeechSynthesisUtterance();
4414u.rate = 1;
4415
4416const set_of_words = [
4417    ["5a-5b",
4418["в зоопарке", "at the zoo"],
4419["обезьяна", "monkey"],
4420["мех", "fur"],
4421["ухо", "ear"],
4422["слон", "elephant"],
4423["бивни", "tusks"],
4424["хобот", "trunk"],
4425["лев", "lion"],
4426["хвост", "tail"],
4427["грива", "mane"],
4428["жираф", "giraffe"],
4429["лапы", "paws"],
4430["шея", "neck"],
4431["ноги", "legs"],
4432["медведь", "bear"],
4433["павлин", "peacock"],
4434["клюв", "beak"],
4435["крыло", "wing"],
4436["перо", "feather"],
4437["верблюд", "camel"],
4438["носорог", "rhinoceros"],
4439["кобра", "cobra"],
4440["крокодил", "crocodile"],
4441["леопард", "leopard"],
4442["олень", "deer"]
4443    ],
4444    ["Времена года",
4445        ["осень", "autumn"],
4446        ["зима", "winter"],
4447        ["весна", "spring"],
4448        ["лето", "summer"]
4449    ],
4450    ["Месяцы",
4451        ["Январь", "January"],
4452        ["Февраль", "February"],
4453        ["Март", "March"],
4454        ["Апрель", "April"],
4455        ["Май", "May"],
4456        ["Июнь", "June"],
4457        ["Июль", "July"],
4458        ["Август", "August"],
4459        ["Сентябрь", "September"],
4460        ["Октябрь", "October"],
4461        ["Ноябрь", "November"],
4462        ["Декабрь", "December"]
4463    ],
4464    ["Неправильные глаголы блок 1 bring brought brought",
4465        ["приносить", "bring brought brought"],
4466        ["покупать", "buy bought bought"],
4467        ["бороться", "fight fought fought"],
4468        ["думать", "think thought thought"],
4469        ["искать", "seek sought sought"],
4470        ["ловить", "catch caught caught"],
4471        ["обучать", "teach taught taught"]
4472    ],
4473    ["Неправильные глаголы блок 2 drink drank drunk",
4474        ["пить", "drink drank drunk"],
4475        ["бежать", "run ran run"],
4476        ["петь", "sing sang sung"],
4477        ["звонить", "ring rang rung"],
4478        ["плавать", "swim swam swum"]
4479    ],
4480    ["Неправильные глаголы блок 3 cost cost cost",
4481        ["стоить", "cost cost cost"],
4482        ["резать", "cut cut cut"],
4483        ["позволять", "let let let"],
4484        ["класть", "put put put"],
4485        ["ставить", "set set set"],
4486        ["закрывать", "shut shut shut"]
4487    ],
4488    ["Неправильные глаголы блок 4 build built built",
4489        ["строить", "build built built"],
4490        ["учить(ся), узнавать", "learn learned/learnt learnt"],
4491        ["значить, подразумевать", "mean meant meant"],
4492        ["посылать", "send sent sent"],
4493        ["тратить", "spend spent spent"]
4494    ],
4495    ["Неправильные глаголы блок 5 hold held held",
4496        ["держать, проводить", "hold held held"],
4497        ["держать", "keep kept kept"],
4498        ["кормить(ся)", "feed fed fed"],
4499        ["чувствовать", "feel felt felt"],
4500        ["пахнуть, нюхать", "smell smelt smelt"],
4501        ["вести", "lead led led"],
4502        ["оставлять, уезжать", "leave left left"],
4503        ["спать", "sleep slept slept"],
4504        ["встречать", "meet met met"],
4505        ["говорить", "say said said"]
4506    ],
4507    ["Неправильные глаголы блок 6 lay laid laid",
4508        ["класть", "lay laid laid"],
4509        ["платить", "pay paid paid"],
4510        ["делать, создавать", "make made made"]
4511    ],
4512    ["Неправильные глаголы блок 7 break broke broken",
4513        ["ломать", "break broke broken"],
4514        ["выбирать", "choose chose chosen"],
4515        ["замерзать", "freeze froze frozen"],
4516        ["говорить", "speak spoke spoken"],
4517        ["просыпаться", "wake woke/waked woken/waked"]
4518    ],
4519    ["Неправильные глаголы блок 8 fly flew flown",
4520        ["летать", "fly flew flown"],
4521        ["расти, выращивать", "grow grew grown"],
4522        ["знать", "know knew known"],
4523        ["бросать", "throw threw thrown"],
4524        ["рисовать, тащить", "draw drew drawn"]
4525    ],
4526    ["Неправильные глаголы блок 9 drive drove driven",
4527        ["водить, гнать", "drive drove driven"],
4528        ["есть, кушать", "eat ate eaten"],
4529        ["падать", "fall fell fallen"],
4530        ["давать", "give gave given"],
4531        ["прощать", "forgive forgave forgiven"],
4532        ["прятать(ся)", "hide hid hidden"],
4533        ["писать", "write wrote written"],
4534        ["подниматься", "rise rose risen"]
4535    ],
4536    ["Неправильные глаголы блок 10 have had had",
4537        ["иметь", "have had had"],
4538        ["сидеть", "sit sat sat"],
4539        ["читать", "read read read"],
4540        ["приходить", "come came come"],
4541        ["становиться", "become became become"],
4542        ["стоять", "stand stood stood"],
4543        ["понимать", "understand understood understood"],
4544        ["продавать", "sell sold sold"],
4545        ["рассказывать", "tell told told"],
4546        ["получать, становиться", "get got gotten/got"],
4547        ["терять", "lose lost lost"]
4548    ],
4549    ["Неправильные глаголы блок 11 be was/were been",
4550        ["быть, находиться", "be was/were been"],
4551        ["видеть", "see saw seen"],
4552        ["забывать", "forget forgot forgotten"],
4553        ["идти, ехать", "go went gone"],
4554        ["висеть, вешать", "hang hung hung"],
4555        ["показывать", "show showed shown"],
4556        ["делать", "do did done"],
4557        ["брать, взять", "take took taken"],
4558        ["носить", "wear wore worn"],
4559        ["выигрывать, побеждать", "win won won"],
4560        ["лежать", "lie lay lain"],
4561        ["находить", "find found found"],
4562        ["слышать", "hear heard heard"]
4563    ],
4564    ["Дни недели",
4565        ["Понедельник", "Monday"],
4566        ["Вторник", "Tuesday"],
4567        ["Среда", "Wednesday"],
4568        ["Четверг", "Thursday"],
4569        ["Пятница", "Friday"],
4570        ["Суббота", "Saturday"],
4571        ["Воскресенье", "Sunday"]
4572    ],
4573    ["Родственники",
4574        ["тетя", "aunt"],
4575        ["тетушка", "auntie"],
4576        ["брат", "brother"],
4577        ["кузен, кузина", "cousin"],
4578        ["дочь", "daughter"],
4579        ["отец", "father"],
4580        ["папа", "dad"],
4581        ["дедушка", "grandfather"],
4582        ["бабушка", "grandmother"],
4583        ["дедушка и бабушка", "grandparents"],
4584        ["баба", "grandma"],
4585        ["деда", "grandpa"],
4586        ["муж", "husband"],
4587        ["мать", "mother"],
4588        ["мама", "mum"],
4589        ["родители", "parents"],
4590        ["сестра", "sister"],
4591        ["сын", "son"],
4592        ["дядя", "uncle"],
4593        ["жена", "wife"],
4594        ["дети", "children"],
4595        ["друг", "friend"]
4596    ],
4597    ["Нации и страны",
4598        ["американец, американская", "American"],
4599        ["Бразилия", "Brazil"],
4600        ["бразилец, бразильская", "Brazilian"],
4601        ["британец, британская", "British"],
4602        ["Китай", "China"],
4603        ["китаец, китайская", "Chinese"],
4604        ["Франция", "France"],
4605        ["француз, французская", "French"],
4606        ["немец, немецкая", "German"],
4607        ["Германия", "Germany"],
4608        ["итальянец, итальянская", "Italian"],
4609        ["Италия", "Italy"],
4610        ["Япония", "Japan"],
4611        ["японец, японская", "Japanese"],
4612        ["Польша", "Poland"],
4613        ["поляк, польская", "Polish"],
4614        ["Испания", "Spain"],
4615        ["испанец, испанская", "Spanish"],
4616        ["Великобритания", "the UK"],
4617        ["Соединенные Штаты Америки", "the USA"],
4618        ["Турция", "Turkey"],
4619        ["турок, турецкая", "Turkish"]
4620    ],
4621    ["Характеристики человека",
4622        ["большой", "big"],
4623        ["старый", "old"],
4624        ["короткий", "short"],
4625        ["стройный", "slim"],
4626        ["маленький", "small"],
4627        ["высокий", "tall"],
4628        ["молодой", "young"],
4629        ["храбрый", "brave"],
4630        ["умный", "clever"],
4631        ["уверенный", "confident"],
4632        ["дружелюбный", "friendly"],
4633        ["смешной", "funny"],
4634        ["добрый", "kind"],
4635        ["нервный", "nervous"],
4636        ["тихий", "quiet"],
4637        ["расслабленный", "relaxed"],
4638        ["застенчивый", "shy"],
4639        ["имя", "name"],
4640        ["приятный", "nice"],
4641        ["возраст", "age"],
4642        ["день рождения", "birthday"],
4643        ["крутой", "cool"],
4644        ["любимый", "favourite"],
4645        ["люди", "people"],
4646        ["человек", "person"]
4647    ],
4648    ["Одежда",
4649        ["ботинок", "boot"],
4650        ["платье", "dress"],
4651        ["шляпа", "hat"],
4652        ["куртка", "jacket"],
4653        ["джинсы", "jeans"],
4654        ["рубашка", "shirt"],
4655        ["обувь", "shoes"],
4656        ["шорты", "shorts"],
4657        ["юбка", "skirt"],
4658        ["солнцезащитные очки", "sunglasses"],
4659        ["свитер", "sweater"],
4660        ["толстовка", "sweatshirt"],
4661        ["спортивный костюм", "tracksuit"],
4662        ["кроссовки", "trainers"],
4663        ["брюки", "trousers"],
4664        ["футболка", "T-shirt"]
4665    ],
4666    ["разное",
4667        ["дом (место)", "home"],
4668        ["дом(задание)", "house"],
4669        ["прыгать", "jump"],
4670        ["вечеринка", "party"],
4671        ["говорить на иностранном языке", "speak a foreign language"],
4672        ["ходить", "walk"]
4673    ],
4674    ["Глаза",
4675        ["Глаза", "Eyes"],
4676        ["большие", "big"],
4677        ["голубые", "blue"],
4678        ["карие", "brown"],
4679        ["темные", "dark"],
4680        ["зеленые", "green"],
4681        ["маленькие", "small"]
4682    ],
4683    ["Волосы",
4684        ["волосы", "hair"],
4685        ["светлые", "blonde"],
4686        ["каштановые", "brown"],
4687        ["седые", "grey"],
4688        ["длинные", "long"],
4689        ["рыжие", "red"],
4690        ["короткие", "short"]
4691    ],
4692    ["Домашка 2-1-26",
4693        ["жених", "groom"],
4694        ["невеста", "bride"],
4695        ["дядя", "uncle"],
4696        ["тётя", "aunt"],
4697        ["близнецы", "twins"],
4698        ["братья и сёстры", "siblings"],
4699        ["свадьба", "wedding"],
4700        ["развод", "divorce"],
4701        ["пекарь", "baker"],
4702        ["официант", "waiter"],
4703        ["медсестра медбрат", "nurse"],
4704        ["адвокат юрист", "lawyer"],
4705        ["над", "above"],
4706        ["ниже", "below"],
4707        ["перед", "in front of"],
4708        ["позади", "behind"],
4709        ["между", "between"],
4710        ["над (через)", "over"],
4711        ["под", "under"],
4712        ["внешность", "appearance"],
4713        ["уверенный", "confident"],
4714        ["другой отличный", "different"],
4715        ["трудный", "difficult"],
4716        ["грязный", "dirty"],
4717        ["знаменитый", "famous"],
4718        ["толстый", "fat"],
4719        ["огромный", "huge"],
4720        ["громкий", "loud"],
4721        ["узкий", "narrow"],
4722        ["хорошенький миловидный", "pretty"],
4723        ["тихий", "quiet"],
4724        ["стеснительный", "shy"],
4725        ["глупый", "silly"],
4726        ["сильный", "strong"],
4727        ["крошечный", "tiny"],
4728        ["широкий", "wide"],
4729        ["привлекательный", "attractive"],
4730        ["уродливый", "ugly"],
4731        ["жуткий", "terrible"],
4732        ["потрясающий", "awesome"],
4733        ["милый", "cute"],
4734        ["мелкий поверхностный", "shallow"],
4735        ["глубокий", "deep"],
4736        ["ужасный", "horrible"],
4737        ["невозможный", "impossible"],
4738        ["незамужний холостой", "single"],
4739        ["женатый замужем", "married"],
4740        ["такой же", "same"],
4741        ["похожий", "similar"],
4742        ["другой", "other"],
4743        ["ещё один", "another"],
4744        ["один", "alone"],
4745        ["громадный", "enormous"],
4746        ["крошечный", "tiny"],
4747        ["сухой", "dry"],
4748        ["мокрый", "wet"],
4749        ["кислый", "sour"],
4750        ["солёный", "salty"],
4751        ["горький", "bitter"]
4752    ],
4753    ["BODY",
4754        ["голова", "head"],
4755        ["волосы", "hair"],
4756        ["лицо", "face"],
4757        ["глаз", "eye"],
4758        ["ухо", "ear"],
4759        ["нос", "nose"],
4760        ["рот", "mouth"],
4761        ["зуб", "tooth"],
4762        ["язык", "tongue"],
4763        ["шея", "neck"],
4764        ["плечо", "shoulder"],
4765        ["рука", "arm"],
4766        ["локоть", "elbow"],
4767        ["кисть руки", "hand"],
4768        ["палец рук", "finger"],
4769        ["большой палец", "thumb"],
4770        ["грудь", "chest"],
4771        ["спина", "back"],
4772        ["живот", "stomach"],
4773        ["талия", "waist"],
4774        ["бедро", "hip"],
4775        ["нога", "leg"],
4776        ["колено", "knee"],
4777        ["ступня ноги", "foot"],
4778        ["палец ноги", "toe"],
4779        ["пятка", "heel"],
4780        ["кожа", "skin"],
4781        ["ноготь", "nail"],
4782        ["кость", "bone"],
4783        ["мышца", "muscle"],
4784        ["сердце", "heart"],
4785        ["лёгкое", "lung"],
4786        ["печень", "liver"],
4787        ["почка", "kidney"],
4788        ["кровь", "blood"],
4789        ["мозг", "brain"],
4790        ["пот", "sweat"],
4791        ["слеза", "tear"],
4792        ["улыбка", "smile"],
4793        ["боль", "pain"]
4794    ],
4795    ["WEATHER AND LANDSCAPE",
4796        ["погода", "weather"],
4797        ["зима", "winter"],
4798        ["весна", "spring"],
4799        ["лето", "summer"],
4800        ["осень", "autumn"],
4801        ["землетрясение", "earthquake"],
4802        ["наводнение", "flooding"],
4803        ["ураган", "hurricane"],
4804        ["лес", "forest"],
4805        ["холм", "hill"],
4806        ["озеро", "lake"],
4807        ["река", "river"],
4808        ["море", "sea"],
4809        ["океан", "ocean"],
4810        ["гора", "mountain"],
4811        ["мусор", "rubbish"],
4812        ["облачно", "cloudy"],
4813        ["холодно", "cold"],
4814        ["опасно", "dangerous"],
4815        ["туманно", "foggy"],
4816        ["свежо", "fresh"],
4817        ["солнечно", "sunny"],
4818        ["тепло", "warm"],
4819        ["ветрено", "windy"],
4820        ["дуть", "to blow"],
4821        ["дышать", "to breathe"],
4822        ["сажать", "to plant"],
4823        ["загрязнять", "to pollute"],
4824        ["дождить", "to rain"],
4825        ["перерабатывать", "to recycle"],
4826        ["светить", "to shine"],
4827        ["снежить", "to snow"],
4828        ["страна", "country"],
4829        ["небо", "sky"],
4830        ["Земля", "Earth"],
4831        ["земля, почва", "ground"],
4832        ["давление", "pressure"],
4833        ["прогноз", "forecast"],
4834        ["снежная буря", "blizzard"],
4835        ["град", "hail"]
4836    ],
4837	    ["1-60",
4838        ["миллиард", "billion"],
4839        ["мост", "bridge"],
4840        ["Не стоит благодарности.", "Don't mention it."],
4841        ["Как дела?", "How do you do?"],
4842        ["миллион", "million"],
4843        ["лестница", "stairs"],
4844        ["тысяча", "thousand"],
4845        ["туннель", "tunnel"],
4846        ["кондиционер", "air conditioner"],
4847        ["тумбочка", "bedside table"],
4848        ["нижний ярус кровати", "the bottom bed"],
4849        ["двухъярусная кровать", "bunk beds"],
4850        ["нести", "carry"],
4851        ["изменить", "change"],
4852        ["комод", "chest of drawers"],
4853        ["занавес", "curtain"],
4854        ["украшать", "decorate"],
4855        ["приветствие", "greetings"],
4856        ["Это выглядит фантастически!", "It looks fantastic!"],
4857        ["коврик", "mat"],
4858        ["MP3-плеер", "MP3 player"],
4859        ["Приятно познакомиться!", "Nice to meet you!"],
4860        ["нажимать", "press"],
4861        ["поднимать", "put up"],
4862        ["поднимать занавес", "put up the curtains"],
4863        ["вполне готов", "quite ready"],
4864        ["полки", "shelves"],
4865        ["отдыхать", "take a break"],
4866        ["хотя", "though"],
4867        ["верхний ярус кровати", "the top bed"],
4868        ["включить", "turn on"],
4869        ["близнецы", "twins"],
4870        ["наконец", "at last"],
4871        ["готовить", "cook"],
4872        ["украшение", "decoration"],
4873        ["гладить", "do the ironing"],
4874        ["пылесосить", "do the vacuuming"],
4875        ["мыть посуду", "do the washing-up"],
4876        ["наряжаться", "dress up"],
4877        ["стереть пыль с мебели", "dust the furniture"],
4878        ["забывать", "forget"],
4879        ["наверняка", "for sure"],
4880        ["гламурный", "glamorous"],
4881        ["тренироваться", "get some exercise"],
4882        ["ходить по магазинам", "go shopping"],
4883        ["проводить встречу, собрание", "have a meeting"],
4884        ["Я на диете.", "I'm on a diet."],
4885        ["Могу поспорить.", "I bet"],
4886        ["приглашение", "invitation"],
4887        ["заправлять кровать", "make the beds"],
4888        ["матч", "match"],
4889        ["мыть пол", "mop the floor"],
4890        ["ремонтник", "repairman"],
4891        ["безалкогольные напитки", "soft drinks"],
4892        ["спортивный", "sporty"],
4893        ["отключить", "switch off"],
4894        ["тематическая вечеринка", "theme party"],
4895        ["А что я?", "What about me?"],
4896        ["работать допоздна", "work late"],
4897        ["до тех пор, как", "as long as"]
4898    ],
4899    ["61-120",
4900        ["коллекционировать комиксы", "collect comics"],
4901        ["не против", "don't mind"],
4902        ["скачивать музыку", "download music"],
4903        ["получить информацию", "get information"],
4904        ["остаться на ночь", "go to a sleepover"],
4905        ["болтаться, проводить время", "hang out"],
4906        ["получать удовольствие", "have fun"],
4907        ["честный", "honest"],
4908        ["информация", "information"],
4909        ["возражать", "mind"],
4910        ["самостоятельно", "on my own"],
4911        ["дружелюбный", "outgoing"],
4912        ["играть в спортивные игры", "play sports"],
4913        ["популярный", "popular"],
4914        ["предпочитать", "prefer"],
4915        ["тихий", "quiet"],
4916        ["тест", "quiz"],
4917        ["читать журналы", "read magazines"],
4918        ["надёжный", "reliable"],
4919        ["отправлять текстовые сообщения", "send text messages"],
4920        ["общительный", "sociable"],
4921        ["искать информацию в интернете", "surf the Net"],
4922        ["приключение", "adventure"],
4923        ["бить", "beat"],
4924        ["пчела", "bee"],
4925        ["начинать", "begin"],
4926        ["герой", "character"],
4927        ["погоня", "chase"],
4928        ["соревноваться", "compete"],
4929        ["противоположный", "contrasting"],
4930        ["коридор", "corridor"],
4931        ["быть без ума от", "crazy about"],
4932        ["создавать", "create"],
4933        ["одеваться", "dress"],
4934        ["враг", "enemy"],
4935        ["исследовать", "explore"],
4936        ["фэнтези (жанр игр, книг)", "fantasy"],
4937        ["драться", "fight"],
4938        ["плыть", "float"],
4939        ["галактика", "galaxy"],
4940        ["присоединиться к", "join"],
4941        ["спрыгнуть", "jump off"],
4942        ["похитить", "kidnap"],
4943        ["должен петь", "must sing"],
4944        ["окрестности", "neighbourhood"],
4945        ["личность", "personality"],
4946        ["портрет", "portrait"],
4947        ["принцесса", "princess"],
4948        ["заключённый", "prisoner"],
4949        ["бежать за", "run after"],
4950        ["сохранять", "save"],
4951        ["делать заклинания", "spell-making"],
4952        ["сюжет", "storyline"],
4953        ["брать", "take up"],
4954        ["путешествовать по", "travel across"],
4955        ["волшебная палочка", "wand"],
4956        ["выполнять работу по дому", "do housework"],
4957        ["хобби", "hobby"],
4958        ["искать", "look for"],
4959        ["двигаться", "move"]
4960    ],
4961    ["121-180",
4962        ["осторожнее!", "watch out"],
4963        ["рядом со мной", "by my side"],
4964        ["потолок", "ceiling"],
4965        ["повседневная жизнь", "daily life"],
4966        ["герой", "hero"],
4967        ["изобретение", "invention"],
4968        ["лабиринт", "maze"],
4969        ["безопасно", "safely"],
4970        ["вонючий", "smelly"],
4971        ["космос", "space"],
4972        ["коснуться", "touch"],
4973        ["скучающий", "bored"],
4974        ["тщательно", "carefully"],
4975        ["подойти близко", "come close"],
4976        ["подойти к", "come up to"],
4977        ["компьютерный программист", "computer programmer"],
4978        ["проектировать, конструировать", "design"],
4979        ["человек, чьей работой является выгуливание собак", "dog walker"],
4980        ["модный", "fashionable"],
4981        ["модельер", "fashion designer"],
4982        ["приносить", "fetch"],
4983        ["Я не совсем уверен.", "I'm not so sure."],
4984        ["Звучит здорово.", "It sounds like fun."],
4985        ["укротитель львов", "lion tamer"],
4986        ["терпеливо", "patiently"],
4987        ["фотограф", "photographer"],
4988        ["тихо", "silently"],
4989        ["продавец-консультант", "shop assistant"],
4990        ["ветеринар", "vet"],
4991        ["виртуальная реальность", "virtual reality"],
4992        ["дикая природа", "wildlife"],
4993        ["храбрый", "brave"],
4994        ["взломщик", "burglar"],
4995        ["дворецкий", "butler"],
4996        ["профориентация", "career zone"],
4997        ["шофёр", "chauffeur"],
4998        ["творческий", "creative"],
4999        ["кроме", "except"],
5000        ["исправить", "fix"],
5001        ["любящий что-либо", "fond of"],
5002        ["дружелюбно", "friendly"],
5003        ["войти/выйти", "get into/get out of"],
5004        ["хирургия", "surgery"],
5005        ["карман", "pocket"],
5006        ["ограбление", "robbery"],
5007        ["микроавтобус", "minibus"],
5008        ["любящий", "loving"],
5009        ["антиквариат", "antiques"],
5010        ["сообщать, докладывать", "report"],
5011        ["развлечение", "entertainment"],
5012        ["стоить", "cost"],
5013        ["комплимент", "compliment"],
5014        ["трудолюбивый", "hard-working"],
5015        ["магазинный вор", "shoplifter"],
5016        ["вертолёт", "helicopter"],
5017        ["толпа", "crowd"],
5018        ["восхищаться", "admire"],
5019        ["добрый", "kind"],
5020        ["выход", "exit"],
5021        ["куст", "bush"]
5022    ],
5023    ["181-240",
5024        ["кемпинг", "camp"],
5025        ["сажать цветы", "plant flowers"],
5026        ["рассказ", "story"],
5027        ["бортпроводник", "flight attendant"],
5028        ["переусердствовать", "overdo"],
5029        ["корабль", "ship"],
5030        ["мотоцикл", "motorbike"],
5031        ["исполнять, выступать", "perform"],
5032        ["трамвай", "tram"],
5033        ["пересекать", "cross"],
5034        ["успешно", "successfully"],
5035        ["интересный", "interesting"],
5036        ["пропустить, пролистнуть", "*skip"],
5037        ["терпеливый", "patient"],
5038        ["зеленеть", "turn green"],
5039        ["метро", "subway"],
5040        ["личный", "personal"],
5041        ["удивительный", "amazing"],
5042        ["верить, полагать", "believe"],
5043        ["версия", "version"],
5044        ["в помещении", "indoors"],
5045        ["тренер", "coach"],
5046        ["крыло", "wing"],
5047        ["брать интервью, спрашивать", "interview"],
5048        ["на улице", "outdoors"],
5049        ["транспортные средства", "means of transport"],
5050        ["предпочитать", "prefer"],
5051        ["преступник", "criminal"],
5052        ["иметь сильную страсть к", "have a strong passion for"],
5053        ["фургон", "van"],
5054        ["согласно", "according to"],
5055        ["культура", "culture"],
5056        ["обойти", "get around"],
5057        ["сесть на/выйти из (get on the bus/get off the bus", "get on/get off"],
5058        ["подарок", "gift"],
5059        ["инспектор", "inspector"],
5060        ["прибывать", "arrive"],
5061        ["фея", "fairy"],
5062        ["достопримечательность", "attraction"],
5063        ["успешный в чём-либо", "good at"],
5064        ["оканчиваться", "end up"],
5065        ["скутер", "scooter"],
5066        ["копировать", "copy"],
5067        ["лекарство", "medicine"],
5068        ["крошечные существа", "tiny creatures"],
5069        ["двухэтажный автобус", "double-decker bus"],
5070        ["легенда", "legend"],
5071        ["содержать", "contain"],
5072        ["миф", "myth"],
5073        ["иметь проблемы", "have trouble"],
5074        ["удивительно", "surprisingly"],
5075        ["проходить", "pass"],
5076        ["страстный", "passionate"],
5077        ["феи", "fairies"],
5078        ["посудомоечная машина", "dishwasher"],
5079        ["преступление", "crime"],
5080        ["подбирать", "pick up"],
5081        ["ток-шоу", "talk show"],
5082        ["ответственность", "responsibility"],
5083        ["одарённый", "gifted"]
5084    ],
5085    ["241-300",
5086        ["налить", "pour"],
5087        ["бестселлер", "best seller"],
5088        ["пушистый", "fluffy"],
5089        ["утомительный", "tiring"],
5090        ["оружие", "weapon"],
5091        ["пятнистый", "spotted"],
5092        ["выравнивать", "level"],
5093        ["лекарство", "cure"],
5094        ["шея", "neck"],
5095        ["страшный", "terrible"],
5096        ["целый", "whole"],
5097        ["кемпинг", "campsite"],
5098        ["учебный центр полётов", "flight training centre"],
5099        ["медведь", "bear"],
5100        ["в клеточку", "checked"],
5101        ["говорить", "say"],
5102        ["смеяться", "laugh"],
5103        ["всеобщий, главный", "general"],
5104        ["редкий", "rare"],
5105        ["сознательный", "conscious"],
5106        ["загорать", "go sunbathing"],
5107        ["куртка", "jacket"],
5108        ["строгий", "formal"],
5109        ["узор", "pattern"],
5110        ["закрывать", "shut"],
5111        ["петь", "sing"],
5112        ["лёгкий", "easy"],
5113        ["использованный", "used"],
5114        ["открытый", "open"],
5115        ["садовник", "gardener"],
5116        ["рак", "cancer"],
5117        ["леопард", "leopard"],
5118        ["показ мод", "fashion show"],
5119        ["аксессуары", "accessories"],
5120        ["встречать", "meet"],
5121        ["лучший", "best"],
5122        ["подозрительный", "suspicious"],
5123        ["светлый", "light"],
5124        ["улитка", "snail"],
5125        ["размер", "size"],
5126        ["ставить", "put"],
5127        ["холодный", "cold"],
5128        ["поездка", "trip"],
5129        ["ёж", "hedgehog"],
5130        ["стейк", "steak"],
5131        ["трясти", "shake"],
5132        ["есть", "eat"],
5133        ["спрашивать", "ask"],
5134        ["дружественный", "friendly"],
5135        ["местный", "local"],
5136        ["древний", "ancient"],
5137        ["отправиться в поход", "go camping"],
5138        ["заняться виндсерфингом", "go windsurfing"],
5139        ["носки", "socks"],
5140        ["Какой у вас размер?", "What size are you?"],
5141        ["давать", "give"],
5142        ["кожа", "leather"],
5143        ["смешивать", "mix"],
5144        ["автоматический", "automatic"],
5145        ["типичный", "typical"]
5146    ],
5147    ["301-360",
5148        ["полезный", "useful"],
5149        ["змея", "snake"],
5150        ["действовать", "act"],
5151        ["немного узкий", "a bit tight"],
5152        ["голодный", "hungry"],
5153        ["пустыня", "desert"],
5154        ["сурок", "groundhog"],
5155        ["брюки", "trousers"],
5156        ["тень", "shadow"],
5157        ["говорить", "speak"],
5158        ["спина", "back"],
5159        ["пальто", "coat"],
5160        ["способный", "able"],
5161        ["острый", "sharp"],
5162        ["выпускать", "release"],
5163        ["моряк", "sailor"],
5164        ["пить", "drink"],
5165        ["испуганный", "afraid"],
5166        ["мощный", "powerful"],
5167        ["полезный", "helpful"],
5168        ["ворота", "gate"],
5169        ["листья", "leaves"],
5170        ["схватить", "grip"],
5171        ["необычный", "unusual"],
5172        ["разумный", "reasonable"],
5173        ["позже", "later on"],
5174        ["население", "population"],
5175        ["коала", "koala"],
5176        ["впадать в спячку", "hibernate"],
5177        ["великолепный", "splendid"],
5178        ["тревожный", "anxious"],
5179        ["частный", "private"],
5180        ["стихотворение", "poem"],
5181        ["ушибить", "injure"],
5182        ["отправлять", "send"],
5183        ["ясный, чистый", "clear"],
5184        ["золотая рыбка", "goldfish"],
5185        ["фламинго", "flamingo"],
5186        ["ломтики", "slices"],
5187        ["ветер дует", "wind blows"],
5188        ["тунец", "tuna"],
5189        ["ломать", "break"],
5190        ["устанавливать", "set"],
5191        ["писать", "write"],
5192        ["левый", "left"],
5193        ["эффективный", "efficient"],
5194        ["международный", "international"],
5195        ["волк", "wolf"],
5196        ["секретное сообщение", "secret message"],
5197        ["ежедневный", "daily"],
5198        ["щенок", "puppy"],
5199        ["сердитый", "angry"],
5200        ["обезьяна", "monkey"],
5201        ["тяжёлый", "heavy"],
5202        ["перебраться, перейти", "get across"],
5203        ["звезда", "star"],
5204        ["примерить", "try on"],
5205        ["обращаться к", "turn to"],
5206        ["костюм", "suit"],
5207        ["толстый", "thick"]
5208    ],
5209    ["361-420",
5210        ["дорогой", "expensive"],
5211        ["дешёвая игрушка", "cheap toy"],
5212        ["включать в себя", "include"],
5213        ["удерживать", "hold"],
5214        ["прятать", "hide"],
5215        ["улучшаться", "improve"],
5216        ["вероятный, возможный", "likely"],
5217        ["тёмный", "dark"],
5218        ["неофициальный", "informal"],
5219        ["исторический", "historical"],
5220        ["широкий", "wide"],
5221        ["старомодный", "old-fashioned"],
5222        ["простой", "plain"],
5223        ["торговый центр", "mall"],
5224        ["идти", "go"],
5225        ["конечный", "final"],
5226        ["замечательный, выдающийся", "remarkable"],
5227        ["определённый, отчётливый", "distinct"],
5228        ["язык", "tongue"],
5229        ["лайм", "lime"],
5230        ["мешковатый", "baggy"],
5231        ["мести", "sweep"],
5232        ["бежать", "run"],
5233        ["снежный", "snowy"],
5234        ["улучшать", "improve"],
5235        ["сани", "sleigh"],
5236        ["загрязнение", "pollution"],
5237        ["возмущать", "irritate"],
5238        ["запирать", "lock"],
5239        ["психологический", "psychological"],
5240        ["поздний, последний", "late"],
5241        ["окружающая среда", "environment"],
5242        ["центральный", "central"],
5243        ["краб", "crab"],
5244        ["нести", "carry"],
5245        ["смотреть", "look"],
5246        ["физический", "physical"],
5247        ["приятный, весёлый", "pleasant"],
5248        ["блестящий", "brilliant"],
5249        ["сокровище", "treasure"],
5250        ["радость", "delight"],
5251        ["мелко резать", "chop"],
5252        ["светиться", "glow"],
5253        ["тревожность", "anxiety"],
5254        ["одинокий", "lonely"],
5255        ["грубый", "rude"],
5256        ["светить", "shine"],
5257        ["песок", "sand"],
5258        ["энергичный", "energetic"],
5259        ["торговаться", "bargain"],
5260        ["покидать", "leave"],
5261        ["заключать брак", "marry"],
5262        ["платить", "pay"],
5263        ["одалживать", "lend"],
5264        ["терпеть неудачу, скучать", "miss"],
5265        ["испуганный", "scared"],
5266        ["мешок", "bag"],
5267        ["принимать калории", "take calories"],
5268        ["запись", "record"],
5269        ["шутить", "joke"]
5270    ],
5271
5272    ["421-480",
5273        ["неважно", "no matter"],
5274        ["убивать", "kill"],
5275        ["чтобы ни было", "whatever"],
5276        ["звонить", "call"],
5277        ["уродливый", "ugly"],
5278        ["прямой, верный", "right"],
5279        ["существующий", "existing"],
5280        ["облачный", "cloudy"],
5281        ["жёсткий, усердный", "hard"],
5282        ["продвинутый, расширенный", "advanced"],
5283        ["гепард", "cheetah"],
5284        ["учёный", "scientist"],
5285        ["немного сложно", "a bit difficult"],
5286        ["молочные продукты", "dairy products"],
5287        ["волнующее событие", "exciting event"],
5288        ["жить", "live"],
5289        ["судить", "judge"],
5290        ["ночной кошмар", "nightmare"],
5291        ["отчаявшиеся домохозяйки", "desperate housewives"],
5292        ["сильный", "strong"],
5293        ["пиво", "beer"],
5294        ["опыт", "experience"],
5295        ["будущее", "future"],
5296        ["неспособный", "unable"],
5297        ["политический", "political"],
5298        ["религиозный", "religious"],
5299        ["расшифровывать", "decode"],
5300        ["уничтожить", "destroy"],
5301        ["горб", "hump"],
5302        ["Поймал тебя!", "Got you!"],
5303        ["общий, популярный", "common"],
5304        ["принимающий решение", "decision-maker"],
5305        ["ресницы", "eyelashes"],
5306        ["ковбой", "cowboy"],
5307        ["слабый", "weak"],
5308        ["прошлый, прошедший", "past"],
5309        ["вдохновлять", "inspire"],
5310        ["гражданин", "citizen"],
5311        ["это поле такое чудесное!", "this field is so marvelous"],
5312        ["мёд", "honey"],
5313        ["Это выгодная сделка.", "It's a deal."],
5314        ["ленты", "ribbons"],
5315        ["читать", "read"],
5316        ["чувствовать", "feel"],
5317        ["свободный", "free"],
5318        ["трудный", "difficult"],
5319        ["осторожный", "careful"],
5320        ["это баг или фича?", "Is this bug or feature?"],
5321        ["передай мне", "pass me"],
5322        ["секунда", "second"],
5323        ["полосатый", "striped"],
5324        ["развивать", "develop"],
5325        ["правительство", "government"],
5326        ["верный", "loyal"],
5327        ["короткий", "short"],
5328        ["предотвращать", "prevent"],
5329        ["галстук", "tie"],
5330        ["огромный", "huge"],
5331        ["обёртка, фантик", "sweet wrapper"]
5332    ],
5333];
5334
5335loop = 1;
5336while (loop = 1) {
5337    // Показываем нумерованный список категорий
5338    const categories = set_of_words.map((group, index) => `${index + 1}: ${group[0]}`).join("\n");
5339    default_cat = 2;
5340    // Запрашиваем у пользователя номер
5341    const userInput = prompt("Выберите категорию:\n\n" + categories, default_cat);
5342    selectedIndex = parseInt(userInput) - 1;
5343
5344    // Создаем 2D массив massiv_slov (variant)
5345    let massiv_slov = [];
5346    result = "";
5347
5348    if (selectedIndex < 0 || selectedIndex >= set_of_words.length) {
5349        selectedIndex = default_cat - 1;
5350        result = "Неверный номер категории, по умолчанию ";
5351    }
5352
5353    // Берем выбранный слой и копируем его (без названия категории)
5354    const selectedCategory = set_of_words[selectedIndex];
5355
5356    massiv_slov = selectedCategory.slice(1);
5356 // Убираем название категории
5357
5358    result = result + `выбрана категория: ${selectedCategory[0]}\n\nСлов в категории: ${massiv_slov.length}`;
5359
5360    result = result + "\n\n" + massiv_slov.map(arr => arr.join(' - ')).join("\n");
5361    alert(result);
5362
5363    variant = selectedIndex;
5364
5365    // Вариант направления перевода
5366    const prime_lang = prompt("Выберите направление перевода\n0 - с русского на английский\n1 - с английского на русский", "0");
5367    const lang = prime_lang == 0 ? 0 : 1;
5368
5369    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
5370    //alert(result + "\nTotal number of word pairs = " + massiv_slov.length);
5371
5372    async function delayedFunction() {
5373        await new Promise(resolve => setTimeout(resolve, 1000));
5374    }
5375
5376    //перемешивание слов
5377    prime_sum_slov = massiv_slov.length;
5378
5379    for (j = 0; j < prime_sum_slov; j++) {
5380        r = Math.floor(Math.random() * (prime_sum_slov - j)) + j;
5381        temp = massiv_slov[r];
5382        massiv_slov[r] = massiv_slov[j];
5383        massiv_slov[j] = temp;
5384    }
5385    //проверка перемешивания словundefined
5386    //result = massiv_slov.map(arr => arr.join('-')).join("\n");
5387    //alert (result+"\nОбщее количество пар слов = "+massiv_slov.length);	
5388
5389    // перебор массива слов
5390    sum_slov = 0;
5391    for (index = 0; index < massiv_slov.length; index++) {
5392        sum_slov = sum_slov + 1;
5393        // произношение
5394
5395        u.lang = lang == 0 ? 'ru-RU' : 'en-UK';
5396        u.text = massiv_slov[index][lang];
5397        delayedFunction();
5398        u.rate = 1;
5399        speechSynthesis.speak(u);
5400
5401        // ввод что было сказано 
5402        u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
5403        test = prompt(massiv_slov[index][lang]);
5404        if (test === null) {
5405            massiv_slov[massiv_slov.length] = massiv_slov[index];
5406            x = oshibki.get(massiv_slov[index]);
5407            if (x == null) { x = 0; }
5408            x++;
5409            oshibki.set(massiv_slov[index], x);
5410            break;
5411        }
5412        //	u.lang = 'en-UK';
5413        //	u.text = massiv_slov[index][1];
5414        //	speechSynthesis.speak(u);  
5415
5416        // проверка того что было сказано
5417        if (massiv_slov[index][(lang + 1) % 2] !== test) {
5418            u.lang = 'en-UK';
5419            u.text = 'Wrong!     The correct answer is        ';
5420            delayedFunction();
5421            speechSynthesis.speak(u);
5422
5423            u.lang = lang != 0 ? 'ru-RU' : 'en-UK';
5424            u.text = massiv_slov[index][(lang + 1) % 2];
5425            delayedFunction();
5426            speechSynthesis.speak(u);
5427            alert("Mistake! You wrote\n\"" + test + "\".       The correct answer is       \n\"" + massiv_slov[index][(lang + 1) % 2].toUpperCase() + "\""
5428            );
5429
5430            massiv_slov[massiv_slov.length] = massiv_slov[index];
5431            x = oshibki.get(massiv_slov[index]);
5432            if (x == null) { x = 0; }
5433            x++;
5434            //alert ("x="+x);
5435            oshibki.set(massiv_slov[index], x);
5436        }
5437        else {
5438            u.lang = 'en-UK';
5439            u.text = 'Great!     ';
5440            if (lang == 0) {
5441                u.text = u.text + test;
5442            }
5443            u.text = u.text + '    is the correct answer!';
5444            delayedFunction();
5445            speechSynthesis.speak(u);
5446
5447            alert("Great!\n         " + massiv_slov[index][0] + " " + massiv_slov[index][1]
5448            );
5449        }
5450    }
5451    //вывод ошибок
5452		let now = new Date();
5453    otchet0 = '';
5454    otchet = '';
5455    lang1 = lang != 0 ? 'RU->EN' : 'EN->RU'
5456    otchet = "По словарю \"" + selectedCategory[0] +
5457        "\"\nсостоящиму из " + prime_sum_slov +
5458        " слов, \nбыло задано " + sum_slov +
5459        " вопросов,\n в направлении " +
5460        lang1+"\n"
5461        + now.toString()
5462		+ "\n и были допущенные ошибки в словах, количество (раз):\n"
5463
5464
5465
5466    for (pair of oshibki.entries()) {
5467        // pair - это массив [key, values]
5468        //alert(pair[0]); // ключ
5469        //alert(pair[1]); // значение
5470        otchet = otchet + `${pair[0]}  -  ${pair[1]}\n`;
5471        otchet0 = otchet0 + `${pair[0]}\n`;
5472
5473        //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
5474    }
5475
5476    alert(otchet);
5477    otchet0 = `Список слов для работы над ошибками:\n` + otchet0;;
5478
5479    alert(otchet0);
5480    oshibki.clear()
5481    loop = prompt("Выбрать новый словарь?\n1 - Да\n0-нет, закончить", "1")
5482
5483}
5484}</script>
5484
5485<!-- end Simple Custom CSS and JS -->
5486<!-- start Simple Custom CSS and JS -->
5487<script type="text/javascript">
5488if (window.location.pathname == '/trenazher-po-drobyam/')
5489{
5490const operand=["","+","-","*","/"];
5491const min = 1;
5492const max = 9;
5493const oper0 = prompt("Выбирите оперрацию:\nСложение: 1\nВычитание: 2\nУмножение: 3\nДеление: 4\nСлучайно 1-3:  введите 13\nСлучайно 1-4:  введите 14");
5494const n = prompt("Число вопросов");
5495
5496let oper = oper0;
5497
5498let drob;
5499let viraj;
5500let ok = 0;
5501let not_ok = 0;
5502let num11;
5503let num12;
5504let num21;
5505let num22;
5506
5507let resalt = null;
5508let resalt1;  
5509let resalt2;  
5510let res="";
5511
5512u = new SpeechSynthesisUtterance();
5513  u.lang = 'ru-RU';
5514  u.rate = 1;
5515
5516function randomInteger(min, max) {  // получить случайное число от (min-0.5) до (max+0.5)
5517  let rand = min - 0.5 + Math.random() * (max - min + 1);
5518  return Math.round(rand);
5519}
5520  
5521function do_oper(op, x11, x12, x21,x22) {
5522  switch (op) {
5523    case '1':      result = (x11*x22 + x21*x12)/(x12*x22);      break;
5524    case '2':      result = (x11*x22 - x21*x12)/(x12*x22);      break;
5525    case '3':      result = (x11*x21) / (x12*x22);      break;        
5526    case '4':      result = (x11*x22) / (x12*x21);  }
5527  result=result.toFixed(5);
5528  return result;
5529}
5530 
5531for (j=0;  j < n ; j++ ){
5532        if (oper0 == 13 || oper0 == 14){
5533            oper =String(randomInteger(1, oper0-10)); 
5534        }
5535        num11 =randomInteger(min, max);
5536        num12 =randomInteger(min, max);
5537        num21 =randomInteger(min, max);
5538        num22 =randomInteger(min, max);
5539
5540        viraj = "\n " +num11+"      "+num12+
5541                "\n— "+operand[oper]+" — = ?\n "
5542                      +num12+"      "+num22+"\n ";       
5543        resalt =  prompt (	res +
5544                  "\nКоличество ошибок: " + not_ok +
5545                  "\nКоличество правильных ответов: " + ok +
5546                  "\nСколько будет " + viraj);
5547        drob = resalt.split("/");
5548        resalt1 = drob[0]/drob[1];
5549        resalt1=resalt1.toFixed(5);
5550  		resalt2=do_oper (oper,num11,num12, num12,num22);                         
5551        if (resalt1 == resalt2 )  
5552            {res  = viraj.replace("?", resalt+" Правильно!"+" ( " + resalt1+"   "+resalt2+" )" );
5553            ok = ok +1;
5554            u.text = "Правильно!";}             
5555        else
5556            {res  = viraj.replace("?", resalt+" НЕправильно!");
5557            ok = ok +1;
5558            u.text = "Неправильно!";}  
5559        speechSynthesis.speak(u);
5560
5561        if (resalt == "" || resalt == null ){break;} 
5562}
5563alert(res +
5564      "\nКоличество ошибок: " + not_ok +
5565      "\nКоличество правильных ответов: " + ok );
5566alert ("Всего\nКоличество ошибок: " + not_ok +
5567       "\nКоличество правильных ответов: " + ok );
5568}</script>
5568
5569<!-- end Simple Custom CSS and JS -->
5570<!-- start Simple Custom CSS and JS -->
5571<script type="text/javascript">
5572if (window.location.pathname == '/trenazher-po-arifmetike-2/')
5573{
5574let oper0 = prompt("Выбирите оперрацию:\nСложение: 1\nВычитание: 2\nУмножение: 3\nДеление: 4\nСлучайно 1-3:  введите 13\nСлучайно 1-4:  введите 14");
5575let oper = oper0;
5576let oper2;
5577let min = prompt("Введите минимальное число");
5578let max = prompt("Минимальное число = "+min+"\nВведите максимальное число");
5579let n = prompt("Число вопросов");
5580
5581let ok = 0;
5582let not_ok = 0;
5583
5584function randomInteger(min, max) {
5585  // получить случайное число от (min-0.5) до (max+0.5)
5586  let rand = min - 0.5 + Math.random() * (max - min + 1);
5587  return Math.round(rand);
5588}
5589let num1;
5590let num2;
5591
5592let resalt = null;
5593let res="";
5594let otv=1;
5595
5596u = new SpeechSynthesisUtterance();
5597  u.lang = 'ru-RU';
5598  u.rate = 1;
5599
5600for (j=0;  j < n ; j++ ){
5601  if (oper0 == 13 || oper0 == 14){
5602    oper =String(randomInteger(1, oper0-10)); 
5603  }
5604  if (otv == 1 ){
5605    num1 =randomInteger(min, max);
5606    num2 =randomInteger(min, max);
5607  }
5608  switch (oper) {
5609        case '1':
5610          resalt =  prompt (	res +
5611                              "\nКоличество ошибок: " + not_ok +
5612                              "\nКоличество правильных ответов: " + ok +
5613                               "\nСколько будет " + num1 + " + " + num2 + " ?");
5614                            if (resalt == num1 + num2 )  {res = "Правильно!"; ok = ok +1;} 
5615                            else {res = "НЕправильно!"; not_ok = not_ok +1;}
5616          break;
5617        case '2':
5618          resalt =  prompt (	res +
5619                              "\nКоличество ошибок: " + not_ok +
5620                              "\nКоличество правильных ответов: " + ok + 
5621                              "\nСколько будет " + num1 + " - " + num2 + " ?");
5622                            if (resalt == num1 - num2 )  {res = "Правильно!"; ok = ok +1;} 
5623                            else {res = "НЕправильно!"; not_ok = not_ok +1;} 
5624        break;
5625        case '3':
5626          resalt =  prompt (	res +
5627                              "\nКоличество ошибок: " + not_ok +
5628                              "\nКоличество правильных ответов: " + ok + 
5629                              "\nСколько будет " + num1 + " * " + num2 + " ?");
5630                            if (resalt == num1 * num2 )  {res = "Правильно!"; ok = ok +1; otv=1;} 
5631                            else {res = "НЕправильно! ПРАВИЛЬНО: "+num1+"*"+num2+"="+num1 * num2; not_ok = not_ok +1;otv=0;}  
5632        break;
5633    case '4':
5634          if (num2 !== 0) {resalt =  prompt (res +
5635                              "\nКоличество ошибок: " + not_ok +
5636                              "\nКоличество правильных ответов: " + ok + 
5637                              "\nСколько будет " + num1 * num2 + " / " + num2 + " ?");
5638                            if (resalt == num1 )  {res = "Правильно!"; ok = ok +1;} 
5639                            else {res = "НЕправильно!"; not_ok = not_ok +1;}
5640                          }
5641        break;
5642      }
5643    u.text = res;
5644  speechSynthesis.speak(u);
5645  if (resalt == "" || resalt == null ){break;} 
5646} 
5647alert ("\nКоличество ошибок: " + not_ok +
5648       "\nКоличество правильных ответов: " + ok );
5649}</script>
5649
5650<!-- end Simple Custom CSS and JS -->
5651<!-- start Simple Custom CSS and JS -->
5652<script type="text/javascript">
5653if (window.location.pathname == '/slovarnyj-diktant-po-russkomu-yazyku/')
5654{
5655oshibki = new Map();
5656u = new SpeechSynthesisUtterance();
5657  u.lang = 'ru-RU';
5658  u.rate = 1;
5659//ввод списка лов.
5660variant = prompt("Использоввать словарь по умолчанию?\n0 - нет\n1 - двойные согласные\n2 - акварель-истина\n3 - отечество-свобода");
5661  
5662
5663if(variant == 1){
5664    massiv_slov = [
5665  "грипп",
5666  "группа",
5667  "аппарат",
5668  "аппликация",
5669  "аппетит",
5670  "хоккей",
5671  "аккуратный",
5672  "аккорд",
5673  "дрожжи",
5674  "вожжи",
5675  "жужжит",
5676  "жженный",
5677  "юннаты",
5678  "теннис",
5679  "тонна",
5680  "ванна",
5681  "Геннадий",
5682  "медленно",
5683  "антенна",
5684  "терраса",
5685  "территория",
5686  "корреспондент",
5687  "террор",
5688  "перрон",
5689  "аллея",
5690  "коллектив",
5691  "миллион",
5692  "коллекция",
5693  "интеллигент",
5694  "троллейбус",
5695  "металл",
5696  "иллюминация",
5697  "иллюстрация",
5698  "каллиграфия",
5699  "грамматика",
5700  "телеграмма",
5701  "сумма",
5702  "килограмм",
5703  "программа",
5704  "грамм",
5705  "Эмма",
5706  "Римма",
5707  "масса",
5708  "касса",
5709  "шоссе",
5710  "класс",
5711  "комиссия",
5712  "пассажир",
5713  "ссора",
5714  "бассейн",
5715  "кросс",
5716  "искусство",
5717  "рассказ",
5718  "русский",
5719  "классик",
5720  "дрессировщик",
5721  "Россия",
5722  "Одесса",
5723  "компресс",
5724  "профессор",
5725  "ассистент",
5726  "режиссер",
5727  "прогресс",
5728  "можжевельник",
5729  "профессия"
5730];
5731}
5732
5733if(variant == 2){
5734    massiv_slov = [
5735	"акварель",
5736"аккуратно",
5737"альбом",
5738"аппетит",
5739"аппликация",
5740"аромат",
5741"бассейн",
5742"биография",
5743"богатство",
5744"бутерброд",
5745"викторина",
5746"волшебник",
5747"восемь",
5748"горизонт",
5749"готов",
5750"двенадцать",
5751"диалог",
5752"директор",
5753"ещё",
5754"желать",
5755"железо",
5756"забавный",
5757"изложение",
5758"изображение",
5759"иногда",
5760"искусство",
5761"истина"
5762];  
5763}
5764if(variant == 3){
5765    massiv_slov = [
5766"отечество",
5767"охотник",
5768"пассажир",
5769"перрон",
5770"печаль",
5771"портрет",
5772"похожий",
5773"правительство",
5774"председатель",
5775"представление",
5776"приглашение",
5777"приятно",
5778"происшествие",
5779"путешествие",
5780"район",
5781"революция",
5782"решать",
5783"сверкать",
5784"сверху",
5785"свитер",
5786"свобода"
5787];  
5788}   
5789if(variant == 0){
5790    slova=prompt('Введите слова. Разделитель пробел или новая строка');
5791    slova = slova.replace(/ +/g, ' ').trim();
5792    massiv_slov = slova.split(/\s/); 
5793}
5794alert (massiv_slov+"\nОбщее количество слов = "+massiv_slov.length);
5795//перемешивание слов
5796for (j = 0; j < massiv_slov.length; j++) {
5797  r = Math.floor(Math.random() * (massiv_slov.length - j)) + j;
5798  temp = massiv_slov[r];
5799  massiv_slov[r] = massiv_slov[j];
5800  massiv_slov[j] = temp;
5801}
5802// перебор массива слов
5803for (index = 0; index < massiv_slov.length ; index++) {
5804 // произношение
5805  u.text = massiv_slov[index];
5806  speechSynthesis.speak(u);  
5807 // ввод что было сказано 
5808  test = prompt();
5809  if (test == null){break;}
5810// проверка того что было сказано
5811  if (massiv_slov[index] !== test)
5812      {
5813      alert ("Ошибка! Правльно:\n         "+massiv_slov[index]);
5814      massiv_slov[massiv_slov.length] =massiv_slov[index];
5815      x = oshibki.get(massiv_slov[index]);
5816      if (x == null){x=0;}
5817      x++;
5818      //alert ("x="+x);
5819      oshibki.set(massiv_slov[index],x);               
5820  }
5821}
5822//вывод ошибок
5823otchet = `Допущенные ошибки в словах, количество (раз):\n`
5824for (pair of oshibki.entries()) {
5825  // pair - это массив [key, values]
5826  //alert(pair[0]); // ключ
5827  //alert(pair[1]); // значение
5828  otchet = otchet+`${pair[0]} , ${pair[1]}\n`;
5829  //alert(`Со словом ${pair[0]} было ${pair[1]} ошибочных попыток`);
5830}
5831alert (otchet);
5832otchet = `Список слов для работы над ошибками:\n`;
5833for (key of oshibki.keys()) {otchet = otchet + key +"\n";}
5834 alert (otchet);
5835}</script>
5835
5836<!-- end Simple Custom CSS and JS -->
5837<!-- start Simple Custom CSS and JS -->
5838<!-- Rating Mail.ru counter -->
5839<script type="text/javascript">
5840var _tmr = window._tmr || (window._tmr = []);
5841_tmr.push({id: "3161175", type: "pageView", start: (new Date()).getTime()});
5842(function (d, w, id) {
5843  if (d.getElementById(id)) return;
5844  var ts = d.createElement("script"); ts.type = "text/javascript"; ts.async = true; ts.id = id;
5845  ts.src = "https://top-fwz1.mail.ru/js/code.js";
5846  var f = function () {var s = d.getElementsByTagName("script")[0]; s.parentNode.insertBefore(ts, s);};
5847  if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); }
5848})(document, window, "topmailru-code");
5849</script>
5849<noscript><div>
5850<img src="https://top-fwz1.mail.ru/counter?id=3161175;js=na" style="border:0;position:absolute;left:-9999px;" alt="Top.Mail.Ru" />
5851</div></noscript>
5852<!-- //Rating Mail.ru counter -->
5853
5854
5855<!-- end Simple Custom CSS and JS -->
5856<!-- start Simple Custom CSS and JS -->
5857<!-- Yandex.Metrika counter -->
5858<script type="text/javascript" >
vendor: 305 bytes, lines 5858-5863
5858
5859   (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
5860   m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
5861   (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
5862
5863   ym(
586357431779
vendor: 129 bytes, lines 5863-5868
5863, "init", {
5864        clickmap:true,
5865        trackLinks:true,
5866        accurateTrackBounce:true,
5867        webvisor:true
5868   });
5869</script>
5869
5870<noscript><div><img src="https://mc.yandex.ru/watch/57431779" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
5871<!-- /Yandex.Metrika counter --><!-- end Simple Custom CSS and JS -->
5872<!-- start Simple Custom CSS and JS -->
5873<!--LiveInternet counter-->
5873<script type="text/javascript">
5874document.write('<a href="//www.liveinternet.ru/click" '+
5875'target="_blank"><img src="//counter.yadro.ru/hit?t44.6;r'+
5876escape(document.referrer)+((typeof(screen)=='undefined')?'':
5877';s'+screen.width+'*'+screen.height+'*'+(screen.colorDepth?
5878screen.colorDepth:screen.pixelDepth))+';u'+escape(document.URL)+
5879';h'+escape(document.title.substring(0,150))+';'+Math.random()+
5880'" alt="" title="LiveInternet" '+
5881'border="0" width="31" height="31"><\/a>')
5882</script>
5882<!--/LiveInternet-->
5883
5884<!-- end Simple Custom CSS and JS -->
5885</body>
5886</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.