It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: http://rufus-download.ru

  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"><title>Rufus скачать, как создать загрузочную флешку windows 10 и 7, как пользоваться программой Руфус</title>
  6. <meta name="description" content="Rufus - небольшое приложения для создания загрузочных USB накопителей. Загрузочные диски создаются на основе ISO-образов. Скачать Rufus для Windows Мы" />
  7. <link rel="canonical" href="/" />
  8. <meta property="og:locale" content="ru_RU" />
  9. <meta property="og:type" content="website" />
  10. <meta property="og:title" content="Rufus скачать, как создать загрузочную флешку windows 10 и 7, как пользоваться программой Руфус" />
  11. <meta property="og:description" content="Rufus - небольшое приложения для создания загрузочных USB накопителей. Загрузочные диски создаются на основе ISO-образов. Скачать Rufus для Windows Мы" />
  12. <meta property="og:url" content="https://rufus-download.ru/" />
  13. <meta property="og:site_name" content="Rufus" />
  14. <meta property="article:modified_time" content="2022-05-12T03:56:22+00:00" />
  15. <meta property="og:image" content="https://rufus-download.ru/wp-content/uploads/2020/07/s1200.jpg" />
  16. <meta name="twitter:card" content="summary_large_image" />
  17. <meta name="twitter:label1" content="Примерное время для чтения" />
  18. <meta name="twitter:data1" content="7 минут" />
  19. <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://rufus-download.ru/#website","url":"https://rufus-download.ru/","name":"Rufus","description":"программа для создания загрузочных USB-дисков","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://rufus-download.ru/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"ru-RU"},{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https://rufus-download.ru/#primaryimage","url":"https://rufus-download.ru/wp-content/uploads/2020/07/s1200.jpg","contentUrl":"https://rufus-download.ru/wp-content/uploads/2020/07/s1200.jpg","width":365,"height":518,"caption":"руфус"},{"@type":"WebPage","@id":"https://rufus-download.ru/#webpage","url":"https://rufus-download.ru/","name":"Rufus скачать, как создать загрузочную флешку windows 10 и 7, как пользоваться программой Руфус","isPartOf":{"@id":"https://rufus-download.ru/#website"},"primaryImageOfPage":{"@id":"https://rufus-download.ru/#primaryimage"},"datePublished":"2020-07-23T13:02:57+00:00","dateModified":"2022-05-12T03:56:22+00:00","description":"Rufus - небольшое приложения для создания загрузочных USB накопителей. Загрузочные диски создаются на основе ISO-образов. Скачать Rufus для Windows Мы","breadcrumb":{"@id":"https://rufus-download.ru/#breadcrumb"},"inLanguage":"ru-RU","potentialAction":[{"@type":"ReadAction","target":["https://rufus-download.ru/"]}]},{"@type":"BreadcrumbList","@id":"https://rufus-download.ru/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Главная страница"}]}]}</script>
  20. <!-- / Yoast SEO plugin. -->
  21.  
  22.  
  23. <link rel='dns-prefetch' href='//fonts.googleapis.com' />
  24. <link rel='dns-prefetch' href='//s.w.org' />
  25. <script type="text/javascript">
  26. window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.1.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.1.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/rufus-download.ru\/wp-includes\/js\/wp-emoji-release.min.js?ver=5.9.7"}};
  27. /*! This file is auto-generated */
  28. !function(e,a,t){var n,r,o,i=a.createElement("canvas"),p=i.getContext&&i.getContext("2d");function s(e,t){var a=String.fromCharCode;p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,e),0,0);e=i.toDataURL();return p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,t),0,0),e===i.toDataURL()}function c(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(o=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},r=0;r<o.length;r++)t.supports[o[r]]=function(e){if(!p||!p.fillText)return!1;switch(p.textBaseline="top",p.font="600 32px Arial",e){case"flag":return s([127987,65039,8205,9895,65039],[127987,65039,8203,9895,65039])?!1:!s([55356,56826,55356,56819],[55356,56826,8203,55356,56819])&&!s([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]);case"emoji":return!s([10084,65039,8205,55357,56613],[10084,65039,8203,55357,56613])}return!1}(o[r]),t.supports.everything=t.supports.everything&&t.supports[o[r]],"flag"!==o[r]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[o[r]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(n=t.source||{}).concatemoji?c(n.concatemoji):n.wpemoji&&n.twemoji&&(c(n.twemoji),c(n.wpemoji)))}(window,document,window._wpemojiSettings);
  29. </script>
  30. <style type="text/css">
  31. img.wp-smiley,
  32. img.emoji {
  33. display: inline !important;
  34. border: none !important;
  35. box-shadow: none !important;
  36. height: 1em !important;
  37. width: 1em !important;
  38. margin: 0 0.07em !important;
  39. vertical-align: -0.1em !important;
  40. background: none !important;
  41. padding: 0 !important;
  42. }
  43. </style>
  44. <link rel='stylesheet' id='stylecss-css'  href='/wp-content/themes/root/style.css?ver=5.9.7' type='text/css' media='all' />
  45. <link rel='stylesheet' id='wp-block-library-css'  href='/wp-includes/css/dist/block-library/style.min.css?ver=5.9.7' type='text/css' media='all' />
  46. <style id='global-styles-inline-css' type='text/css'>
  47. body{--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%);--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--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--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;}.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;}.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;}
  48. </style>
  49. <link rel='stylesheet' id='contact-form-7-css'  href='/wp-content/plugins/contact-form-7/includes/css/styles.css?ver=5.5.6' type='text/css' media='all' />
  50. <link rel='stylesheet' id='google-fonts-css'  href='https://fonts.googleapis.com/css?family=Roboto%3A400%2C400i%2C700&#038;subset=cyrillic&#038;ver=5.9.7' type='text/css' media='all' />
  51. <link rel='stylesheet' id='root-style-css'  href='/wp-content/themes/root/css/style.min.css?ver=2.1.2' type='text/css' media='all' />
  52. <link rel='stylesheet' id='jquery-lazyloadxt-spinner-css-css'  href='/wp-content/plugins/a3-lazy-load/assets/css/jquery.lazyloadxt.spinner.css?ver=5.9.7' type='text/css' media='all' />
  53. <script type='text/javascript' src='/wp-includes/js/jquery/jquery.min.js?ver=3.6.0' id='jquery-core-js'></script>
  54. <script type='text/javascript' src='/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2' id='jquery-migrate-js'></script>
  55. <link rel="https://api.w.org/" href="/wp-json/" /><link rel="alternate" type="application/json" href="/wp-json/wp/v2/pages/8" /><link rel="alternate" type="application/json+oembed" href="/wp-json/oembed/1.0/embed?url=https%3A%2F%2Frufus-download.ru%2F" />
  56. <link rel="alternate" type="text/xml+oembed" href="/wp-json/oembed/1.0/embed?url=https%3A%2F%2Frufus-download.ru%2F&#038;format=xml" />
  57. <style>@media (min-width: 768px) {.site-header { background-repeat: no-repeat; }}@media (min-width: 768px) {.site-header { background-position: center center; }}.page-separator, .pagination .current, .pagination a.page-numbers:hover, .entry-content ul li:before, .btn, .comment-respond .form-submit input, .mob-hamburger span, .page-links__item { background-color: #3f4555;}.spoiler-box, .entry-content ol li:before, .mob-hamburger, .inp:focus, .search-form__text:focus, .entry-content blockquote { border-color: #3f4555;}.entry-content blockquote:before, .spoiler-box__title:after { color: #3f4555;}a, .spanlink, .comment-reply-link, .pseudo-link, .root-pseudo-link { color: #0e0e9e;}a:hover, a:focus, a:active, .spanlink:hover, .comment-reply-link:hover, .pseudo-link:hover { color: #e66212;}body { color: #333333;}.site-title, .site-title a { color: #3f4555;}.main-navigation, .footer-navigation, .main-navigation ul li .sub-menu, .footer-navigation ul li .sub-menu { background-color: #3f4555;}.main-navigation ul li a, .main-navigation ul li .removed-link, .footer-navigation ul li a, .footer-navigation ul li .removed-link { color: #ffffff;}body { font-family: "Roboto", Arial, "Helvetica Neue", Helvetica, Arial, sans-serif; }.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6, .entry-image__title h1, .entry-title { font-family: "Roboto", Arial, "Helvetica Neue", Helvetica, Arial, sans-serif; }@media (min-width: 576px) { body { font-size: 16px;} }@media (min-width: 576px) { body { line-height: 1.5;} }.scrolltop { background-color: #cccccc;}.scrolltop:after { color: #ffffff;}.scrolltop { width: 50px;}.scrolltop { height: 50px;}.scrolltop:after { content: "\f102"; }@media (max-width: 767px) { .scrolltop { display: none !important;} }</style><style type="text/css" id="custom-background-css">
  58. body.custom-background { background-color: #878787; }
  59. </style>
  60. <link rel="icon" href="/wp-content/uploads/2020/07/cropped-rufus-logo-32x32.png" sizes="32x32" />
  61. <link rel="icon" href="/wp-content/uploads/2020/07/cropped-rufus-logo-192x192.png" sizes="192x192" />
  62. <link rel="apple-touch-icon" href="/wp-content/uploads/2020/07/cropped-rufus-logo-180x180.png" />
  63. <meta name="msapplication-TileImage" content="https://rufus-download.ru/wp-content/uploads/2020/07/cropped-rufus-logo-270x270.png" />
  64.  
  65.  
  66. <style>
  67.    .coveredAd {
  68.        position: relative;
  69.        left: -5000px;
  70.        max-height: 1px;
  71.        overflow: hidden;
  72.    }
  73.    #content_pointer_id {
  74.        display: block !important;
  75.        width: 100% !important;
  76.    }
  77.    .rfwp_removedMarginTop {
  78.        margin-top: 0 !important;
  79.    }
  80.    .rfwp_removedMarginBottom {
  81.        margin-bottom: 0 !important;
  82.    }
  83. </style>
  84.            <script>
  85.            var cou1 = 0;
  86.            if (typeof blockSettingArray==="undefined") {
  87.                var blockSettingArray = [];
  88.            } else {
  89.                if (Array.isArray(blockSettingArray)) {
  90.                    cou1 = blockSettingArray.length;
  91.                } else {
  92.                    var blockSettingArray = [];
  93.                }
  94.            }
  95.            if (typeof excIdClass==="undefined") {
  96.                var excIdClass = [".percentPointerClass",".content_rb",".cnt32_rl_bg_str",".rl_cnt_bg",".addedInserting","#toc_container","table","blockquote"];
  97.            }
  98.            if (typeof blockDuplicate==="undefined") {
  99.                var blockDuplicate = "no";
  100.            }                        
  101.            if (typeof obligatoryMargin==="undefined") {
  102.                var obligatoryMargin = 0;
  103.            }
  104.            
  105.            if (typeof tagsListForTextLength==="undefined") {
  106.                var tagsListForTextLength = ["P","H1","H2","H3","H4","H5","H6","DIV","BLOCKQUOTE","INDEX","ARTICLE","SECTION"];
  107.            }                        
  108.            blockSettingArray[cou1] = [];
  109. blockSettingArray[cou1]["minSymbols"] = 0;
  110. blockSettingArray[cou1]["maxSymbols"] = 0;
  111. blockSettingArray[cou1]["minHeaders"] = 0;
  112. blockSettingArray[cou1]["maxHeaders"] = 0;
  113. blockSettingArray[cou1]["id"] = '1';
  114. blockSettingArray[cou1]["sc"] = '0';
  115. blockSettingArray[cou1]["text"] = '<div class=\"rl_cnt_bg\" data-id=\"307656\"></div>';
  116. blockSettingArray[cou1]["setting_type"] = 1;
  117. blockSettingArray[cou1]["elementCss"] = "default";
  118. blockSettingArray[cou1]["element"] = "p";
  119. blockSettingArray[cou1]["elementPosition"] = 1;
  120. blockSettingArray[cou1]["elementPlace"] = 1;
  121. cou1++;
  122. blockSettingArray[cou1] = [];
  123. blockSettingArray[cou1]["minSymbols"] = 0;
  124. blockSettingArray[cou1]["maxSymbols"] = 0;
  125. blockSettingArray[cou1]["minHeaders"] = 0;
  126. blockSettingArray[cou1]["maxHeaders"] = 0;
  127. blockSettingArray[cou1]["id"] = '2';
  128. blockSettingArray[cou1]["sc"] = '0';
  129. blockSettingArray[cou1]["text"] = '<div class=\"rl_cnt_bg\" data-id=\"307657\"></div>';
  130. blockSettingArray[cou1]["setting_type"] = 1;
  131. blockSettingArray[cou1]["elementCss"] = "default";
  132. blockSettingArray[cou1]["element"] = "p";
  133. blockSettingArray[cou1]["elementPosition"] = 1;
  134. blockSettingArray[cou1]["elementPlace"] = 5;
  135. cou1++;
  136. blockSettingArray[cou1] = [];
  137. blockSettingArray[cou1]["minSymbols"] = 0;
  138. blockSettingArray[cou1]["maxSymbols"] = 0;
  139. blockSettingArray[cou1]["minHeaders"] = 0;
  140. blockSettingArray[cou1]["maxHeaders"] = 0;
  141. blockSettingArray[cou1]["id"] = '3';
  142. blockSettingArray[cou1]["sc"] = '0';
  143. blockSettingArray[cou1]["text"] = '<div class=\"rl_cnt_bg\" data-id=\"307658\"></div>';
  144. blockSettingArray[cou1]["setting_type"] = 1;
  145. blockSettingArray[cou1]["elementCss"] = "default";
  146. blockSettingArray[cou1]["element"] = "p";
  147. blockSettingArray[cou1]["elementPosition"] = 1;
  148. blockSettingArray[cou1]["elementPlace"] = 10;
  149. cou1++;
  150. console.log("bsa-l: "+blockSettingArray.length);
  151. </script><script>
  152.    if (typeof window.jsInputerLaunch === 'undefined') {
  153.        window.jsInputerLaunch = -1;
  154.    }
  155.    if (typeof contentSearchCount === 'undefined') {
  156.        var contentSearchCount = 0;
  157.    }
  158.    if (typeof launchAsyncFunctionLauncher === "undefined") {
  159.        function launchAsyncFunctionLauncher() {
  160.            if (typeof asyncFunctionLauncher !== "undefined" && typeof asyncFunctionLauncher === "function") {
  161.                asyncFunctionLauncher();
  162.            } else {
  163.                setTimeout(function () {
  164.                    launchAsyncFunctionLauncher();
  165.                }, 100)
  166.            }
  167.        }
  168.    }
  169.    if (typeof launchGatherContentBlock === "undefined") {
  170.        function launchGatherContentBlock() {
  171.            if (typeof gatherContentBlock !== "undefined" && typeof gatherContentBlock === "function") {
  172.                gatherContentBlock();
  173.            } else {
  174.                setTimeout(function () {
  175.                    launchGatherContentBlock();
  176.                }, 100)
  177.            }
  178.        }
  179.    }
  180.    function contentMonitoring() {
  181.        if (typeof window.jsInputerLaunch==='undefined'||(typeof window.jsInputerLaunch!=='undefined'&&window.jsInputerLaunch==-1)) {
  182.            let possibleClasses = ['.taxonomy-description','.entry-content','.post-wrap','#blog-entries','.content','.archive-posts__item-text','.single-company_wrapper','.posts-container','.content-area','.post-listing','.td-category-description','.jeg_posts_wrap'];
  183.            let deniedClasses = ['.percentPointerClass','.addedInserting','#toc_container'];
  184.            let deniedString = "";
  185.            let contentSelector = '';
  186.            let contentCheck = null;
  187.            if (contentSelector) {
  188.                contentCheck = document.querySelector(contentSelector);
  189.            }
  190.  
  191.            if (block_classes && block_classes.length > 0) {
  192.                for (var i = 0; i < block_classes.length; i++) {
  193.                    if (block_classes[i]) {
  194.                        deniedClasses.push('.' + block_classes[i]);
  195.                    }
  196.                }
  197.            }
  198.  
  199.            if (deniedClasses&&deniedClasses.length > 0) {
  200.                for (let i = 0; i < deniedClasses.length; i++) {
  201.                    deniedString += ":not("+deniedClasses[i]+")";
  202.                }
  203.            }
  204.            
  205.            if (!contentCheck) {
  206.                for (let i = 0; i < possibleClasses.length; i++) {
  207.                    contentCheck = document.querySelector(possibleClasses[i]+deniedString);
  208.                    if (contentCheck) {
  209.                        break;
  210.                    }
  211.                }
  212.            }
  213.            let contentPointerCheck = document.querySelector('#content_pointer_id');
  214.            if (contentCheck&&!contentPointerCheck) {                
  215.                console.log('content is here');
  216.                let cpSpan = document.createElement('SPAN');
  217.                cpSpan.setAttribute('id', 'content_pointer_id');
  218.                cpSpan.classList.add('no-content');
  219.                cpSpan.setAttribute('data-content-length', '0');
  220.                cpSpan.setAttribute('data-accepted-blocks', '1,2,3');
  221.                cpSpan.setAttribute('data-rejected-blocks', '0');
  222.                window.jsInputerLaunch = 10;
  223.                
  224.                contentCheck.prepend(cpSpan);
  225.                
  226.                launchAsyncFunctionLauncher();
  227.                launchGatherContentBlock();
  228.            } else {
  229.                console.log('contentMonitoring try');
  230.                contentSearchCount++;
  231.                if (contentSearchCount < 20) {
  232.                    setTimeout(function () {
  233.                        contentMonitoring();
  234.                    }, 200);
  235.                } else {
  236.                    contentCheck = document.querySelector("body"+deniedString+" div"+deniedString);
  237.                    if (contentCheck) {
  238.                        console.log('content is here hard');
  239.                        let cpSpan = document.createElement('SPAN');
  240.                        cpSpan.setAttribute('id', 'content_pointer_id');
  241.                        cpSpan.classList.add('no-content');
  242.                        cpSpan.classList.add('hard-content');
  243.                        cpSpan.setAttribute('data-content-length', '0');
  244.                        cpSpan.setAttribute('data-accepted-blocks', '1,2,3');
  245.                        cpSpan.setAttribute('data-rejected-blocks', '0');
  246.                        window.jsInputerLaunch = 10;
  247.                        
  248.                        contentCheck.prepend(cpSpan);
  249.                        launchAsyncFunctionLauncher();
  250.                    }  
  251.                }
  252.            }
  253.        } else {
  254.            console.log('jsInputerLaunch is here');
  255.            launchGatherContentBlock();
  256.        }
  257.    }
  258.    contentMonitoring();
  259. </script><meta name="google-site-verification" content="IrOmk4mPs-GPtHVamtC2dwn9Rsvi2vkgMh_3tVmZA4Q" /> <link rel='stylesheet' id='dashicons-cssm' href='https://gs-auto-clicker.ru/wp-includes/css/dashicons.min.css' type='text/css' media='all'/>
  260. <!-- Yandex.RTB -->
  261. <script>window.yaContextCb=window.yaContextCb||[]</script>
  262. <script src="https://yandex.ru/ads/system/context.js" async></script>
  263. </head>
  264.  
  265. <body data-rsssl=1 class="home page-template-default page page-id-8 custom-background ">
  266. <div id="page" class="site">
  267. <a class="skip-link screen-reader-text" href="#main">Перейти к контенту</a>
  268.  
  269.    
  270. <header id="masthead" class="site-header container" itemscope itemtype="http://schema.org/WPHeader">
  271.        <div class="site-header-inner ">
  272. <div class="site-branding">
  273. <div class="site-logotype"><a href="/"><img src="/wp-content/uploads/2020/07/rufus-logo.png" alt="Rufus"></a></div>
  274. <div class="site-branding-container">
  275.  
  276.                <div class="site-title">Rufus</div>
  277. <p class="site-description">программа для создания загрузочных USB-дисков</p>
  278. </div>
  279. </div><!-- .site-branding -->
  280.  
  281. <div class="top-menu">
  282. <div class="menu-verhnee-menyu-container"><ul id="top_menu" class="menu"><li id="menu-item-60" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-60"><a href="/o-sajte/">О сайте</a></li>
  283. <li id="menu-item-59" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-59"><a href="/obratnaya-svyaz/">Обратная связь</a></li>
  284. </ul></div> </div>
  285.  
  286.        <div class="mob-hamburger"><span></span></div>
  287.        </div><!--.site-header-inner-->
  288. </header><!-- #masthead -->
  289.  
  290.    
  291.    
  292.        
  293.        <nav id="site-navigation" class="main-navigation container">
  294.            <div class="main-navigation-inner ">
  295.                <div class="menu-glavnoe-menyu-container"><ul id="header_menu" class="menu"><li id="menu-item-66" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-66"><span class="removed-link">Главная</span></li>
  296. <li id="menu-item-84" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-84"><a href="/stati/kak-iz-iso-obraza-sdelat-zagruzochnuyu-fleshku/">Как из ISO сделать загрузочную флешку</a></li>
  297. <li id="menu-item-85" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-85"><a href="/stati/sozdanie-ustanovochnoj-fleshki-mac-os/">Создание установочной флешки Mac OS</a></li>
  298. <li id="menu-item-86" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-86"><a href="/stati/sozdanie-zagruzochnoj-fleshki-na-windows-10/">На Windows 10</a></li>
  299. <li id="menu-item-87" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-87"><a href="/stati/kak-sdelat-zagruzochnuyu-fleshku-windows-7/">На Windows 7</a></li>
  300. </ul></div>            </div><!--.main-navigation-inner-->
  301.        </nav><!-- #site-navigation -->
  302.  
  303.        
  304.    
  305.    
  306. <div id="content" class="site-content container">
  307.  
  308.        
  309. <div id="primary" class="content-area">
  310. <main id="main" class="site-main" itemscope itemtype="http://schema.org/Article">
  311.  
  312. <article id="post-8" class="post-8 page type-page status-publish hentry">
  313. <header class="entry-header">
  314. <h1 class="entry-title" itemprop="headline">Скачать Руфус для windows 10 и 7 и создать загрузочную флешку</h1> </header><!-- .entry-header -->
  315.  
  316. <div class="page-separator"></div>
  317.  
  318. <div class="entry-content" itemprop="articleBody">
  319.  
  320. <!-- rsya_poster_begin -->
  321. <!-- Yandex.RTB R-A-2710345-3 -->
  322. <div id="yandex_rtb_R-A-2710345-3"></div>
  323. <script>window.yaContextCb.push(()=>{
  324. Ya.Context.AdvManager.render({
  325. "blockId": "R-A-2710345-3",
  326. "renderTo": "yandex_rtb_R-A-2710345-3"
  327. })
  328. })
  329. </script>
  330. <!-- rsya_poster_end -->
  331.  
  332.  
  333. <span id="content_pointer_id" data-content-length="8381" data-accepted-blocks="3"></span><p>Rufus &#8211; небольшое приложения для создания загрузочных USB накопителей. Загрузочные диски создаются на основе ISO-образов.</p>
  334. <p style="text-align: center;"><a class="btn" href="rufus_new.zip"><i class="dashicons-download"></i>Скачать Rufus для Windows</a></p>
  335. <p>Мы живем в эпоху, когда такие вещи, как «привод DVD» или «плеер Blu-ray» в отношении наших ноутбуков и ПК уже превратились в неких «динозавров» и практически исчезли из употребления. В подавляющем большинстве случаев мы пользуемся USB-флеш накопителями, которые превратились в DVD-диски многоразового использования. И если, к примеру, вы захотите всегда иметь под рукой свежую копию Windows 10, чтобы можно было переустановить систему на своем компьютере &#8211; что вы сделаете? Наверняка вы сохраните эту копию на флешке.</p>
  336. <p><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" class="lazy lazy-hidden aligncenter size-full wp-image-21" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2020/07/s1200.jpg" alt="руфус" width="365" height="518" srcset="" data-srcset="/wp-content/uploads/2020/07/s1200.jpg 365w, /wp-content/uploads/2020/07/s1200-211x300.jpg 211w" sizes="(max-width: 365px) 100vw, 365px" //><meta itemprop="width" content="365"><meta itemprop="height" content="518"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" class="aligncenter size-full wp-image-21" src="/wp-content/uploads/2020/07/s1200.jpg" alt="руфус" width="365" height="518" srcset="/wp-content/uploads/2020/07/s1200.jpg 365w, /wp-content/uploads/2020/07/s1200-211x300.jpg 211w" sizes="(max-width: 365px) 100vw, 365px" //><meta itemprop="width" content="365"><meta itemprop="height" content="518"></span></noscript></p>
  337. <p>Существует несколько причин, по которым может потребоваться создать загрузочную флешку. Одна из них – это обновление прошивки материнской платы. Или же потребность иметь “bootable USB flash drive” продиктована необходимостью установки на свой комп интерактивной альтернативной операционной системы. И, кто знает, может быть вы желаете провести проверку оперативной памяти и запустить, скажем, приложение MemTest86+, которое имеет собственный загрузчик.</p>
  338. <p>Rufus не только прост в использовании, он еще и работает очень быстро. На этом акцентирует внимание разработчик приложения Пит Батард (Pete Batard):</p>
  339. <blockquote class="warning"><p>«Rufus работает быстро. Например, он создает из ISO установочную флешку для Windows 7 в два раза быстрее, чем аналоги &#8211; UNetbootin, Universal USB Installer или Windows 7 USB download tool. Также с удивительной скоростью он делает из ISO загрузочные флешки для Linux».</p></blockquote>
  340. <p style="text-align: center;"><a class="btn" href="rufus_new.zip"><i class="dashicons-download"></i>Скачать Rufus для Windows</a></p>
  341. <p>У экспертов, которые тестировали функционал Руфуса, был вопрос, касающийся названия этого приложения. Многим из них оно казалось странным. Разработчик пояснил, что RUFUS – это аббревиатура от «the <strong>R</strong>eliable <strong>U</strong>SB <strong>F</strong>ormatting <strong>U</strong>tility (with <strong>S</strong>ource)» (надежная утилита для форматирования USB &#8211; «open source»-приложение).</p>
  342. <h2>Возможности программы</h2>
  343. <p>Как уже говорилось выше, Rufus в основном используется для создания загрузочных DVD-дисков и установочных USB-флеш накопителей в условиях отсутствия физических DVD-носителей. Это означает, что программа настраивает и программирует флэш-диски для работы, как если бы это были диски с образами для установки ПО.</p>
  344. <p>Когда обычно нужен Rufus? Он нужен в тех случаях, когда из установочного ISO-образа требуется создать загрузочную флешку. С USB-носителя, обходясь без физического диска DVD, можно устанавливать, к примеру, Windows 10. Или не устанавливать конкретную ОС на жесткий диск, а запускать ее с флешки и пользоваться ею поверх другой системы (Линукс или Mac OS).</p>
  345. <p>Rufus может создавать загрузочные носители из Windows, UEFI, Linux и многого другого. Программное обеспечение также отлично подходит для прошивки BIOS и других прошивок на базе DOS.</p>
  346. <p>Если говорить по существу, то Rufus можно использовать для создания и сохранения копии ISO-файла на USB для Windows 7 или для Windows 10. Тогда можно с одной флешки устанавливать или переустанавливать OS на несколько компьютеров, и при этом не будет нужды загружать на каждый ПК или ноутбук требуемый ISO-образ. Также Rufus отлично работает при обновлении версии прошивки материнской платы, запуске загрузочных приложений или создании ISO-образа MacOS Apple High Sierra.</p>
  347. <p><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" class="lazy lazy-hidden aligncenter size-large wp-image-22" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2020/07/scale-529x670.png" alt="настройки" width="529" height="670" srcset="" data-srcset="/wp-content/uploads/2020/07/scale-529x670.png 529w, /wp-content/uploads/2020/07/scale-237x300.png 237w, /wp-content/uploads/2020/07/scale.png 569w" sizes="(max-width: 529px) 100vw, 529px" //><meta itemprop="width" content="529"><meta itemprop="height" content="670"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" class="aligncenter size-large wp-image-22" src="/wp-content/uploads/2020/07/scale-529x670.png" alt="настройки" width="529" height="670" srcset="/wp-content/uploads/2020/07/scale-529x670.png 529w, /wp-content/uploads/2020/07/scale-237x300.png 237w, /wp-content/uploads/2020/07/scale.png 569w" sizes="(max-width: 529px) 100vw, 529px" //><meta itemprop="width" content="529"><meta itemprop="height" content="670"></span></noscript></p>
  348. <h2>Системные требования</h2>
  349. <p>На каких системах Руфус будет функционировать, не вызывая проблем? Требований, на самом деле, совсем немного:</p>
  350. <ul>
  351. <li>Компьютер Apple или ПК, на котором установлена Windows 7 и выше, вне зависимости от разрядности 32 или 64 bit, или же Ubuntu (Mint и т.д.). Кстати, отметим, что новые версии Rufus уже не поддерживают платформы XP и Vista. А Windows To Go возможно использовать только с Windows 8 и более поздними версиями.</li>
  352. <li>Программа Rufus.</li>
  353. <li>ISO (Rufus умеет работать со многими ISO-образами, среди которых Arch Linux, Archbang, BartPE/pebuilder, CentOS, Debian, Fedora, FreeDOS и многие другие).</li>
  354. <li>USB-флешка с минимальным объемом памяти 8 Гб.</li>
  355. </ul>
  356. <p>На официальном сайте rufus.ie можно всегда бесплатно скачать последнюю версию программы. На данный момент это Rufus 3.11, последнее обновление от 18 июня 2020. Также на своем усмотрение можно выбрать варианты – стандартный, portable, GitHub или FossHub.</p>
  357. <blockquote class="warning"><p>Руфус имеет расширенную языковую поддержку, поэтому доступен интерфейс и на русском языке.</p></blockquote>
  358. <p>Еще один важный момент, по поводу которого часто задают вопросы пользователи, касается возможности создания мультизагрузочной флешки. Rufus не поддерживает такую опцию и, насколько известно, не планирует ее добавлять в ближайшем будущем, так как наличие нескольких загрузочных файлов на одном носителе – это источник вероятных проблем. Создать такую флешку можно известными любому сисадмину способами, с помощью Rufus этого сделать не получится.</p>
  359. <p><iframe class="lazy lazy-hidden" loading="lazy" title="Загрузочная флешка Rufus Windows 10, 8.1, 7 (новое)" width="700" height="394"  data-lazy-type="iframe" data-src="https://www.youtube.com/embed/CCw22x93OnI?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe><noscript><iframe loading="lazy" title="Загрузочная флешка Rufus Windows 10, 8.1, 7 (новое)" width="700" height="394" src="https://www.youtube.com/embed/CCw22x93OnI?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></noscript></p>
  360. <h2>Как пользоваться программой</h2>
  361. <p>Одно из преимуществ Rufus состоит в том, что эта утилита не требует установки. Все, что требуется от пользователя, это скачать архив (download), извлечь из архива exe-файл и двойным щелчком мыши запустить программу.</p>
  362. <p>Чтобы системные процессы функционировали наиболее эффективно (это важно для Виндовс 7 и для Виндовс 10) в этом ПО используется самая свежая версия файла xinput1_3.dll!</p>
  363. <p>Пошаговая инструкция по работе с Rufus будет следующей:</p>
  364. <ol>
  365. <li>Щелкните дважды по исполняемому exe-файлу. Откроется окно программы. Для корректной работы потребуется небольшая настройка.</li>
  366. <li>В поле «Устройство» нужно выбрать флешку, на которой будет создан установочный файл.</li>
  367. <li>Следующий важный параметр – «Метод загрузки». Укажите исходный ISO-образ, чтобы использовать его для работы. Для этого нажмите на стрелку, она находится в строке справа, а затем для поиска и выбора ISO используйте проводник Windows.</li>
  368. <li>Далее параметр «Схема раздела» предполагает два варианта – GPT или MBR. Какую именно схему разделов выбрать, решайте на свое усмотрение.</li>
  369. <li>Целевая система BIOS или UEFI.</li>
  370. <li>В разделе «Параметры форматирования» можно создать новую метку тома, выбрать файловую систему и размер кластера.</li>
  371. </ol>
  372. <p>Это почти все, что потребуется сделать перед запуском.</p>
  373. <p>Руфус может отображать дополнительные параметры. Например, если вы выбрали установочный ISO-образ Windows, вы можете получить возможность создать стандартный установочный диск Windows или настроить Windows TO GO.</p>
  374. <blockquote class="danger"><p><strong>Примечание.</strong> Выбранный программой USB-флеш драйв будет отформатирован. Поэтому все данные, записанные на нем ранее, будут утеряны. Прежде чем нажать кнопку «СТАРТ» убедитесь, что вы создали резервную копию данных. Во избежание проблем в списке устройств (пункт «Устройство») указываются только съемные диски, поэтому случайно отформатировать HDD или SSD на компьютере невозможно.</p></blockquote>
  375. <ol start="7">
  376. <li>После того как все настройки сделаны, нажмите «СТАРТ», чтобы запустить процесс. Руфус проверит образ и сравнит его с тем объемом свободной памяти, которая имеется на флешке. Если памяти не хватает, на экране появится соответствующее уведомление. Если на USB уже содержатся файлы, то отобразится предупреждение о том, что все данные на диске будут удалены. Нажмите «ОК», чтобы продолжить, или «Отмена», чтобы остановить процесс и вернуться в главное окно программы.</li>
  377. </ol>
  378. <p>Запись образа на флешку в приложении Rufus займет совсем немного времени. Продолжительность процесса зависит главным образом от размера ISO и скорости USB-накопителя.</p>
  379. <h2>Возможные проблемы</h2>
  380. <p>Иногда на разных этапах работы вы можете столкнуться с проблемами. Например, на подготовительной стадии Rufus не всегда видит флешку, или программой будет сообщено, что «выбранное устройство используется другим процессом». В первом случае причиной может быть то, что вы пытаетесь использовать неподдерживаемый тип съемного носителя, такой как USB HDD. Во втором случае дождитесь окончания процессов, в которых задействован диск USB, или отмените их через «диспетчер» Виндовс.</p>
  381. <p>Также может возникнуть ошибка извлечения ISO-образа. В первую очередь потребуется проверить MD5 у ISO. Никакие сторонние программы для этого не потребуются, все может сделать Rufus! Если это версия 3.0 и выше, просто нажмите галочку, находящуюся в параметре «Устройство» (в некоторых версиях «Выбрать»/ Select). USB-накопитель тоже нужно проверить на наличие плохих блоков. Если проблема с файлом ISO, и контрольные суммы не совпадают, придется скачать образ еще раз. Если дело во флешке, то ее нужно заменить на другую, рабочую.</p>
  382. <h2>Заключение</h2>
  383. <p>Rufus &#8211; это предельно удобная в использовании программа. Она почти не занимает место, не требует установки и за считаные минуты способна превратить любой образ ISO в загрузочный USB-флеш накопитель.</p>
  384. <p>&nbsp;</p>
  385. <p>&nbsp;</p>
  386. <script>
  387. window.jsInputerLaunch = 15;
  388. if (typeof launchAsyncFunctionLauncher === "undefined") {
  389.    function launchAsyncFunctionLauncher() {
  390.        if (typeof asyncFunctionLauncher !== "undefined" && typeof asyncFunctionLauncher === "function") {
  391.            asyncFunctionLauncher();
  392.        } else {
  393.            setTimeout(function () {
  394.                launchAsyncFunctionLauncher();
  395.            }, 100)
  396.        }
  397.    }
  398. }
  399. launchAsyncFunctionLauncher();
  400. </script><script>
  401. var cachedBlocksArray = [];
  402. </script>
  403.  
  404. <!-- rsya_footer_begin -->
  405. <!-- Yandex.RTB R-A-2710345-4 -->
  406. <div id="yandex_rtb_R-A-2710345-4"></div>
  407. <script>window.yaContextCb.push(()=>{
  408. Ya.Context.AdvManager.render({
  409. "blockId": "R-A-2710345-4",
  410. "renderTo": "yandex_rtb_R-A-2710345-4"
  411. })
  412. })
  413. </script>
  414. <!-- rsya_footer_end -->
  415.  
  416. <script src="https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js"></script>
  417. <script src="https://yastatic.net/share2/share.js"></script>
  418. <div class="ya-share2" data-services="collections,vkontakte,facebook,odnoklassniki,moimir,twitter"></div>
  419. </div><!-- .entry-content -->
  420. </article><!-- #post-## -->
  421.  
  422. <meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://rufus-download.ru/"/>
  423. <meta itemprop="dateModified" content="2022-05-12"/>
  424. <meta itemprop="datePublished" content="2020-07-23T16:02:57+03:00"/>
  425. <meta itemprop="author" content="malostran2"/>
  426.  
  427.  
  428.  
  429. <div id="comments" class="comments-area">
  430.  
  431. <div class="comments-title">Комментариев: 6</div>
  432.  
  433. <ol class="comment-list">
  434.    
  435.  
  436.  
  437. <li class="comment even thread-even depth-1" id="li-comment-20" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
  438.    <div class="comment-box" id="comment-20">
  439.  
  440.        <div class="comment-header">
  441.  
  442.            <div class="comment-avatar">
  443.                <img alt='' src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='https://secure.gravatar.com/avatar/d4e7a7a7cb3237c7289946510214ff73?s=50&#038;d=mm&#038;r=g' srcset="" data-srcset='https://secure.gravatar.com/avatar/d4e7a7a7cb3237c7289946510214ff73?s=100&#038;d=mm&#038;r=g 2x' class='lazy lazy-hidden avatar avatar-50 photo' height='50' width='50' loading='lazy'/><noscript><img alt='' src='https://secure.gravatar.com/avatar/d4e7a7a7cb3237c7289946510214ff73?s=50&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/d4e7a7a7cb3237c7289946510214ff73?s=100&#038;d=mm&#038;r=g 2x' class='avatar avatar-50 photo' height='50' width='50' loading='lazy'/></noscript>            </div>
  444.  
  445.            <div class="comment-meta">
  446.  
  447.                <cite class="comment-author" itemprop="creator">алексей</cite>
  448.                                
  449.                                    <time class="comment-time" itemprop="datePublished" datetime="2020-08-26">26.08.2020 в 11:31</time>
  450.                                
  451.            </div>
  452.  
  453.        </div>
  454.  
  455.        <div class="comment-body">
  456.                        <div class="comment-text" itemprop="text"><p>хорошая программа давно такую искал</p>
  457. </div>
  458.            <div class="comment-footer">
  459.                <span rel='nofollow' class='comment-reply-link' data-href='#comment-20' data-commentid="20" data-postid="8" data-belowelement="comment-20" data-respondelement="respond" data-replyto="Комментарий к записи алексей" aria-label='Комментарий к записи алексей'>Ответить</span>            </div>
  460.        </div>
  461.    </div>
  462.  
  463.    </li><!-- #comment-## -->
  464.    
  465.  
  466.  
  467. <li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-23" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
  468.    <div class="comment-box" id="comment-23">
  469.  
  470.        <div class="comment-header">
  471.  
  472.            <div class="comment-avatar">
  473.                <img alt='' src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='https://secure.gravatar.com/avatar/e8d482bb48969a6b36acc062bacfbabe?s=50&#038;d=mm&#038;r=g' srcset="" data-srcset='https://secure.gravatar.com/avatar/e8d482bb48969a6b36acc062bacfbabe?s=100&#038;d=mm&#038;r=g 2x' class='lazy lazy-hidden avatar avatar-50 photo' height='50' width='50' loading='lazy'/><noscript><img alt='' src='https://secure.gravatar.com/avatar/e8d482bb48969a6b36acc062bacfbabe?s=50&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/e8d482bb48969a6b36acc062bacfbabe?s=100&#038;d=mm&#038;r=g 2x' class='avatar avatar-50 photo' height='50' width='50' loading='lazy'/></noscript>            </div>
  474.  
  475.            <div class="comment-meta">
  476.  
  477.                <cite class="comment-author" itemprop="creator">Виктор</cite>
  478.                                
  479.                                    <time class="comment-time" itemprop="datePublished" datetime="2020-08-26">26.08.2020 в 14:35</time>
  480.                                
  481.            </div>
  482.  
  483.        </div>
  484.  
  485.        <div class="comment-body">
  486.                        <div class="comment-text" itemprop="text"><p>Очень классная и простая в использовании программа, рекомендую.</p>
  487. </div>
  488.            <div class="comment-footer">
  489.                <span rel='nofollow' class='comment-reply-link' data-href='#comment-23' data-commentid="23" data-postid="8" data-belowelement="comment-23" data-respondelement="respond" data-replyto="Комментарий к записи Виктор" aria-label='Комментарий к записи Виктор'>Ответить</span>            </div>
  490.        </div>
  491.    </div>
  492.  
  493.    </li><!-- #comment-## -->
  494.    
  495.  
  496.  
  497. <li class="comment even thread-even depth-1" id="li-comment-24" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
  498.    <div class="comment-box" id="comment-24">
  499.  
  500.        <div class="comment-header">
  501.  
  502.            <div class="comment-avatar">
  503.                <img alt='' src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='https://secure.gravatar.com/avatar/ed265bc9b103a0977460a9f019c2cdab?s=50&#038;d=mm&#038;r=g' srcset="" data-srcset='https://secure.gravatar.com/avatar/ed265bc9b103a0977460a9f019c2cdab?s=100&#038;d=mm&#038;r=g 2x' class='lazy lazy-hidden avatar avatar-50 photo' height='50' width='50' loading='lazy'/><noscript><img alt='' src='https://secure.gravatar.com/avatar/ed265bc9b103a0977460a9f019c2cdab?s=50&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/ed265bc9b103a0977460a9f019c2cdab?s=100&#038;d=mm&#038;r=g 2x' class='avatar avatar-50 photo' height='50' width='50' loading='lazy'/></noscript>            </div>
  504.  
  505.            <div class="comment-meta">
  506.  
  507.                <cite class="comment-author" itemprop="creator">kaxa</cite>
  508.                                
  509.                                    <time class="comment-time" itemprop="datePublished" datetime="2020-08-27">27.08.2020 в 03:47</time>
  510.                                
  511.            </div>
  512.  
  513.        </div>
  514.  
  515.        <div class="comment-body">
  516.                        <div class="comment-text" itemprop="text"><p>Программа очень удобная и полезная к использованию я уже скачал эту версию и пользуюсь доволен и всем рекомендую.</p>
  517. </div>
  518.            <div class="comment-footer">
  519.                <span rel='nofollow' class='comment-reply-link' data-href='#comment-24' data-commentid="24" data-postid="8" data-belowelement="comment-24" data-respondelement="respond" data-replyto="Комментарий к записи kaxa" aria-label='Комментарий к записи kaxa'>Ответить</span>            </div>
  520.        </div>
  521.    </div>
  522.  
  523.    </li><!-- #comment-## -->
  524.    
  525.  
  526.  
  527. <li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-26" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
  528.    <div class="comment-box" id="comment-26">
  529.  
  530.        <div class="comment-header">
  531.  
  532.            <div class="comment-avatar">
  533.                <img alt='' src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='https://secure.gravatar.com/avatar/986e07cbdec6b45211784af45e6a5820?s=50&#038;d=mm&#038;r=g' srcset="" data-srcset='https://secure.gravatar.com/avatar/986e07cbdec6b45211784af45e6a5820?s=100&#038;d=mm&#038;r=g 2x' class='lazy lazy-hidden avatar avatar-50 photo' height='50' width='50' loading='lazy'/><noscript><img alt='' src='https://secure.gravatar.com/avatar/986e07cbdec6b45211784af45e6a5820?s=50&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/986e07cbdec6b45211784af45e6a5820?s=100&#038;d=mm&#038;r=g 2x' class='avatar avatar-50 photo' height='50' width='50' loading='lazy'/></noscript>            </div>
  534.  
  535.            <div class="comment-meta">
  536.  
  537.                <cite class="comment-author" itemprop="creator">Анна Мишанчук-Дроздовская</cite>
  538.                                
  539.                                    <time class="comment-time" itemprop="datePublished" datetime="2020-08-28">28.08.2020 в 13:59</time>
  540.                                
  541.            </div>
  542.  
  543.        </div>
  544.  
  545.        <div class="comment-body">
  546.                        <div class="comment-text" itemprop="text"><p>Данная статья стоит внимания однозначно,полезная и нужная.Программа очень хорошая,а главная простая в использовании,разберется даже новичок.</p>
  547. </div>
  548.            <div class="comment-footer">
  549.                <span rel='nofollow' class='comment-reply-link' data-href='#comment-26' data-commentid="26" data-postid="8" data-belowelement="comment-26" data-respondelement="respond" data-replyto="Комментарий к записи Анна Мишанчук-Дроздовская" aria-label='Комментарий к записи Анна Мишанчук-Дроздовская'>Ответить</span>            </div>
  550.        </div>
  551.    </div>
  552.  
  553.    </li><!-- #comment-## -->
  554.    
  555.  
  556.  
  557. <li class="comment even thread-even depth-1" id="li-comment-27" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
  558.    <div class="comment-box" id="comment-27">
  559.  
  560.        <div class="comment-header">
  561.  
  562.            <div class="comment-avatar">
  563.                <img alt='' src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='https://secure.gravatar.com/avatar/42188617bcd6c388c385fcf23466b65e?s=50&#038;d=mm&#038;r=g' srcset="" data-srcset='https://secure.gravatar.com/avatar/42188617bcd6c388c385fcf23466b65e?s=100&#038;d=mm&#038;r=g 2x' class='lazy lazy-hidden avatar avatar-50 photo' height='50' width='50' loading='lazy'/><noscript><img alt='' src='https://secure.gravatar.com/avatar/42188617bcd6c388c385fcf23466b65e?s=50&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/42188617bcd6c388c385fcf23466b65e?s=100&#038;d=mm&#038;r=g 2x' class='avatar avatar-50 photo' height='50' width='50' loading='lazy'/></noscript>            </div>
  564.  
  565.            <div class="comment-meta">
  566.  
  567.                <cite class="comment-author" itemprop="creator">Александр</cite>
  568.                                
  569.                                    <time class="comment-time" itemprop="datePublished" datetime="2020-08-28">28.08.2020 в 14:29</time>
  570.                                
  571.            </div>
  572.  
  573.        </div>
  574.  
  575.        <div class="comment-body">
  576.                        <div class="comment-text" itemprop="text"><p>Приложение Rufus лдля записи информации, используется вместо традиционных флешек. Всегда под рукой и надежна. Это новая технология, осваивайте друзья.</p>
  577. </div>
  578.            <div class="comment-footer">
  579.                <span rel='nofollow' class='comment-reply-link' data-href='#comment-27' data-commentid="27" data-postid="8" data-belowelement="comment-27" data-respondelement="respond" data-replyto="Комментарий к записи Александр" aria-label='Комментарий к записи Александр'>Ответить</span>            </div>
  580.        </div>
  581.    </div>
  582.  
  583.    </li><!-- #comment-## -->
  584.    
  585.  
  586.  
  587. <li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-28" itemprop="comment" itemscope itemtype="http://schema.org/Comment">
  588.    <div class="comment-box" id="comment-28">
  589.  
  590.        <div class="comment-header">
  591.  
  592.            <div class="comment-avatar">
  593.                <img alt='' src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='https://secure.gravatar.com/avatar/f76a586baa7a7eb1e5d2a28552668eca?s=50&#038;d=mm&#038;r=g' srcset="" data-srcset='https://secure.gravatar.com/avatar/f76a586baa7a7eb1e5d2a28552668eca?s=100&#038;d=mm&#038;r=g 2x' class='lazy lazy-hidden avatar avatar-50 photo' height='50' width='50' loading='lazy'/><noscript><img alt='' src='https://secure.gravatar.com/avatar/f76a586baa7a7eb1e5d2a28552668eca?s=50&#038;d=mm&#038;r=g' srcset='https://secure.gravatar.com/avatar/f76a586baa7a7eb1e5d2a28552668eca?s=100&#038;d=mm&#038;r=g 2x' class='avatar avatar-50 photo' height='50' width='50' loading='lazy'/></noscript>            </div>
  594.  
  595.            <div class="comment-meta">
  596.  
  597.                <cite class="comment-author" itemprop="creator">Александр</cite>
  598.                                
  599.                                    <time class="comment-time" itemprop="datePublished" datetime="2020-08-30">30.08.2020 в 10:15</time>
  600.                                
  601.            </div>
  602.  
  603.        </div>
  604.  
  605.        <div class="comment-body">
  606.                        <div class="comment-text" itemprop="text"><p>Можно с уверенностью посоветовать установку данной программы, работает качественно и без сбоев! <img src="/wp-content/themes/root/images/smilies/idea.png" alt=":idea:" class="wp-smiley" /></p>
  607. </div>
  608.            <div class="comment-footer">
  609.                <span rel='nofollow' class='comment-reply-link' data-href='#comment-28' data-commentid="28" data-postid="8" data-belowelement="comment-28" data-respondelement="respond" data-replyto="Комментарий к записи Александр" aria-label='Комментарий к записи Александр'>Ответить</span>            </div>
  610.        </div>
  611.    </div>
  612.  
  613.    </li><!-- #comment-## -->
  614. </ol><!-- .comment-list -->
  615.  
  616. <div id="respond" class="comment-respond">
  617. <div id="reply-title" class="comment-reply-title">Добавить комментарий <small><a rel="nofollow" id="cancel-comment-reply-link" href="/#respond" style="display:none;">Отменить ответ</a></small></div><form action="https://rufus-download.ru/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate><p class="comment-form-author"><label for="author">Имя <span class="required" aria-hidden="true">*</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245" required /></p>
  618. <p class="comment-form-email"><label for="email">Email <span class="required" aria-hidden="true">*</span></label> <input id="email" name="email" type="email" value="" size="30" maxlength="100" required /></p>
  619. <p class="comment-form-url"><label for="url">Сайт</label> <input id="url" name="url" type="url" value="" size="30" maxlength="200" /></p>
  620. <p class="comment-form-comment"><label for="comment">Комментарий <span class="required" aria-hidden="true">*</span></label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required></textarea></p><p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes" /> <label for="wp-comment-cookies-consent">Сохранить моё имя, email и адрес сайта в этом браузере для последующих моих комментариев.</label></p>
  621. <p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Отправить комментарий" /> <input type='hidden' name='comment_post_ID' value='8' id='comment_post_ID' />
  622. <input type='hidden' name='comment_parent' id='comment_parent' value='0' />
  623. </p><p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="4e2ea0caed" /></p><p style="display: none !important;"><label>&#916;<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="149"/><script>document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div><!-- #respond -->
  624. </div><!-- #comments -->
  625.  
  626. </main><!-- #main -->
  627. </div><!-- #primary -->
  628.  
  629.  
  630. <aside id="secondary" class="widget-area" itemscope itemtype="http://schema.org/WPSideBar">
  631.  
  632.    
  633. <div id="custom_html-3" class="widget_text widget widget_custom_html"><div class="widget-header">Rufus</div><div class="textwidget custom-html-widget"><strong>Разработчик:</strong> Akeo/Pete Batard<br/>
  634. <strong>Тип лицензии:</strong> Бесплатная<br/>
  635. <strong>Текущая версия:</strong> 3.14<br/>
  636. <strong>Обновлено:</strong> 30.04.2021<br/>
  637. <strong>Размер:</strong> 1,1Mb<br/>
  638. <strong>Формат:</strong> .exe <br/>
  639. <strong>Операционная система:</strong> Windows 10, 8.1, 8, 7<br/>
  640. <strong>Язык:</strong> Русский<br/>
  641. <strong>Категория:</strong> Менеджер загрузок</div></div><div id="wpshop_articles-2" class="widget widget_wpshop_articles"><div class="widget-header">Статьи</div>
  642.  
  643.            
  644.                <div class="widget-article widget-article--compact">
  645.                    <div class="widget-article__image">
  646. <a href="/stati/kak-iz-iso-obraza-sdelat-zagruzochnuyu-fleshku/">
  647.                                                    <img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/03/2017-10-14-18-29-35-150x150.png" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="установка с флешки" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/03/2017-10-14-18-29-35-150x150.png" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="установка с флешки" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/uploads/2021/03/2017-10-14-18-29-35-150x150.png" class="attachment-thumbnail size-thumbnail wp-post-image" alt="установка с флешки" loading="lazy" /></noscript></noscript>                                                </a>
  648.                    </div>
  649.                    <div class="widget-article__body">
  650.                        <div class="widget-article__title"><a href="/stati/kak-iz-iso-obraza-sdelat-zagruzochnuyu-fleshku/">Как из ISO образа сделать загрузочную флешку</a></div>
  651.                        <div class="widget-article__category">
  652.                            <a href="/category/stati/">Статьи</a>                        </div>
  653.                    </div>
  654.                </div>
  655.  
  656.            
  657.  
  658.  
  659.            
  660.  
  661.            
  662.                <div class="widget-article widget-article--compact">
  663.                    <div class="widget-article__image">
  664. <a href="/stati/kak-zagruzitsya-s-fleshki/">
  665.                                                    <img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/03/sposoby-zagruzki-os-s-fleshki-150x150.jpg" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="выбор накопителя" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/03/sposoby-zagruzki-os-s-fleshki-150x150.jpg" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="выбор накопителя" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/uploads/2021/03/sposoby-zagruzki-os-s-fleshki-150x150.jpg" class="attachment-thumbnail size-thumbnail wp-post-image" alt="выбор накопителя" loading="lazy" /></noscript></noscript>                                                </a>
  666.                    </div>
  667.                    <div class="widget-article__body">
  668.                        <div class="widget-article__title"><a href="/stati/kak-zagruzitsya-s-fleshki/">Как загрузиться с флешки</a></div>
  669.                        <div class="widget-article__category">
  670.                            <a href="/category/stati/">Статьи</a>                        </div>
  671.                    </div>
  672.                </div>
  673.  
  674.            
  675.  
  676.  
  677.            
  678.  
  679.            
  680.                <div class="widget-article widget-article--compact">
  681.                    <div class="widget-article__image">
  682. <a href="/stati/sozdanie-ustanovochnoj-fleshki-mac-os/">
  683.                                                    <img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/03/355682-150x150.png" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="загрузочная флешка на Mac" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/03/355682-150x150.png" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="загрузочная флешка на Mac" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/uploads/2021/03/355682-150x150.png" class="attachment-thumbnail size-thumbnail wp-post-image" alt="загрузочная флешка на Mac" loading="lazy" /></noscript></noscript>                                                </a>
  684.                    </div>
  685.                    <div class="widget-article__body">
  686.                        <div class="widget-article__title"><a href="/stati/sozdanie-ustanovochnoj-fleshki-mac-os/">Создание установочной флешки Mac OS</a></div>
  687.                        <div class="widget-article__category">
  688.                            <a href="/category/stati/">Статьи</a>                        </div>
  689.                    </div>
  690.                </div>
  691.  
  692.            
  693.  
  694.  
  695.            
  696.  
  697.            
  698.                <div class="widget-article widget-article--compact">
  699.                    <div class="widget-article__image">
  700. <a href="/stati/sozdanie-zagruzochnoj-fleshki-na-windows-10/">
  701.                                                    <img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/02/4343f2ff-538b-4432-842d-c97e6033d575-150x150.png" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="Media Creation Tool" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/02/4343f2ff-538b-4432-842d-c97e6033d575-150x150.png" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="Media Creation Tool" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/uploads/2021/02/4343f2ff-538b-4432-842d-c97e6033d575-150x150.png" class="attachment-thumbnail size-thumbnail wp-post-image" alt="Media Creation Tool" loading="lazy" /></noscript></noscript>                                                </a>
  702.                    </div>
  703.                    <div class="widget-article__body">
  704.                        <div class="widget-article__title"><a href="/stati/sozdanie-zagruzochnoj-fleshki-na-windows-10/">Создание загрузочной флешки на Windows 10</a></div>
  705.                        <div class="widget-article__category">
  706.                            <a href="/category/stati/">Статьи</a>                        </div>
  707.                    </div>
  708.                </div>
  709.  
  710.            
  711.  
  712.  
  713.            
  714.  
  715.            
  716.                <div class="widget-article widget-article--compact">
  717.                    <div class="widget-article__image">
  718. <a href="/stati/kak-sdelat-zagruzochnuyu-fleshku-windows-7/">
  719.                                                    <img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/02/bootable-usb-for-windows-7-e1613996123396-150x150.jpg" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="bootable-usb-for-windows-7" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="/wp-content/uploads/2021/02/bootable-usb-for-windows-7-e1613996123396-150x150.jpg" class="lazy lazy-hidden attachment-thumbnail size-thumbnail wp-post-image" alt="bootable-usb-for-windows-7" loading="lazy" /><noscript><img width="150" height="150" src="/wp-content/uploads/2021/02/bootable-usb-for-windows-7-e1613996123396-150x150.jpg" class="attachment-thumbnail size-thumbnail wp-post-image" alt="bootable-usb-for-windows-7" loading="lazy" /></noscript></noscript>                                                </a>
  720.                    </div>
  721.                    <div class="widget-article__body">
  722.                        <div class="widget-article__title"><a href="/stati/kak-sdelat-zagruzochnuyu-fleshku-windows-7/">Как сделать загрузочную флешку Windows 7</a></div>
  723.                        <div class="widget-article__category">
  724.                            <a href="/category/stati/">Статьи</a>                        </div>
  725.                    </div>
  726.                </div>
  727.  
  728.            
  729.  
  730.  
  731.            </div>
  732. <!-- rsya_sidebar_begin -->
  733. <!-- Yandex.RTB R-A-2710345-5 -->
  734. <div id="yandex_rtb_R-A-2710345-5"></div>
  735. <script>window.yaContextCb.push(()=>{
  736. Ya.Context.AdvManager.render({
  737. "blockId": "R-A-2710345-5",
  738. "renderTo": "yandex_rtb_R-A-2710345-5"
  739. })
  740. })
  741. </script>
  742. <!-- rsya_sidebar_end -->
  743.  
  744. <div id="recent-comments-2" class="widget widget_recent_comments"><div class="widget-header">Последние комментарии</div><ul id="recentcomments"><li class="recentcomments"><span class="comment-author-link">Александр</span> к записи <a href="/#comment-28">Скачать Руфус для windows 10 и 7 и создать загрузочную флешку</a></li><li class="recentcomments"><span class="comment-author-link">Александр</span> к записи <a href="/#comment-27">Скачать Руфус для windows 10 и 7 и создать загрузочную флешку</a></li><li class="recentcomments"><span class="comment-author-link">Анна Мишанчук-Дроздовская</span> к записи <a href="/#comment-26">Скачать Руфус для windows 10 и 7 и создать загрузочную флешку</a></li><li class="recentcomments"><span class="comment-author-link">kaxa</span> к записи <a href="/#comment-24">Скачать Руфус для windows 10 и 7 и создать загрузочную флешку</a></li><li class="recentcomments"><span class="comment-author-link">Виктор</span> к записи <a href="/#comment-23">Скачать Руфус для windows 10 и 7 и создать загрузочную флешку</a></li></ul></div>
  745.    
  746. </aside><!-- #secondary -->
  747.  
  748. </div><!-- #content -->
  749.  
  750.    
  751.    
  752.    
  753. <footer class="site-footer container" itemscope itemtype="http://schema.org/WPFooter">
  754.        <div class="site-footer-inner ">
  755.  
  756.                            <button type="button" class="scrolltop js-scrolltop"></button>
  757.            
  758.            <div class="footer-info">
  759.                © 2023 Не является официальным сайтом. Все товарные знаки принадлежат их владельцам.
  760.                <div class="footer-text"><div class="footer-text"><a href="/privacy-policy/">Политика конфиденциальности</a></div> </div>            </div><!-- .site-info -->
  761.  
  762.            <div class="footer-counters">
  763.                            </div>
  764.  
  765.        </div><!-- .site-footer-inner -->
  766. </footer><!-- .site-footer -->
  767.  
  768.    
  769. </div><!-- #page -->
  770.  
  771.  
  772. <script>
  773. if (typeof rb_ajaxurl==='undefined') {var rb_ajaxurl = 'https://rufus-download.ru/wp-admin/admin-ajax.php';}
  774. if (typeof gather_content==='undefined') {var gather_content = true;}
  775. if (typeof endedSc==='undefined') {var endedSc = false;}
  776. if (typeof endedCc==='undefined') {var endedCc = false;}
  777. if (typeof usedAdBlocksArray==='undefined') {var usedAdBlocksArray = [];}
  778. if (typeof usedBlockSettingArrayIds==='undefined') {var usedBlockSettingArrayIds = [];}
  779. if (typeof sameElementAfterWidth==='undefined') {var sameElementAfterWidth = false;}
  780. if (typeof sameElementAfterExcClassId==='undefined') {var sameElementAfterExcClassId = false;}
  781. if (typeof sameElementAfterFromConstruction==='undefined') {var sameElementAfterFromConstruction = false;}
  782. if (typeof rb_tempElement_check==='undefined') {var rb_tempElement_check = false;}
  783. if (typeof rb_tempElement==='undefined') {var rb_tempElement = null;}
  784. if (typeof window.jsInputerLaunch==='undefined') {window.jsInputerLaunch = -1;}
  785.  
  786. function launchUpdateRbDisplays() {
  787.    if ((typeof updateRbDisplays !== 'undefined')&&(typeof updateRbDisplays === 'function')) {
  788.        updateRbDisplays();
  789.    } else {
  790.        setTimeout(function () {
  791.            launchUpdateRbDisplays();
  792.        }, 200);
  793.    }
  794. }
  795.  
  796. /* "sc" in variables - mark for shortcode variable */
  797. function shortcodesInsert() {
  798.    let gatheredBlocks = document.querySelectorAll('.percentPointerClass.scMark'),
  799.        scBlockId = -1,
  800.        scAdId = -1,
  801.        blockStatus = '',
  802.        dataFull = -1,
  803.        gatheredBlockChild,
  804.        okStates = ['done','refresh-wait','no-block','fetched'],
  805.        scContainer,
  806.        sci,
  807.        i1 = 0,
  808.        skyscraperCheck = [],
  809.        skyscraperStatus = false,
  810.        splitedSkyscraper = [],
  811.        gatheredBlockChildSkyParts = [],
  812.        stickyStatus = false,
  813.        stickyCheck = [],
  814.        stickyFixedStatus = false,
  815.        stickyFixedCheck = [],
  816.        overflowCheck = [],
  817.        overflowStatus = false,
  818.        repeatableIdentifier = "",
  819.        dataCidIdentifier = null,
  820.        divCidElement = '';
  821.  
  822.    if (typeof scArray !== 'undefined') {
  823.        if (scArray&&scArray.length > 0&&gatheredBlocks&&gatheredBlocks.length > 0&&typeof window.rulvW5gntb !== 'undefined') {
  824.            dataCidIdentifier = window.rulvW5gntb;
  825.            for (let i = 0; i < gatheredBlocks.length; i++) {
  826.                gatheredBlockChild = gatheredBlocks[i].children[0];
  827.                if (!gatheredBlockChild) {
  828.                    continue;
  829.                }
  830.                scAdId = -3;
  831.                blockStatus = null;
  832.                scContainer = null;
  833.                dataFull = -1;
  834.                skyscraperStatus = false;
  835.                splitedSkyscraper = [];
  836.                gatheredBlockChildSkyParts = [];
  837.                stickyStatus = false;
  838.                stickyCheck = [];
  839.                stickyFixedStatus = false;
  840.                stickyFixedCheck = [];
  841.                repeatableIdentifier = "";
  842.                divCidElement = null;
  843.  
  844.                scAdId = gatheredBlockChild.getAttribute('data-aid');
  845.                scBlockId = gatheredBlockChild.getAttribute('data-id');
  846.                blockStatus = gatheredBlockChild.getAttribute('data-state');
  847.                dataFull = gatheredBlockChild.getAttribute('data-full');
  848.  
  849.                if (scBlockId&&scAdId > 0) {
  850.                    sci = -1;
  851.                    for (i1 = 0; i1 < scArray.length; i1++) {
  852.                        if (scBlockId == scArray[i1]['blockId']&&scAdId == scArray[i1]['adId']) {
  853.                            sci = i1;
  854.                        }
  855.                    }
  856.  
  857.                    if (sci > -1) {
  858.                        if (blockStatus&&okStates.includes(blockStatus)) {
  859.                            if (blockStatus=='no-block') {
  860.                                gatheredBlockChild.innerHTML = '';
  861.                            } else if ((blockStatus=='fetched'&&dataFull==1)||!['no-block','fetched'].includes(blockStatus)) {
  862.                                for (let cl1 = 0; cl1 < gatheredBlocks[i].classList.length; cl1++) {
  863.                                    if (gatheredBlocks[i].classList[cl1].includes("repeatable-mark")) {
  864.                                        repeatableIdentifier = gatheredBlocks[i].classList[cl1];
  865.                                    }
  866.                                }
  867.  
  868.                                if (repeatableIdentifier) {
  869.                                    divCidElement = document.querySelectorAll(".percentPointerClass.scMark."+repeatableIdentifier+' div[data-cid="'+dataCidIdentifier+'"]');
  870.                                } else {
  871.                                    divCidElement = gatheredBlockChild.querySelectorAll('div[data-cid="'+dataCidIdentifier+'"]');
  872.                                }
  873.  
  874.                                if (divCidElement&&divCidElement.length > 0) {
  875.                                    for (let i2 = 0; i2 < divCidElement.length; i2++) {
  876.                                        jQuery(divCidElement[i2]).html(scArray[sci]['text']);
  877.                                    }
  878.                                } else {
  879.                                    jQuery(gatheredBlockChild).html(scArray[sci]['text']);
  880.                                }
  881.                                launchUpdateRbDisplays();
  882.                            }
  883.                            if (blockStatus!='fetched'||(blockStatus=='fetched'&&dataFull==1)) {
  884.                                for (i1 = 0; i1 < scArray.length; i1++) {
  885.                                    if (scBlockId == scArray[i1]['blockId']) {
  886.                                        scArray.splice(i1, 1);
  887.                                        i1--;
  888.                                    }
  889.                                }
  890.                                gatheredBlocks[i].classList.remove('scMark');
  891.                            }
  892.                        }
  893.                    }
  894.                } else if (scBlockId&&scAdId < 1&&['no-block','fetched'].includes(blockStatus)) {
  895.                    for (i1 = 0; i1 < scArray.length; i1++) {
  896.                        if (scBlockId == scArray[i1]['blockId']) {
  897.                            scArray.splice(i1, 1);
  898.                            i1--;
  899.                        }
  900.                    }
  901.                    gatheredBlocks[i].classList.remove('scMark');
  902.                }
  903.            }
  904.        } else if (!scArray||(scArray&&scArray.length < 1)) {
  905.            endedSc = true;
  906.        }
  907.    } else {
  908.        endedSc = true;
  909.    }
  910.  
  911.    if (!endedSc) {
  912.        setTimeout(function () {
  913.            shortcodesInsert();
  914.        }, 200);
  915.    }
  916. }
  917.  
  918. function clearUnsuitableCache(cuc_cou) {
  919.    let scAdId = -1;
  920.    let ccRepeat = false;
  921.  
  922.    let gatheredBlocks = document.querySelectorAll('.percentPointerClass .' + block_classes.join(', .percentPointerClass .'));
  923.  
  924.    if (gatheredBlocks&&gatheredBlocks.length > 0) {
  925.        for (let i = 0; i < gatheredBlocks.length; i++) {
  926.            if (gatheredBlocks[i]['dataset']['aid']&&gatheredBlocks[i]['dataset']['aid'] < 0) {
  927.                if ((gatheredBlocks[i]['dataset']["state"]=='no-block')||(['done','fetched','refresh-wait'].includes(gatheredBlocks[i]['dataset']["state"]))) {
  928.                    gatheredBlocks[i]['innerHTML'] = '';
  929.                } else {
  930.                    ccRepeat = true;
  931.                }
  932.            } else if (!gatheredBlocks[i]['dataset']['aid']) {
  933.                ccRepeat = true;
  934.            }
  935.        }
  936.        if (cuc_cou < 50) {
  937.            if (ccRepeat) {
  938.                setTimeout(function () {
  939.                    clearUnsuitableCache(cuc_cou+1);
  940.                }, 100);
  941.            }
  942.        } else {
  943.            endedCc = true;
  944.        }
  945.    } else {
  946.        endedCc = true;
  947.    }
  948. }
  949.  
  950. function blocksRepositionUse(containerString, blType, searchType, contentElement) {
  951.    let blocksInContainer;
  952.    let blLocal = blType;
  953.    let currentBlock;
  954.    let currentBlockId;
  955.    let currentBlockPosition;
  956.    let currentContainer;
  957.    let i = 0;
  958.    let j = 0;
  959.    let blockStrJs = ' .percentPointerClass.marked';
  960.    let blockStrPhp = ' .percentPointerClass:not(.marked)';
  961.    let blockStr = ' .percentPointerClass';
  962.    let checkPointer = null;
  963.    let blockRepeatEnd = false;
  964.  
  965.    if (searchType) {
  966.        if (searchType == 'marked') {
  967.            while (!blockRepeatEnd) {
  968.                blLocal = blLocal.parentElement;
  969.                if (blLocal) {
  970.                    checkPointer = blLocal.querySelector("#content_pointer_id");
  971.                    if (!checkPointer) {
  972.                        blocksInContainer = jQuery(blLocal).parent(containerString);
  973.                        if (blocksInContainer && blocksInContainer.length > 0) {
  974.                            /* checkPointer = blocksInContainer.querySelector("#content_pointer_id"); */
  975.                            checkPointer = jQuery(blocksInContainer).find("#content_pointer_id");
  976.                            if (checkPointer && checkPointer.length > 0) {
  977.                                blocksInContainer = null;
  978.                            }
  979.                            blockRepeatEnd = true;
  980.                        }
  981.                    } else {
  982.                        blockRepeatEnd = true
  983.                    }
  984.                } else {
  985.                    blockRepeatEnd = true
  986.                }
  987.            }
  988.            /* blocksInContainer = jQuery(blType).parent(containerString); */
  989.            if (blocksInContainer&&blocksInContainer.length > 0) {
  990.                /* blocksInContainer.parentNode.insertBefore(rb_tempElement, blocksInContainer); */
  991.                blocksInContainer[0].parentNode.insertBefore(rb_tempElement, blocksInContainer[0]);
  992.  
  993.                sameElementAfterExcClassId = false;
  994.                return blocksInContainer[0];
  995.            }
  996.            return blType;
  997.        } else if (searchType == 'non-marked') {
  998.            blocksInContainer = document.querySelectorAll(blType + containerString + blockStrPhp);
  999.            if (blocksInContainer && blocksInContainer.length > 0 && usedBlockSettingArray && usedBlockSettingArray.length > 0) {
  1000.                for (i = 0; i < blocksInContainer.length; i++) {
  1001.                    currentBlock = blocksInContainer[i];
  1002.                    currentBlockId = currentBlock.querySelector('.' + block_classes.join(', .')).getAttribute('data-id');
  1003.                    currentContainer = null;
  1004.                    for (j = 0; j < usedBlockSettingArray.length; i++) {
  1005.                        if (usedBlockSettingArray[i]['id'] == currentBlockId) {
  1006.                            currentBlockPosition = usedBlockSettingArray[i]['elementPosition'];
  1007.                            currentContainer = currentBlock.closest(blType + containerString);
  1008.                            if (currentBlockPosition == 0) {
  1009.                                currentContainer.parentNode.insertBefore(currentBlock, currentContainer);
  1010.                            } else {
  1011.                                currentContainer.parentNode.insertBefore(currentBlock, currentContainer.nextSibling);
  1012.                            }
  1013.                            break;
  1014.                        }
  1015.                    }
  1016.                }
  1017.            }
  1018.        }
  1019.    }
  1020.    return false;
  1021. }
  1022.  
  1023. function createStyleElement(blockNumber, localElementCss) {
  1024.    let htmlToAdd = '';
  1025.    let marginString;
  1026.    let textAlignString;
  1027.    let contPoi;
  1028.    let emptyValues = false;
  1029.    let elementToAddStyleLocal = document.querySelector('#blocksAlignStyle');
  1030.    if (!elementToAddStyleLocal) {
  1031.        contPoi = document.querySelector('#content_pointer_id');
  1032.        if (!contPoi) {
  1033.            return false;
  1034.        }
  1035.  
  1036.        elementToAddStyleLocal = document.createElement('style');
  1037.        elementToAddStyleLocal.setAttribute('id', 'blocksAlignStyle');
  1038.        contPoi.parentNode.insertBefore(elementToAddStyleLocal, contPoi);
  1039.    }
  1040.  
  1041.    switch (localElementCss) {
  1042.        case 'left':
  1043.            emptyValues = false;
  1044.            marginString = '0 auto 0 0';
  1045.            textAlignString = 'left';
  1046.            break;
  1047.        case 'right':
  1048.            emptyValues = false;
  1049.            marginString = '0 0 0 auto';
  1050.            textAlignString = 'right';
  1051.            break;
  1052.        case 'center':
  1053.            emptyValues = false;
  1054.            marginString = '0 auto';
  1055.            textAlignString = 'center';
  1056.            break;
  1057.        case 'default':
  1058.            emptyValues = true;
  1059.            marginString = 'default';
  1060.            textAlignString = 'default';
  1061.            /** here will be css */
  1062.            break;
  1063.    }
  1064.    if (!emptyValues) {
  1065.        htmlToAdd = '.percentPointerClass  > *[data-id="'+blockNumber+'"] {\n' +
  1066.            '    margin: '+marginString+';\n' +
  1067.            '}\n';
  1068.    }
  1069.  
  1070.    elementToAddStyleLocal.innerHTML += htmlToAdd;
  1071.    return textAlignString;
  1072. }
  1073.  
  1074. function initTargetToInsert(position, type, currentElement) {
  1075.    let posCurrentElement;
  1076.    let usedElement;
  1077.    if (type == 'element') {
  1078.        if (position == 0) {
  1079.            posCurrentElement = currentElement;
  1080.            if (!(typeof obligatoryMargin!=='undefined'&&obligatoryMargin===1)) {
  1081.                currentElement.classList.add('rfwp_removedMarginTop');
  1082.            }
  1083.        } else {
  1084.            posCurrentElement = currentElement.nextSibling;
  1085.            if (!(typeof obligatoryMargin!=='undefined'&&obligatoryMargin===1)) {
  1086.                currentElement.classList.add('rfwp_removedMarginBottom');
  1087.            }
  1088.        }
  1089.        currentElement.style.clear = 'both';
  1090.    } else {
  1091.        usedElement = currentElement;
  1092.        if (position == 0) {
  1093.            posCurrentElement = usedElement;
  1094.        } else {
  1095.            posCurrentElement = usedElement.nextSibling;
  1096.        }
  1097.    }
  1098.    return posCurrentElement;
  1099. }
  1100.  
  1101. function checkAdsWidth(content_pointer, posCurrentElement, currentElement) {
  1102.    let widthChecker = document.querySelector('#widthChecker');
  1103.    let widthCheckerStyle = null;
  1104.    let content_pointerStyle = getComputedStyle(content_pointer);
  1105.    /* let getPositionForTempElement = null;
  1106.    let testImgDetected = false;
  1107.    let testImg;
  1108.    let testImageCompWidth;
  1109.    let testImgCou = 0
  1110.    let figureChilds;
  1111.    let figureComWidth;
  1112.    let fcCou = 0; */
  1113.    let content = content_pointer.parentElement;
  1114.  
  1115.    if (!widthChecker) {
  1116.        widthChecker = document.createElement("div");
  1117.        widthChecker.setAttribute('id','widthChecker');
  1118.        widthChecker.style.display = 'flex';
  1119.    }
  1120.  
  1121.    if (content) {
  1122.        posCurrentElement = initTargetToInsert(posCurrentElement, 'term', currentElement);
  1123.        currentElement.parentNode.insertBefore(widthChecker, posCurrentElement);
  1124.        widthCheckerStyle = getComputedStyle(widthChecker);
  1125.        /* testImg = currentElement.previousSibling;
  1126.        if (testImg) {
  1127.            while (!testImgDetected&&testImgCou<4) {
  1128.                if (testImg&&testImg.nodeName.toLowerCase() === 'figure') {
  1129.                    figureComWidth = getComputedStyle(testImg);
  1130.                    figureComWidth = parseInt(figureComWidth.width);
  1131.                    figureChilds = testImg.childNodes;
  1132.                    if (figureChilds&&figureChilds.length > 0) {
  1133.                        while (!testImgDetected&&figureChilds[fcCou]) {
  1134.                            if (figureChilds[fcCou] instanceof HTMLImageElement) {
  1135.                                testImgDetected = true;
  1136.                                testImageCompWidth = getComputedStyle(figureChilds[fcCou]);
  1137.                                testImageCompWidth = parseInt(testImageCompWidth.width);
  1138.                                console.log('img_f_w:'+figureComWidth+'; img_w:'+testImageCompWidth+';');
  1139.                            }
  1140.                            fcCou++;
  1141.                        }
  1142.                    }
  1143.                }
  1144.                if (testImg instanceof HTMLImageElement) {
  1145.                    testImgDetected = true;
  1146.                    testImageCompWidth = getComputedStyle(testImg);
  1147.                    testImageCompWidth = parseInt(testImageCompWidth.width);
  1148.                    console.log('img_w:'+testImageCompWidth+';');
  1149.                }
  1150.                if (!testImg.previousSibling) {
  1151.                    break;
  1152.                }
  1153.                testImg = testImg.previousSibling;
  1154.                testImgCou++;
  1155.            }
  1156.        }
  1157.        console.log('cp_w:'+parseInt(content_pointerStyle.width)+'; wc_w:'+parseInt(widthCheckerStyle.width)+';'); */
  1158.        if (parseInt(widthCheckerStyle.width) >= (parseInt(content_pointerStyle.width) - 50)) {
  1159.            return true;
  1160.        }
  1161.    }
  1162.    currentElement.parentNode.insertBefore(rb_tempElement, currentElement.nextSibling);
  1163.    rb_tempElement_check = true;
  1164.    return false;
  1165. }
  1166.  
  1167. /* function currentElementReceiver(revert, curSum, elList, currentElement) {
  1168.    let origCurrentElement = currentElement;
  1169.    let content_pointer = document.querySelector("#content_pointer_id");
  1170.    let sameElementAfterWidth = false;
  1171.    let testCou = 0;
  1172.    while (elList[curSum]&&sameElementAfterWidth==false&&testCou < 5) {
  1173.        currentElement = elList[curSum];
  1174.        try {
  1175.            sameElementAfterWidth=true;
  1176.            sameElementAfterWidth = checkAdsWidth(content_pointer, 0, currentElement);
  1177.        } catch (ex) {
  1178.            console.log(ex.message);
  1179.        }
  1180.        revert? curSum--: curSum++;
  1181.        testCou++;
  1182.    }
  1183.    return currentElement?currentElement:origCurrentElement;
  1184. } */
  1185.  
  1186. function currentElementReceiverSpec(revert, curSum, elList, currentElement) {
  1187.    let origCurrentElement = currentElement;
  1188.    let content_pointer = document.querySelector("#content_pointer_id"); /* orig */
  1189.    let sameElementAfterWidth = false;
  1190.    let testCou = 0;
  1191.    while (elList[curSum]&&sameElementAfterWidth==false&&testCou < 5) {
  1192.        currentElement = elList[curSum]['element'];
  1193.        try {
  1194.            sameElementAfterWidth=true;
  1195.            sameElementAfterWidth = checkAdsWidth(content_pointer, 0, currentElement);
  1196.        } catch (ex) {
  1197.            console.log(ex.message);
  1198.        }
  1199.        revert? curSum--: curSum++;
  1200.        testCou++;
  1201.    }
  1202.    return currentElement?currentElement:origCurrentElement;
  1203. }
  1204.  
  1205. function excIdClUnpacker() {
  1206.    let excArr = [],
  1207.        cou = 0,
  1208.        currExcStr = '',
  1209.        curExcFirst = '';
  1210.    excArr['id'] = [];
  1211.    excArr['class'] = [];
  1212.    excArr['tag'] = [];
  1213.    if (excIdClass&&excIdClass.length > 0) {
  1214.        while (excIdClass[cou]) {
  1215.            currExcStr = excIdClass[cou];
  1216.            if (currExcStr.length > 0) {
  1217.                curExcFirst = currExcStr.substring(0,1);
  1218.                switch (curExcFirst) {
  1219.                    case '#':
  1220.                        if (currExcStr.length > 1) {
  1221.                            currExcStr = currExcStr.substring(1);
  1222.                            excArr['id'].push(currExcStr);
  1223.                        }
  1224.                        break;
  1225.                    case '.':
  1226.                        if (currExcStr.length > 1) {
  1227.                            currExcStr = currExcStr.substring(1);
  1228.                            excArr['class'].push(currExcStr);
  1229.                        }
  1230.                        break;
  1231.                    default:
  1232.                        excArr['tag'].push(currExcStr);
  1233.                        break;
  1234.                }
  1235.                cou++;
  1236.            }
  1237.        }
  1238.    }
  1239.    return excArr;
  1240. }
  1241.  
  1242. function asyncBlocksInsertingFunction(blockSettingArray) {
  1243.    try {
  1244.        var content_pointer = document.querySelector("#content_pointer_id"); /* orig */
  1245.        var parent_with_content = content_pointer.parentElement;
  1246.        var lordOfElements = parent_with_content;
  1247.        parent_with_content = parent_with_content.parentElement;
  1248.        var newElement = document.createElement("div");
  1249.        var elementToAdd;
  1250.        var elementToAddStyle;
  1251.        var poolbackI = 0;
  1252.        var counter = 0;
  1253.        var currentElement;
  1254.        var repeatableCurrentElement;
  1255.        var repeatableSuccess;
  1256.        var reCou;
  1257.        var curFirstPlace;
  1258.        var curElementCount;
  1259.        var curElementStep;
  1260.        var backElement = 0;
  1261.        var sumResult = 0;
  1262.        var curSumResult = 0;
  1263.        var repeat = false;
  1264.        var currentElementChecker = false;
  1265.        let containerFor6th = [];
  1266.        let containerFor7th = [];
  1267.        var posCurrentElement;
  1268.        var block_number;
  1269.        let contentLength = content_pointer.getAttribute('data-content-length');
  1270.        let rejectedBlocks = content_pointer.getAttribute('data-rejected-blocks');
  1271.        if (rejectedBlocks&&rejectedBlocks.length > 0) {
  1272.            rejectedBlocks = rejectedBlocks.split(',');
  1273.        }
  1274.        let widthCheck = false;
  1275.        let currentElementList;
  1276.        var testElement1 = null;
  1277.        var termorarity_parent_with_content = parent_with_content;
  1278.        var termorarity_parent_with_content_length = 0;
  1279.        var headersList = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
  1280.        for (var hc1 = 0; hc1 < headersList.length; hc1++) {
  1281.            termorarity_parent_with_content_length += termorarity_parent_with_content.getElementsByTagName(headersList[hc1]).length;
  1282.        }
  1283.  
  1284.        let detailedElementList;
  1285.        let ExcStrCou = 1;
  1286.        let detailedQueryString;
  1287.        let usedElement;
  1288.        let tagList = [];
  1289.        let localSumResult;
  1290.        let binderName;
  1291.  
  1292.        var removeClearing;
  1293.        var repeatableBlockIdentifier = 0;
  1294.  
  1295.        var i;
  1296.  
  1297.        if (contentLength < 1) {
  1298.            contentLength = parent_with_content.innerText.length
  1299.        }
  1300.  
  1301.        rb_tempElement = document.querySelector('#rb_tempElement');
  1302.        if (!rb_tempElement) {
  1303.            rb_tempElement = document.createElement('span');
  1304.            rb_tempElement.setAttribute('id', 'rb_tempElement');
  1305.        }
  1306.  
  1307.        function getFromConstructions(currentElement) {
  1308.            if (currentElement.parentElement.tagName.toLowerCase() == "blockquote") {
  1309.                currentElement = currentElement.parentElement;
  1310.                /* initTargetToInsert(blockSettingArray, 'element', currentElement); */
  1311.                currentElement.parentNode.insertBefore(rb_tempElement, currentElement);
  1312.                rb_tempElement_check = true;
  1313.                sameElementAfterFromConstruction=false;
  1314.            } else if (["tr","td","th","thead","tbody","table"].includes(currentElement.parentElement.tagName.toLowerCase())) {
  1315.                currentElement = currentElement.parentElement;
  1316.                while (["tr","td","th","thead","tbody","table"].includes(currentElement.parentElement.tagName.toLowerCase())) {
  1317.                    currentElement = currentElement.parentElement;
  1318.                }
  1319.                currentElement.parentNode.insertBefore(rb_tempElement, currentElement);
  1320.                rb_tempElement_check = true;
  1321.                sameElementAfterFromConstruction=false;
  1322.            }
  1323.            return currentElement;
  1324.        }
  1325.  
  1326.        function directClassElementDetecting(blockSettingArray, directElement) {
  1327.            let findQuery = 0;
  1328.            let directClassElementResult = [];
  1329.  
  1330.            currentElement = document.querySelectorAll(directElement);
  1331.            if (currentElement.length > 0) {
  1332.                if (blockSettingArray[i]['elementPlace'] > 1) {
  1333.                    if (currentElement.length >= blockSettingArray[i]['elementPlace']) {
  1334.                        currentElement = currentElement[blockSettingArray[i]['elementPlace']-1];
  1335.                    } else if (currentElement.length < blockSettingArray[i]['elementPlace']) {
  1336.                        currentElement = currentElement[currentElement.length - 1];
  1337.                    } else {
  1338.                        findQuery = 1;
  1339.                    }
  1340.                } else if (blockSettingArray[i]['elementPlace'] < 0) {
  1341.                    if ((currentElement.length + blockSettingArray[i]['elementPlace'] + 1) > 0) {
  1342.                        currentElement = currentElement[currentElement.length + blockSettingArray[i]['elementPlace']];
  1343.                    } else {
  1344.                        findQuery = 1;
  1345.                    }
  1346.                } else {
  1347.                    findQuery = 1;
  1348.                }
  1349.            } else {
  1350.                findQuery = 1;
  1351.            }
  1352.  
  1353.            directClassElementResult['findQuery'] = findQuery;
  1354.            directClassElementResult['currentElement'] = currentElement;
  1355.  
  1356.            return directClassElementResult;
  1357.        }
  1358.  
  1359.        function placingToH1(usedElement, elementTagToFind) {
  1360.            let uselessLet;
  1361.            currentElement = usedElement.querySelectorAll(elementTagToFind);
  1362.  
  1363.            if (currentElement.length < 1) {
  1364.                if (usedElement.parentElement) {
  1365.                    uselessLet = placingToH1(usedElement.parentElement, elementTagToFind);
  1366.                }
  1367.            }
  1368.            return currentElement;
  1369.        }
  1370.  
  1371.        function elementsCleaning(excArr, elList, pwcLocal, gatherString) {
  1372.            let markedClass = 'rb_m_inc';
  1373.            let markedClassBad = 'rb_m_exc';
  1374.            let cou = 0;
  1375.            let cou1 = 0;
  1376.            let finalArr = [];
  1377.            let finalArrClear = [];
  1378.            let checkNearest;
  1379.            let outOfRangeCheck;
  1380.            let gatherRejected;
  1381.            let allower;
  1382.  
  1383.            try {
  1384.                while (elList[cou]) {
  1385.                    allower = true;
  1386.                    if (!elList[cou].classList.contains(markedClassBad)) {
  1387.                        if (excArr&&excArr.length > 0) {
  1388.                            cou1 = 0;
  1389.                            while (excArr[cou1]) {
  1390.                                checkNearest = elList[cou].parentElement.closest(excArr[cou1]);
  1391.                                if (checkNearest) {
  1392.                                    checkNearest.classList.add('currClosest');
  1393.                                    outOfRangeCheck = pwcLocal.querySelector('.currClosest');
  1394.                                    if (outOfRangeCheck) {
  1395.                                        allower = false;
  1396.                                        checkNearest.classList.add(markedClass);
  1397.                                        gatherRejected = checkNearest.querySelectorAll(gatherString);
  1398.                                        if (gatherRejected.length > 0) {
  1399.                                            for (let i1 = 0; i1 < gatherRejected.length; i1++) {
  1400.                                                gatherRejected[i1].classList.add(markedClassBad);
  1401.                                            }
  1402.                                        }
  1403.                                    }
  1404.                                    checkNearest.classList.remove('currClosest');
  1405.                                }
  1406.                                cou1++;
  1407.                            }
  1408.                        }
  1409.                        if (allower===true) {
  1410.                            elList[cou].classList.add(markedClass);
  1411.                            /* finalArr.push(elList[cou]); */
  1412.                        }
  1413.                    }
  1414.                    cou++;
  1415.                }
  1416.                finalArr = pwcLocal.querySelectorAll('.'+markedClass+':not('+markedClassBad+')');
  1417.                finalArrClear = pwcLocal.querySelectorAll('.'+markedClass+',.'+markedClassBad);
  1418.                if (finalArrClear&&finalArrClear.length > 0) {
  1419.                    for (let i1 = 0; i1 < finalArrClear.length; i1++) {
  1420.                        finalArrClear[i1].classList.remove(markedClass,markedClassBad);
  1421.                    }
  1422.                }
  1423.            } catch (er) {
  1424.                console.log(er.message);
  1425.            }
  1426.            return finalArr;
  1427.        }
  1428.  
  1429.        function cureentElementsGather(usedElement, loopLimit = 2, localPwc = parent_with_content) {
  1430.            let curElementSearchRepeater = true;
  1431.            let curElementSearchCounter = 0;
  1432.            let currentElementLoc = null;
  1433.            let ExcludedStringBegin = '';
  1434.            let ExcludedString = '';
  1435.            let ExcludedStringEnd = '';
  1436.            let tagListString = '';
  1437.            let tagListStringExc = '';
  1438.            let cou = 0;
  1439.            /* let excArr = excIdClUnpacker(); */
  1440.            let tagListCou = 0;
  1441.  
  1442.            if (usedElement=='h1') {
  1443.                currentElementLoc = placingToH1(localPwc, usedElement);
  1444.            } else {
  1445.                if (usedElement=='h2-4') {tagList = ['h2','h3','h3'];}
  1446.                else                     {tagList = [usedElement];   }
  1447.                while (tagList[tagListCou]) {
  1448.                    tagListString += ((cou++>0)?',':'')+tagList[tagListCou];
  1449.                    tagListStringExc += ':not('+tagList[tagListCou]+')';
  1450.                    tagListCou++;
  1451.                }
  1452.  
  1453.                ExcludedString = '';
  1454.                if (excIdClass&&excIdClass.length > 0) {
  1455.                    for (let i2 = 0; i2 < excIdClass.length; i2++) {
  1456.                        if (excIdClass[i2].length > 0) {
  1457.                            ExcludedString += (i2>0?',':'')+excIdClass[i2]+tagListStringExc;
  1458.                        }
  1459.                    }
  1460.                }
  1461.                detailedQueryString += tagListString+','+ExcludedString;
  1462.  
  1463.                /* console.log(detailedQueryString); */
  1464.                while (curElementSearchRepeater&&curElementSearchCounter < loopLimit) {
  1465.                    try {
  1466.                        currentElementLoc = localPwc.querySelectorAll(tagListString);
  1467.                    } catch (e1) {console.log(e1.message);}
  1468.                    if (!currentElementLoc) {
  1469.                        if (localPwc.parentElement) {
  1470.                            localPwc = localPwc.parentElement;
  1471.                        } else {
  1472.                            break;
  1473.                        }
  1474.                    } else {
  1475.                        currentElementLoc = elementsCleaning(excIdClass, currentElementLoc, localPwc, detailedQueryString);
  1476.                        curElementSearchRepeater = false;
  1477.                    }
  1478.                    curElementSearchCounter++;
  1479.                }
  1480.            }
  1481.            return currentElementLoc;
  1482.        }
  1483.  
  1484.        function currentElementReceiver(revert, localCurEl = currentElement) {
  1485.            let origCurEl = localCurEl;
  1486.            curSumResult = sumResult;
  1487.            detailedElementList = localCurEl;
  1488.            sameElementAfterWidth = false;
  1489.            let testCou = 0;
  1490.            while (detailedElementList[curSumResult]&&sameElementAfterWidth==false&&testCou < 8) {
  1491.                localCurEl = detailedElementList[curSumResult];
  1492.                try {
  1493.                    sameElementAfterWidth=true;
  1494.                    sameElementAfterWidth = checkAdsWidth(content_pointer, blockSettingArray[i]["elementPosition"], localCurEl);
  1495.                } catch (ex) {
  1496.                    console.log(ex.message);
  1497.                }
  1498.                revert? curSumResult--: curSumResult++;
  1499.                testCou++;
  1500.            }
  1501.            if (localCurEl) {
  1502.                currentElementChecker = true;
  1503.            }
  1504.            return localCurEl?localCurEl:origCurEl;
  1505.        }
  1506.        
  1507.        function endingActions(block_number) {
  1508.            usedBlockSettingArrayIds.push(block_number);
  1509.            blockSettingArray.splice(i--, 1);
  1510.            poolbackI = 1;
  1511.        }
  1512.  
  1513.        for (i = 0; i < blockSettingArray.length; i++) {
  1514.            currentElement = null;
  1515.            currentElementChecker = false;
  1516.            sameElementAfterWidth = false;
  1517.            sameElementAfterExcClassId = false;
  1518.            sameElementAfterFromConstruction = false;
  1519.            tagListCou = 0;
  1520.            poolbackI = 0;
  1521.            detailedQueryString = '';
  1522.            binderName = elementBinderNameGenerator();
  1523.  
  1524.            try {
  1525.                if (!blockSettingArray[i]["text"]
  1526.                    ||(blockSettingArray[i]["text"]&&blockSettingArray[i]["text"].length < 1)
  1527.                    ||(rejectedBlocks&&rejectedBlocks.includes(blockSettingArray[i]["id"]))
  1528.                    ||((blockSettingArray[i]["maxHeaders"] > 0)&&(blockSettingArray[i]["maxHeaders"] < parseInt(termorarity_parent_with_content_length)))
  1529.                    ||((blockSettingArray[i]["maxSymbols"] > 0)&&(blockSettingArray[i]["maxSymbols"] < parseInt(contentLength)))
  1530.                    ||(content_pointer.classList.contains("hard-content")&&blockSettingArray[i]["setting_type"]!=3)
  1531.                ) {
  1532.                    blockSettingArray.splice(i--, 1);
  1533.                    poolbackI = 1;
  1534.                    continue;
  1535.                }
  1536.  
  1537.                block_number = 0;
  1538.  
  1539.                elementToAdd = document.createElement("div");
  1540.                elementToAdd.classList.add("percentPointerClass");
  1541.                elementToAdd.classList.add("marked");
  1542.                if (blockSettingArray[i]["sc"]==1) {
  1543.                    elementToAdd.classList.add("scMark");
  1544.                }
  1545.                elementToAdd.innerHTML = blockSettingArray[i]["text"];
  1546.                elementToAdd.dataset.rbinder = binderName;
  1547.                block_number = elementToAdd.children[0].attributes['data-id'].value;
  1548.  
  1549.                if (blockDuplicate == 'no') {
  1550.                    if (usedBlockSettingArrayIds.length > 0) {
  1551.                        for (let i1 = 0; i1 < usedBlockSettingArrayIds.length; i1++) {
  1552.                            if (block_number==usedBlockSettingArrayIds[i1]) {
  1553.                                blockSettingArray.splice(i--, 1);
  1554.                                poolbackI = 1;
  1555.                                break;
  1556.                            }
  1557.                        }
  1558.                        if (poolbackI == 1) {
  1559.                            continue;
  1560.                        }
  1561.                    }
  1562.                }
  1563.  
  1564.                elementToAddStyle = createStyleElement(block_number, blockSettingArray[i]["elementCss"]);
  1565.  
  1566.                if (elementToAddStyle&&elementToAddStyle!='default') {
  1567.                    elementToAdd.style.textAlign = elementToAddStyle;
  1568.                }
  1569.  
  1570.                if ((blockSettingArray[i]["minHeaders"] > 0)&&(blockSettingArray[i]["minHeaders"] > termorarity_parent_with_content_length)) {continue;}
  1571.                if (blockSettingArray[i]["minSymbols"] > contentLength) {continue;}
  1572.  
  1573.                if (blockSettingArray[i]["setting_type"] == 1) {
  1574.                    currentElement = cureentElementsGather(blockSettingArray[i]["element"].toLowerCase());
  1575.                    if (currentElement) {
  1576.                        if (blockSettingArray[i]["elementPlace"] < 0) {
  1577.                            sumResult = currentElement.length + blockSettingArray[i]["elementPlace"];
  1578.                            if (sumResult >= 0 && sumResult < currentElement.length) {
  1579.                                currentElement = currentElementReceiver(true);
  1580.                            }
  1581.                        } else {
  1582.                            sumResult = blockSettingArray[i]["elementPlace"] - 1;
  1583.                            if (sumResult < currentElement.length) {
  1584.                                currentElement = currentElementReceiver(false);
  1585.                            }
  1586.                        }
  1587.                    }
  1588.                    if (currentElement != undefined && currentElement != null && currentElementChecker) {
  1589.                        posCurrentElement = initTargetToInsert(blockSettingArray[i]["elementPosition"], 'element', currentElement);
  1590.                        currentElement.parentNode.insertBefore(elementToAdd, posCurrentElement);
  1591.                        currentElement.classList.add('rbinder-'+binderName);
  1592.                        elementToAdd.classList.remove('coveredAd');
  1593.                        usedBlockSettingArrayIds.push(block_number);
  1594.                        blockSettingArray.splice(i--, 1);
  1595.                        poolbackI = 1;
  1596.                        rb_tempElement_check = false;
  1597.                    } else {
  1598.                        repeat = true;
  1599.                    }
  1600.                }
  1601.                else if (blockSettingArray[i]["setting_type"] == 2) {
  1602.                    if (blockDuplicate == 'no') {
  1603.                        blockSettingArray[i]["elementCount"] = 1;
  1604.                    }
  1605.                    repeatableCurrentElement = [];
  1606.                    reCou = 0;
  1607.                    curFirstPlace = blockSettingArray[i]["firstPlace"];
  1608.                    curElementCount = blockSettingArray[i]["elementCount"];
  1609.                    curElementStep = blockSettingArray[i]["elementStep"];
  1610.                    repeatableSuccess = false;
  1611.  
  1612.                    elementToAddStyle = createStyleElement(block_number, blockSettingArray[i]["elementCss"]);
  1613.  
  1614.                    repeatableCurrentElement = cureentElementsGather(blockSettingArray[i]["element"].toLowerCase());
  1615.                    if (repeatableCurrentElement) {
  1616.                        for (let i1 = 0; i1 < blockSettingArray[i]["elementCount"]; i1++) {
  1617.                            currentElementChecker = false;
  1618.                            let repElementToAdd = document.createElement("div");
  1619.                            repElementToAdd.classList.add("percentPointerClass");
  1620.                            repElementToAdd.classList.add("marked");
  1621.                            if (blockSettingArray[i]["sc"]==1) {
  1622.                                repElementToAdd.classList.add("scMark");
  1623.                            }
  1624.                            repElementToAdd.classList.add("repeatable-mark-"+repeatableBlockIdentifier);
  1625.                            repElementToAdd.innerHTML = blockSettingArray[i]["text"];
  1626.  
  1627.                            if (elementToAddStyle&&elementToAddStyle!='default') {
  1628.                                repElementToAdd.style.textAlign = elementToAddStyle;
  1629.                            }
  1630.  
  1631.                            sumResult = Math.round(parseInt(blockSettingArray[i]["firstPlace"]) + (i1*parseInt(blockSettingArray[i]["elementStep"])) - 1);
  1632.                            if (sumResult < repeatableCurrentElement.length) {
  1633.                                currentElement = currentElementReceiver(false, repeatableCurrentElement);
  1634.                            }
  1635.  
  1636.                            if (currentElement != undefined && currentElement != null && currentElementChecker) {
  1637.                                posCurrentElement = initTargetToInsert(blockSettingArray[i]["elementPosition"], 'element', currentElement);
  1638.                                currentElement.parentNode.insertBefore(repElementToAdd, posCurrentElement);
  1639.                                currentElement.classList.add('rbinder-'+binderName);
  1640.                                repElementToAdd.classList.remove('coveredAd');
  1641.                                curFirstPlace = sumResult + parseInt(blockSettingArray[i]["elementStep"]) + 1;
  1642.                                curElementCount--;
  1643.                                repeatableSuccess = true;
  1644.                            } else {
  1645.                                repeatableSuccess = false;
  1646.                                break;
  1647.                            }
  1648.                        }
  1649.                    }
  1650.                    if (repeatableSuccess==true) {
  1651.                        usedBlockSettingArrayIds.push(block_number);
  1652.                        blockSettingArray.splice(i--, 1);
  1653.                        poolbackI = 1;
  1654.                        repeatableBlockIdentifier++;
  1655.                    } else {
  1656.                        if (!blockSettingArray[i]["unsuccess"]) {
  1657.                            blockSettingArray[i]["unsuccess"] = 1;
  1658.                        } else {
  1659.                            blockSettingArray[i]["unsuccess"] = Math.round(blockSettingArray[i]["unsuccess"] + 1);
  1660.                        }
  1661.                        if (blockSettingArray[i]["unsuccess"] > 10) {
  1662.                            usedBlockSettingArrayIds.push(block_number);
  1663.                            blockSettingArray.splice(i--, 1);
  1664.                            poolbackI = 1;
  1665.                        } else {
  1666.                            blockSettingArray[i]["firstPlace"] = curFirstPlace;
  1667.                            blockSettingArray[i]["elementCount"] = curElementCount;
  1668.                            blockSettingArray[i]["elementStep"] = curElementStep;
  1669.                            repeat = true;
  1670.                        }
  1671.                    }
  1672.                }
  1673.                else if (blockSettingArray[i]["setting_type"] == 3) {
  1674.                    let elementTypeSymbol = '';
  1675.                    let elementSpaceSymbol = '';
  1676.                    let elementName = '';
  1677.                    let elementType = '';
  1678.                    let elementTag  = '';
  1679.                    let findQuery = 0;
  1680.                    let directClassResult = [];
  1681.                    let directElement = blockSettingArray[i]["directElement"].trim();
  1682.  
  1683.                    if (directElement.search('#') > -1) {
  1684.                        findQuery = 1;
  1685.                    } else if ((directElement.search('#') < 0)&&(directElement.search('.') > -1)) {
  1686.                        directClassResult = directClassElementDetecting(blockSettingArray, directElement);
  1687.                        findQuery = directClassResult['findQuery'];
  1688.                        currentElement = directClassResult['currentElement'];
  1689.                    }
  1690.                    if (findQuery == 1) {
  1691.                        currentElement = document.querySelector(directElement);
  1692.                    }
  1693.                    if (currentElement) {
  1694.                        currentElementChecker = true;
  1695.                    }
  1696.  
  1697.                    if (currentElement != undefined && currentElement != null && currentElementChecker) {
  1698.                        posCurrentElement = initTargetToInsert(blockSettingArray[i]["elementPosition"], 'element', currentElement);
  1699.                        currentElement.parentNode.insertBefore(elementToAdd, posCurrentElement);
  1700.                        elementToAdd.classList.remove('coveredAd');
  1701.                        currentElement.classList.add('rbinder-'+binderName);
  1702.                        usedBlockSettingArrayIds.push(block_number);
  1703.                        blockSettingArray.splice(i--, 1);
  1704.                        poolbackI = 1;
  1705.                    } else {
  1706.                        repeat = true;
  1707.                    }
  1708.                }
  1709.                else if (blockSettingArray[i]["setting_type"] == 4) {
  1710.                    document.querySelector("#content_pointer_id").parentElement.append(elementToAdd);
  1711.                    usedBlockSettingArrayIds.push(block_number);
  1712.                    blockSettingArray.splice(i--, 1);
  1713.                    poolbackI = 1;
  1714.                }
  1715.                else if (blockSettingArray[i]["setting_type"] == 5) {
  1716.                    let currentElementList = cureentElementsGather('p', 1, content_pointer.parentElement);
  1717.                    if (currentElementList&&currentElementList.length > 0) {
  1718.                        let pCount = currentElementList.length;
  1719.                        let elementNumber = Math.round(pCount/2);
  1720.                        if (pCount > 1) {
  1721.                            currentElement = currentElementList[elementNumber+1];
  1722.                        }
  1723.                        if (currentElement != undefined && currentElement != null) {
  1724.                            if (pCount > 1) {
  1725.                                currentElement.parentNode.insertBefore(elementToAdd, currentElement);
  1726.                            } else {
  1727.                                currentElement.parentNode.insertBefore(elementToAdd, currentElement.nextSibling);
  1728.                            }
  1729.                            elementToAdd.classList.remove('coveredAd');
  1730.                            currentElement.classList.add('rbinder-'+binderName);
  1731.                            usedBlockSettingArrayIds.push(block_number);
  1732.                            blockSettingArray.splice(i--, 1);
  1733.                            poolbackI = 1;
  1734.                        } else {
  1735.                            repeat = true;
  1736.                        }
  1737.                    } else {
  1738.                        repeat = true;
  1739.                    }
  1740.                }
  1741.                else if (blockSettingArray[i]["setting_type"] == 6) {
  1742.                    if (containerFor6th.length > 0) {
  1743.                        for (let j = 0; j < containerFor6th.length; j++) {
  1744.                            if (containerFor6th[j]["elementPlace"]<blockSettingArray[i]["elementPlace"]) {
  1745.                                /* continue; */
  1746.                                if (j == containerFor6th.length-1) {
  1747.                                    containerFor6th.push(blockSettingArray[i]);
  1748.                                    /* usedAdBlocksArray.push(checkIfBlockUsed); */
  1749.                                    usedBlockSettingArrayIds.push(block_number);
  1750.                                    blockSettingArray.splice(i--, 1);
  1751.                                    poolbackI = 1;
  1752.                                    break;
  1753.                                }
  1754.                            } else {
  1755.                                for (let k = containerFor6th.length-1; k > j-1; k--) {
  1756.                                    containerFor6th[k + 1] = containerFor6th[k];
  1757.                                }
  1758.                                containerFor6th[j] = blockSettingArray[i];
  1759.                                /* usedAdBlocksArray.push(checkIfBlockUsed); */
  1760.                                usedBlockSettingArrayIds.push(block_number);
  1761.                                blockSettingArray.splice(i--, 1);
  1762.                                poolbackI = 1;
  1763.                                break;
  1764.                            }
  1765.                        }
  1766.                    } else {
  1767.                        containerFor6th.push(blockSettingArray[i]);
  1768.                        usedBlockSettingArrayIds.push(block_number);
  1769.                        blockSettingArray.splice(i--, 1);
  1770.                        poolbackI = 1;
  1771.                    }
  1772.                /* vidpravutu v vidstiinuk dlya 6ho tipa */
  1773.                }
  1774.                else if (blockSettingArray[i]["setting_type"] == 7) {
  1775.                    if (containerFor7th.length > 0) {
  1776.                        for (let j = 0; j < containerFor7th.length; j++) {
  1777.                            if (containerFor7th[j]["elementPlace"]<blockSettingArray[i]["elementPlace"]) {
  1778.                                /* continue; */
  1779.                                if (j == containerFor7th.length-1) {
  1780.                                    containerFor7th.push(blockSettingArray[i]);
  1781.                                    usedBlockSettingArrayIds.push(block_number);
  1782.                                    blockSettingArray.splice(i--, 1);
  1783.                                    poolbackI = 1;
  1784.                                    break;
  1785.                                }
  1786.                            } else {
  1787.                                for (let k = containerFor7th.length-1; k > j-1; k--) {
  1788.                                    containerFor7th[k + 1] = containerFor7th[k];
  1789.                                }
  1790.                                containerFor7th[j] = blockSettingArray[i];
  1791.                                usedBlockSettingArrayIds.push(block_number);
  1792.                                blockSettingArray.splice(i--, 1);
  1793.                                poolbackI = 1;
  1794.                                break;
  1795.                            }
  1796.                        }
  1797.                    } else {
  1798.                        containerFor7th.push(blockSettingArray[i]);
  1799.                        usedBlockSettingArrayIds.push(block_number);
  1800.                        blockSettingArray.splice(i--, 1);
  1801.                        poolbackI = 1;
  1802.                    }
  1803.                /* vidpravutu v vidstiinuk dlya 7ho tipa */
  1804.                }
  1805.            } catch (e) {
  1806.                console.log(e.message);
  1807.            }
  1808.        }
  1809.  
  1810.        var array = textLengthGatherer(lordOfElements),
  1811.            tlArray = array.array,
  1812.            length = array.length;
  1813.  
  1814.        if (containerFor6th.length > 0) {
  1815.            percentInserter(lordOfElements, containerFor6th, tlArray, length);
  1816.        }
  1817.        if (containerFor7th.length > 0) {
  1818.            symbolInserter(lordOfElements, containerFor7th, tlArray);
  1819.        }
  1820.        shortcodesInsert();
  1821.        let stopper = 0;
  1822.  
  1823.        window.addEventListener('load', function () {
  1824.            if (repeat = true) {
  1825.                setTimeout(function () {
  1826.                    /* asyncBlocksInsertingFunction(blockSettingArray, contentLength) */
  1827.                    asyncBlocksInsertingFunction(blockSettingArray);
  1828.                }, 100);
  1829.            }
  1830.        });
  1831.    } catch (e) {
  1832.        console.log(e.message);
  1833.    }
  1834. }
  1835.  
  1836. function possibleTagsInCheckConfirmer(possibleTagsArray, possibleTagsInCheck) {
  1837.    if (possibleTagsArray.includes("LI")) {
  1838.        if (possibleTagsArray.includes("UL")) {
  1839.            possibleTagsInCheck.push("UL");
  1840.        }
  1841.        if (possibleTagsArray.includes("OL")) {
  1842.            possibleTagsInCheck.push("OL");
  1843.        }
  1844.    }
  1845.  
  1846.    return false;
  1847. }
  1848.  
  1849. function textLengthGatherer(lordOfElementsLoc) {
  1850.    var possibleTagsArray;
  1851.    if (typeof tagsListForTextLength!=="undefined") {
  1852.        possibleTagsArray = tagsListForTextLength;
  1853.    } else {
  1854.        possibleTagsArray = ["P", "H1", "H2", "H3", "H4", "H5", "H6", "DIV", "BLOCKQUOTE", "INDEX", "ARTICLE", "SECTION"];
  1855.    }
  1856.    let possibleTagsInCheck = ["DIV", "INDEX", "SECTION"];
  1857.  
  1858.    possibleTagsInCheckConfirmer(possibleTagsArray, possibleTagsInCheck);
  1859.    let excArr = excIdClUnpacker(),
  1860.        textLength = 0,
  1861.        tlArray = [];
  1862.  
  1863.    function textLengthGathererRec(lordOfElementsLoc) {
  1864.        let allowed;
  1865.        let cou1;
  1866.        let classesArray;
  1867.        let countSuccess = 0;
  1868.        try {
  1869.            for (let i = 0; i < lordOfElementsLoc.children.length; i++) {
  1870.                if (possibleTagsArray.includes(lordOfElementsLoc.children[i].tagName)
  1871.                    &&!lordOfElementsLoc.children[i].classList.contains("percentPointerClass")
  1872.                    &&lordOfElementsLoc.children[i].id!="toc_container"
  1873.                ) {
  1874.                    if (possibleTagsInCheck.includes(lordOfElementsLoc.children[i].tagName)
  1875.                        &&(lordOfElementsLoc.children[i].children.length > 0)
  1876.                    ) {
  1877.                        allowed = true;
  1878.                        if (lordOfElementsLoc.children[i].id&&excArr['id'].length > 0) {
  1879.                            cou1 = 0;
  1880.                            while (excArr['id'][cou1]) {
  1881.                                if (lordOfElementsLoc.children[i].id.toLowerCase()==excArr['id'][cou1].toLowerCase()) {
  1882.                                    allowed = false;
  1883.                                    break;
  1884.                                }
  1885.                                cou1++;
  1886.                            }
  1887.                        }
  1888.  
  1889.                        if (lordOfElementsLoc.children[i].classList.length > 0&&excArr['class'].length > 0) {
  1890.                            cou1 = 0;
  1891.                            while (excArr['class'][cou1]) {
  1892.                                classesArray = excArr['class'][cou1].split('.');
  1893.                                if (classesArray.every(className => lordOfElementsLoc.children[i].classList.contains(className))) {
  1894.                                    allowed = false;
  1895.                                    break;
  1896.                                }
  1897.                                cou1++;
  1898.                            }
  1899.                        }
  1900.  
  1901.                        if (excArr['tag'].length > 0) {
  1902.                            cou1 = 0;
  1903.                            while (excArr['tag'][cou1]) {
  1904.                                if (lordOfElementsLoc.children[i].tagName.toLowerCase()==excArr['tag'][cou1].toLowerCase()) {
  1905.                                    allowed = false;
  1906.                                    break;
  1907.                                }
  1908.                                cou1++;
  1909.                            }
  1910.                        }
  1911.  
  1912.                        if (allowed) {
  1913.                            if (textLengthGathererRec(lordOfElementsLoc.children[i], excArr, possibleTagsArray, possibleTagsInCheck)) {
  1914.                                countSuccess++;
  1915.                                continue;
  1916.                            }
  1917.                        }
  1918.                    }
  1919.                    textLength = textLength + lordOfElementsLoc.children[i].innerText.length;
  1920.                    tlArray.push({
  1921.                        tag: lordOfElementsLoc.children[i].tagName,
  1922.                        length: lordOfElementsLoc.children[i].innerText.length,
  1923.                        lengthSum: textLength,
  1924.                        element: lordOfElementsLoc.children[i]
  1925.                    });
  1926.                    countSuccess++;
  1927.                }
  1928.            }
  1929.        } catch (er) {
  1930.            console.log(er.message);
  1931.        }
  1932.        return countSuccess > 0;
  1933.    }
  1934.  
  1935.    textLengthGathererRec(lordOfElementsLoc);
  1936.  
  1937.    return {array: tlArray, length: textLength};
  1938. }
  1939.  
  1940. window.asyncFunctionLauncher = function() {
  1941.    if (window.jsInputerLaunch !== undefined
  1942.        &&[15, 10].includes(window.jsInputerLaunch)
  1943.        &&(typeof asyncBlocksInsertingFunction !== 'undefined' )
  1944.        &&(typeof asyncBlocksInsertingFunction === 'function')
  1945.        &&typeof endedSc!=='undefined'&&
  1946.        typeof endedCc!=='undefined'&&
  1947.        typeof usedAdBlocksArray!=='undefined'&&
  1948.        typeof usedBlockSettingArrayIds!=='undefined'&&
  1949.        typeof sameElementAfterWidth!=='undefined'&&
  1950.        typeof sameElementAfterExcClassId!=='undefined'&&
  1951.        typeof sameElementAfterFromConstruction!=='undefined'&&
  1952.        typeof rb_tempElement_check!=='undefined'&&
  1953.        typeof rb_tempElement!=='undefined'&&
  1954.        typeof window.jsInputerLaunch!=='undefined') {
  1955.        /* asyncBlocksInsertingFunction(blockSettingArray, contentLength); */
  1956.        asyncBlocksInsertingFunction(blockSettingArray);
  1957.        if (!endedSc) {
  1958.            shortcodesInsert();
  1959.        }
  1960.        if (!endedCc) {
  1961.            /* clearUnsuitableCache(0); */
  1962.        }
  1963.        /* blocksReposition();
  1964.        cachePlacing();
  1965.        symbolMarkersPlaced(); */
  1966.    } else {
  1967.        setTimeout(function () {
  1968.            asyncFunctionLauncher();
  1969.        }, 50);
  1970.    }
  1971. };
  1972. /* asyncFunctionLauncher(); */
  1973.  
  1974. function asyncInsertingsInsertingFunction(insertingsArray) {
  1975.    let currentElementForInserting = 0;
  1976.    let currentElementToMove = 0;
  1977.    let positionElement = 0;
  1978.    let position = 0;
  1979.    let insertToAdd = 0;
  1980.    let postId = 0;
  1981.    let repeatSearch = 0;
  1982.    if (insertingsArray&&insertingsArray.length > 0) {
  1983.        for (let i = 0; i < insertingsArray.length; i++) {
  1984.            if (!insertingsArray[i]['used']||(insertingsArray[i]['used']&&insertingsArray[i]['used']==0)) {
  1985.                positionElement = insertingsArray[i]['position_element'];
  1986.                position = insertingsArray[i]['position'];
  1987.                insertToAdd = insertingsArray[i]['content'];
  1988.                postId = insertingsArray[i]['postId'];
  1989.  
  1990.                currentElementForInserting = document.querySelector(positionElement);
  1991.  
  1992.                currentElementToMove = document.querySelector('.coveredInsertings[data-id="'+postId+'"]');
  1993.                if (currentElementForInserting) {
  1994.                    if (position==0) {
  1995.                        currentElementForInserting.parentNode.insertBefore(currentElementToMove, currentElementForInserting);
  1996.                        currentElementToMove.classList.remove('coveredInsertings');
  1997.                        insertingsArray[i]['used'] = 1;
  1998.                    } else {
  1999.                        currentElementForInserting.parentNode.insertBefore(currentElementToMove, currentElementForInserting.nextSibling);
  2000.                        currentElementToMove.classList.remove('coveredInsertings');
  2001.                        insertingsArray[i]['used'] = 1;
  2002.                    }
  2003.                } else {
  2004.                    repeatSearch = 1;
  2005.                }
  2006.            }
  2007.        }
  2008.    }
  2009.    if (repeatSearch == 1) {
  2010.        setTimeout(function () {
  2011.            asyncInsertingsInsertingFunction(insertingsArray);
  2012.        }, 100)
  2013.    }
  2014. }
  2015.  
  2016. function insertingsFunctionLaunch() {
  2017.    if (window.jsInsertingsLaunch !== undefined&&jsInsertingsLaunch == 25) {
  2018.        asyncInsertingsInsertingFunction(insertingsArray);
  2019.    } else {
  2020.        setTimeout(function () {
  2021.            insertingsFunctionLaunch();
  2022.        }, 100)
  2023.    }
  2024. }
  2025.  
  2026. function setLongCache() {
  2027.    let xhttp = new XMLHttpRequest();
  2028.    let sendData = 'action=setLongCache&type=longCatching';
  2029.    xhttp.onreadystatechange = function(redata) {
  2030.        if (this.readyState == 4 && this.status == 200) {
  2031.            console.log('long cache deployed');
  2032.        }
  2033.    };
  2034.    xhttp.open("POST", rb_ajaxurl, true);
  2035.    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  2036.    xhttp.send(sendData);
  2037. }
  2038.  
  2039. function cachePlacing(alert_type, errorInfo=null) {
  2040.    let adBlocks = document.querySelectorAll('.percentPointerClass .' + block_classes.join(', .percentPointerClass .'));
  2041.    let curAdBlock;
  2042.    let okStates = ['done','refresh-wait','no-block','fetched'];
  2043.    /* let adId = -1; */
  2044.    let blockAid = null;
  2045.    let blockId;
  2046.  
  2047.    if (typeof cachedBlocksArray !== 'undefined'&&cachedBlocksArray&&cachedBlocksArray.length > 0&&adBlocks&&adBlocks.length > 0) {
  2048.        for (let i = 0; i < adBlocks.length; i++) {
  2049.            blockAid = adBlocks[i]['dataset']['aid'];
  2050.  
  2051.            if (!blockAid) {
  2052.                blockId = adBlocks[i]['dataset']['id'];
  2053.                if (cachedBlocksArray[blockId]) {
  2054.                    jQuery(adBlocks[i]).html(cachedBlocksArray[blockId]);
  2055.                }
  2056.            }
  2057.        }
  2058.    }
  2059.  
  2060.    if (alert_type&&alert_type=='high') {
  2061.        setLongCache();
  2062.    }
  2063. }
  2064.  
  2065. function symbolInserter(lordOfElements, containerFor7th, tlArray) {
  2066.    try {
  2067.        var currentChildrenLength = 0;
  2068.        let previousBreak = 0;
  2069.        let needleLength;
  2070.        let currentSumLength;
  2071.        let elementToAdd;
  2072.        let elementToBind;
  2073.        let elementToAddStyle;
  2074.        let block_number;
  2075.        let binderName;
  2076.  
  2077.        if (!document.getElementById("markedSpan1")) {
  2078.            for (let i = 0; i < containerFor7th.length; i++) {
  2079.                previousBreak = 0;
  2080.                currentChildrenLength = 0;
  2081.                currentSumLength = 0;
  2082.                needleLength = Math.abs(containerFor7th[i]['elementPlace']);
  2083.                binderName = elementBinderNameGenerator();
  2084.  
  2085.                elementToAdd = document.createElement("div");
  2086.                elementToAdd.classList.add("percentPointerClass");
  2087.                elementToAdd.classList.add("marked");
  2088.                if (containerFor7th[i]["sc"]==1) {
  2089.                    elementToAdd.classList.add("scMark");
  2090.                }
  2091.                elementToAdd.dataset.rbinder = binderName;
  2092.                elementToAdd.innerHTML = containerFor7th[i]["text"];
  2093.                block_number = elementToAdd.children[0].attributes['data-id'].value;
  2094.                if (!elementToAdd) {
  2095.                    continue;
  2096.                }
  2097.  
  2098.                elementToAddStyle = createStyleElement(block_number, containerFor7th[i]["elementCss"]);
  2099.  
  2100.                if (elementToAddStyle&&elementToAddStyle!='default') {
  2101.                    elementToAdd.style.textAlign = elementToAddStyle;
  2102.                }
  2103.  
  2104.                if (containerFor7th[i]['elementPlace'] < 0) {
  2105.                    for (let j = tlArray.length-1; j > -1; j--) {
  2106.                        currentSumLength = currentSumLength + tlArray[j]['length'];
  2107.                        if (needleLength < currentSumLength) {
  2108.                            elementToBind = tlArray[j]['element'];
  2109.                            elementToBind = currentElementReceiverSpec(true, j, tlArray, elementToBind);
  2110.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind);
  2111.                            elementToBind.classList.add('rbinder-'+binderName);
  2112.                            elementToAdd.classList.remove('coveredAd');
  2113.                            break;
  2114.                        }
  2115.                    }
  2116.                } else if (containerFor7th[i]['elementPlace'] == 0) {
  2117.                    elementToBind = tlArray[0]['element'];
  2118.                    elementToBind.parentNode.insertBefore(elementToAdd, elementToBind);
  2119.                    elementToBind.classList.add('rbinder-'+binderName);
  2120.                    elementToAdd.classList.remove('coveredAd');
  2121.                } else {
  2122.                    for (let j = 0; j < tlArray.length; j++) {
  2123.                        currentSumLength = currentSumLength + tlArray[j]['length'];
  2124.                        if (needleLength < currentSumLength) {
  2125.                            elementToBind = tlArray[j]['element'];
  2126.                            elementToBind = currentElementReceiverSpec(false, j, tlArray, elementToBind);
  2127.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind.nextSibling);
  2128.                            elementToBind.classList.add('rbinder-'+binderName);
  2129.                            elementToAdd.classList.remove('coveredAd');
  2130.                            break;
  2131.                        }
  2132.                    }
  2133.                }
  2134.            }
  2135.  
  2136.            var spanMarker = document.createElement("span");
  2137.            spanMarker.setAttribute("id", "markedSpan1");
  2138.            lordOfElements.prepend(spanMarker);
  2139.        }
  2140.    } catch (e) {
  2141.        console.log(e);
  2142.    }
  2143. }
  2144.  
  2145. function percentInserter(lordOfElements, containerFor6th, tlArray, textLength) {
  2146.    try {
  2147.        var textNeedyLength = 0;
  2148.        let elementToAdd;
  2149.        var elementToBind;
  2150.        let elementToAddStyle;
  2151.        let block_number;
  2152.        var binderName;
  2153.        /* var checkIfBlockUsed = 0; */
  2154.  
  2155.        function insertByPercents(textLength) {
  2156.            let localMiddleValue = 0;
  2157.  
  2158.            for (let j = 0; j < containerFor6th.length; j++) {
  2159.                textNeedyLength = Math.round(textLength * (containerFor6th[j]["elementPlace"]/100));
  2160.                for (let i = 0; i < tlArray.length; i++) {
  2161.                    if (tlArray[i]['lengthSum'] >= textNeedyLength) {
  2162.                        binderName = elementBinderNameGenerator();
  2163.  
  2164.                        elementToAdd = document.createElement("div");
  2165.                        elementToAdd.classList.add("percentPointerClass");
  2166.                        elementToAdd.classList.add("marked");
  2167.                        if (containerFor6th[j]["sc"]==1) {
  2168.                            elementToAdd.classList.add("scMark");
  2169.                        }
  2170.                        elementToAdd.dataset.rbinder = binderName;
  2171.                        elementToAdd.innerHTML = containerFor6th[j]["text"];
  2172.                        if (!elementToAdd) {
  2173.                            break;
  2174.                        }
  2175.                        block_number = elementToAdd.children[0].attributes['data-id'].value;
  2176.                        elementToAddStyle = createStyleElement(block_number, containerFor6th[j]["elementCss"]);
  2177.                        if (elementToAddStyle&&elementToAddStyle!='default') {
  2178.                            elementToAdd.style.textAlign = elementToAddStyle;
  2179.                        }
  2180.  
  2181.                        localMiddleValue = tlArray[i]['lengthSum'] - Math.round(tlArray[i]['length']/2);
  2182.                        elementToBind = tlArray[i]['element'];
  2183.                        currentElementReceiverSpec(false, i, tlArray, elementToBind);
  2184.                        if (textNeedyLength < localMiddleValue) {
  2185.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind);
  2186.                        } else {
  2187.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind.nextSibling);
  2188.                        }
  2189.                        elementToBind.classList.add('rbinder-'+binderName);
  2190.                        elementToAdd.classList.remove('coveredAd');
  2191.                        break;
  2192.                    }
  2193.                }
  2194.            }
  2195.            return false;
  2196.        }
  2197.  
  2198.        function clearTlMarks() {
  2199.            let marksForDeleting = document.querySelectorAll('.textLengthMarker');
  2200.  
  2201.            if (marksForDeleting.length > 0) {
  2202.                for (let i = 0; i < marksForDeleting.length; i++) {
  2203.                    marksForDeleting[i].remove();
  2204.                }
  2205.            }
  2206.        }
  2207.  
  2208.        if (!document.getElementById("markedSpan")) {
  2209.            insertByPercents(textLength);
  2210.            clearTlMarks();
  2211.            var spanMarker = document.createElement("span");
  2212.            spanMarker.setAttribute("id", "markedSpan");
  2213.            lordOfElements.prepend(spanMarker);
  2214.        }
  2215.    } catch (e) {
  2216.        console.log(e.message);
  2217.    }
  2218. }
  2219.  
  2220. function saveContentBlock(contentContainer) {
  2221.    try {
  2222.        if (!gather_content) {
  2223.            console.log('content gather save function entered');
  2224.            let xhttp = new XMLHttpRequest();
  2225.            let sendData = 'action=RFWP_saveContentContainer&type=gatherContentBlock&data='+contentContainer;
  2226.            xhttp.onreadystatechange = function(redata) {
  2227.                if (this.readyState == 4 && this.status == 200) {
  2228.                    console.log('content gather succeed');
  2229.                } else {
  2230.                    console.log('content gather gone wrong');
  2231.                }
  2232.            };
  2233.            xhttp.open("POST", rb_ajaxurl, true);
  2234.            xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  2235.            xhttp.send(sendData);
  2236.        }
  2237.    } catch (er) {
  2238.        console.log('content gather error: '+er+';');
  2239.    }
  2240. }
  2241.  
  2242. window.gatherContentBlock = function() {
  2243.    let cPointer = null,
  2244.        cPointerParent = null,
  2245.        cPointerParentString = null,
  2246.        classWords = ['content','entry','post','wrap','description','taxonomy'],
  2247.        classChoosed = false;
  2248.  
  2249.    cPointer =  document.querySelector('#content_pointer_id');
  2250.    if (cPointer) {
  2251.        if (window.jsInputerLaunch!==15) {
  2252.            return false;
  2253.        }
  2254.        cPointerParent = cPointer.parentElement;
  2255.        if (cPointerParent) {
  2256.            if (cPointerParent.id) {
  2257.                cPointerParentString = '#'+cPointerParent.id;
  2258.            } else {
  2259.                if (cPointerParent.classList.length > 0) {
  2260.                    cPointerParentString = '.'+cPointerParent.classList[0];
  2261.                    for (let j = 0; j < classWords.length; j++) {
  2262.                        for (let i = 0; i < cPointerParent.classList.length; i++) {
  2263.                            if (cPointerParent.classList[i].includes(classWords[j])) {
  2264.                                cPointerParentString = '.'+cPointerParent.classList[i];
  2265.                                classChoosed = true;
  2266.                                break;
  2267.                            }
  2268.                        }
  2269.                        if (classChoosed===true) {
  2270.                            break;
  2271.                        }
  2272.                    }
  2273.                }
  2274.            }
  2275.            if (cPointerParentString) {
  2276.                console.log('content gather content block detected');
  2277.                /* cPointerParentString = JSON.stringify(cPointerParentString); */
  2278.                saveContentBlock(cPointerParentString);
  2279.            }
  2280.        }
  2281.    } else {
  2282.        console.log('content gather delayed');
  2283.        setTimeout(function () {
  2284.            gatherContentBlock();
  2285.        }, 500);
  2286.    }
  2287. };
  2288.  
  2289. window.removeMarginClass = function(blockObject) {
  2290.    if (blockObject && typeof window.jsInputerLaunch !== 'undefined' && [15, 10].includes(window.jsInputerLaunch)) {
  2291.        let binderName,
  2292.            neededElement,
  2293.            currentDirection,
  2294.            seekerIterationCount,
  2295.            currentSubling;
  2296.  
  2297.        binderName = blockObject.dataset.rbinder;
  2298.        if (binderName) {
  2299.            seekerIterationCount = 0;
  2300.            currentDirection = 'before';
  2301.            do {
  2302.                seekerIterationCount++;
  2303.                currentSubling = blockObject.nextElementSibling;
  2304.                if (currentSubling&&currentSubling.classList.contains('rbinder-'+binderName)) {
  2305.                    neededElement = currentSubling;
  2306.                }
  2307.            } while (currentSubling&&!neededElement&&seekerIterationCount < 5);
  2308.  
  2309.            if (!neededElement) {
  2310.                seekerIterationCount = 0;
  2311.                currentDirection = 'after';
  2312.                do {
  2313.                    seekerIterationCount++;
  2314.                    currentSubling = blockObject.previousElementSibling;
  2315.                    if (currentSubling&&currentSubling.classList.contains('rbinder-'+binderName)) {
  2316.                        neededElement = currentSubling;
  2317.                    }
  2318.                } while (currentSubling&&!neededElement&&seekerIterationCount < 5);
  2319.            }
  2320.            if (neededElement) {
  2321.                if (currentDirection === 'before') {
  2322.                    neededElement.classList.remove('rfwp_removedMarginTop');
  2323.                } else {
  2324.                    neededElement.classList.remove('rfwp_removedMarginBottom');
  2325.                }
  2326.            }
  2327.        }
  2328.    }
  2329.  
  2330.    return false;
  2331. };
  2332.  
  2333. function elementBinderNameGenerator() {
  2334.    let binderName = '',
  2335.        checkedElements,
  2336.        passed = false;
  2337.  
  2338.    while (passed===false) {
  2339.        binderName = Math.floor(Math.random()*100000);
  2340.        checkedElements = document.querySelectorAll('[data-rbinder="'+binderName+'"]');
  2341.        if (checkedElements.length < 1) {
  2342.            passed = true;
  2343.        }
  2344.    }
  2345.  
  2346.    return binderName;
  2347. }
  2348. </script>
  2349. <script>
  2350. if (typeof rb_ajaxurl==='undefined') {var rb_ajaxurl = 'https://rufus-download.ru/wp-admin/admin-ajax.php';}
  2351. if (typeof cache_devices==='undefined') {var cache_devices = true;}
  2352. var nReadyBlock = false;
  2353. var fetchedCounter = 0;
  2354.  
  2355. function sendReadyBlocksNew(blocks) {
  2356.    if (!cache_devices) {
  2357.        let xhttp = new XMLHttpRequest();
  2358.        let sendData = 'action=saveAdBlocks&type=blocksGethering&data='+blocks;
  2359.        xhttp.onreadystatechange = function(redata) {
  2360.            if (this.readyState == 4 && this.status == 200) {
  2361.                console.log('cache succeed');
  2362.            }
  2363.        };
  2364.        xhttp.open("POST", rb_ajaxurl, true);
  2365.        xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  2366.        xhttp.send(sendData);
  2367.    }
  2368. }
  2369.  
  2370. function gatherReadyBlocks() {
  2371.    if (block_classes && block_classes.length) {
  2372.        let blocks = {};
  2373.        let counter1 = 0;
  2374.        let gatheredBlocks = document.querySelectorAll('.' + block_classes.join(', .'));
  2375.        let checker = 0;
  2376.        let adContent = '';
  2377.        let curState = '';
  2378.        let thisData = [];
  2379.        let sumData = [];
  2380.        let newBlocks = '';
  2381.        let thisDataString = '';
  2382.  
  2383.        if (gatheredBlocks.length > 0) {
  2384.            blocks.data = {};
  2385.  
  2386.            for (let i = 0; i < gatheredBlocks.length; i++) {
  2387.                curState = gatheredBlocks[i]['dataset']["state"].toLowerCase();
  2388.                checker = 0;
  2389.                if (curState&&gatheredBlocks[i]['innerHTML'].length > 0&&gatheredBlocks[i]['dataset']['aid'] > 0&&curState!='no-block') {
  2390.                    if (gatheredBlocks[i]['innerHTML'].length > 0) {
  2391.                        checker = 1;
  2392.                    }
  2393.                    if (checker==1) {
  2394.                        blocks.data[counter1] = {id:gatheredBlocks[i]['dataset']['id'],code:gatheredBlocks[i]['dataset']['aid']};
  2395.                        counter1++;
  2396.                    }
  2397.                }
  2398.            }
  2399.  
  2400.            blocks = JSON.stringify(blocks);
  2401.            sendReadyBlocksNew(blocks);
  2402.        }
  2403.    } else nReadyBlock = true;
  2404. }
  2405.  
  2406. function timeBeforeGathering() {
  2407.    if (block_classes && block_classes.length > 0)
  2408.    {
  2409.        let gatheredBlocks = document.querySelectorAll('.' + block_classes.join(', .'));
  2410.        let okStates = ['done','refresh-wait','no-block','fetched'];
  2411.        let curState = '';
  2412.  
  2413.        for (let i = 0; i < gatheredBlocks.length; i++) {
  2414.            if (!gatheredBlocks[i]['dataset']["state"]) {
  2415.                nReadyBlock = true;
  2416.                break;
  2417.            } else {
  2418.                curState = gatheredBlocks[i]['dataset']["state"].toLowerCase();
  2419.                if (!okStates.includes(curState)) {
  2420.                    nReadyBlock = true;
  2421.                    break;
  2422.                } else if (curState=='fetched'&&fetchedCounter < 3) {
  2423.                    fetchedCounter++;
  2424.                    nReadyBlock = true;
  2425.                    break;
  2426.                }
  2427.            }
  2428.        }
  2429.    }
  2430.    else nReadyBlock = true;
  2431.  
  2432.    if (nReadyBlock == true) {
  2433.        nReadyBlock = false;
  2434.        setTimeout(timeBeforeGathering,2000);
  2435.    } else {
  2436.        gatherReadyBlocks();
  2437.    }
  2438. }
  2439.  
  2440. function launchTimeBeforeGathering() {
  2441.    if (document.readyState === "complete" || (document.readyState !== "loading" && !document.documentElement.doScroll)) {
  2442.        timeBeforeGathering();
  2443.    } else {
  2444.        setTimeout(launchTimeBeforeGathering,100);
  2445.    }
  2446. }
  2447. launchTimeBeforeGathering();
  2448.  
  2449. </script>
  2450. <script type='text/javascript' src='/wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.13.9' id='regenerator-runtime-js'></script>
  2451. <script type='text/javascript' src='/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0' id='wp-polyfill-js'></script>
  2452. <script type='text/javascript' id='contact-form-7-js-extra'>
  2453. /* <![CDATA[ */
  2454. var wpcf7 = {"api":{"root":"https:\/\/rufus-download.ru\/wp-json\/","namespace":"contact-form-7\/v1"},"cached":"1"};
  2455. /* ]]> */
  2456. </script>
  2457. <script type='text/javascript' src='/wp-content/plugins/contact-form-7/includes/js/index.js?ver=5.5.6' id='contact-form-7-js'></script>
  2458. <script type='text/javascript' src='/wp-content/themes/root/js/scripts.js?ver=2.1.2' id='root-scripts-js'></script>
  2459. <script type='text/javascript' src='/wp-includes/js/comment-reply.min.js?ver=5.9.7' id='comment-reply-js'></script>
  2460. <script type='text/javascript' id='jquery-lazyloadxt-js-extra'>
  2461. /* <![CDATA[ */
  2462. var a3_lazyload_params = {"apply_images":"1","apply_videos":"1"};
  2463. /* ]]> */
  2464. </script>
  2465. <script type='text/javascript' src='/wp-content/plugins/a3-lazy-load/assets/js/jquery.lazyloadxt.extra.min.js?ver=2.4.9' id='jquery-lazyloadxt-js'></script>
  2466. <script type='text/javascript' src='/wp-content/plugins/a3-lazy-load/assets/js/jquery.lazyloadxt.srcset.min.js?ver=2.4.9' id='jquery-lazyloadxt-srcset-js'></script>
  2467. <script type='text/javascript' id='jquery-lazyloadxt-extend-js-extra'>
  2468. /* <![CDATA[ */
  2469. var a3_lazyload_extend_params = {"edgeY":"0","horizontal_container_classnames":""};
  2470. /* ]]> */
  2471. </script>
  2472. <script type='text/javascript' src='/wp-content/plugins/a3-lazy-load/assets/js/jquery.lazyloadxt.extend.js?ver=2.4.9' id='jquery-lazyloadxt-extend-js'></script>
  2473.  
  2474. <!-- Yandex.Metrika counter -->
  2475. <script type="text/javascript" >
  2476.   (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
  2477.   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)})
  2478.   (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
  2479.  
  2480.   ym(66224491, "init", {
  2481.        clickmap:true,
  2482.        trackLinks:true,
  2483.        accurateTrackBounce:true
  2484.   });
  2485. </script>
  2486. <noscript><div><img src="https://mc.yandex.ru/watch/66224491" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
  2487. <!-- /Yandex.Metrika counter -->
  2488.  
  2489.  
  2490.  
  2491. <!-- rsya_fs_begin -->
  2492. <!-- Yandex.RTB R-A-2710345-1 -->
  2493. <script>window.yaContextCb.push(()=>{
  2494. Ya.Context.AdvManager.render({
  2495. "blockId": "R-A-2710345-1",
  2496. "type": "fullscreen",
  2497. "platform": "touch"
  2498. })
  2499. })
  2500. </script>
  2501. <!-- rsya_fs_end -->
  2502. <!-- rsya_floor_begin -->
  2503. <!-- Yandex.RTB R-A-2710345-2 -->
  2504. <script>window.yaContextCb.push(()=>{
  2505. Ya.Context.AdvManager.render({
  2506. "blockId": "R-A-2710345-2",
  2507. "type": "floorAd"
  2508. })
  2509. })
  2510. </script>
  2511. <!-- rsya_floor_end -->
  2512.  
  2513. </body>
  2514. </html>
  2515.  
  2516. <!-- Dynamic page generated in 0.194 seconds. -->
  2517. <!-- Cached page generated by WP-Super-Cache on 2023-06-10 08:11:28 -->
  2518.  
  2519. <!-- super cache -->
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda