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://multisim.su

  1. <!doctype html>
  2. <html lang="ru-RU">
  3. <head>
  4.    <meta charset="UTF-8">
  5.    <meta name="viewport" content="width=device-width, initial-scale=1">
  6.  
  7.    <script>
  8.    var block_classes = ["content_rb", "cnt32_rl_bg_str", "rl_cnt_bg"];
  9.  
  10.    function addAttrItem(className) {
  11.        if (document.querySelector("." + className) && !block_classes.includes(className)) {
  12.            block_classes.push(className);
  13.        }
  14.    }
  15. </script><script>
  16.                function onErrorPlacing() {
  17.                    if (typeof cachePlacing !== 'undefined' && typeof cachePlacing === 'function' && typeof window.jsInputerLaunch !== 'undefined' && [15, 10].includes(window.jsInputerLaunch)) {
  18.                        let errorInfo = [];
  19.                        cachePlacing('low',errorInfo);
  20.                    } else {
  21.                        setTimeout(function () {
  22.                            onErrorPlacing();
  23.                        }, 100)
  24.                    }
  25.                }
  26.                var xhr = new XMLHttpRequest();
  27.                xhr.open('GET',"//newrotatormarch23.bid/1onrw.json",true);
  28.                xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  29.                xhr.onreadystatechange = function() {
  30.                    if (xhr.status != 200) {
  31.                        if (xhr.statusText != 'abort') {
  32.                            onErrorPlacing();
  33.                        }
  34.                    }
  35.                };
  36.                xhr.send();
  37.            </script><script type="text/javascript" src="//multisim.su/wp-content/1onrw.js?ver=1.0.4" id="1onrw-js" async=""></script><script>console.log('ad: header error')</script><script>
  38.                function onErrorPlacing() {
  39.                    if (typeof cachePlacing !== 'undefined' && typeof cachePlacing === 'function' && typeof window.jsInputerLaunch !== 'undefined' && [15, 10].includes(window.jsInputerLaunch)) {
  40.                        let errorInfo = [];
  41.                        cachePlacing('low',errorInfo);
  42.                    } else {
  43.                        setTimeout(function () {
  44.                            onErrorPlacing();
  45.                        }, 100)
  46.                    }
  47.                }
  48.                var xhr = new XMLHttpRequest();
  49.                xhr.open('GET',"//newrotatormarch23.bid/1onrw.min.js",true);
  50.                xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  51.                xhr.onreadystatechange = function() {
  52.                    if (xhr.status != 200) {
  53.                        if (xhr.statusText != 'abort') {
  54.                            onErrorPlacing();
  55.                        }
  56.                    }
  57.                };
  58.                xhr.send();
  59.            </script><script type='text/javascript'> rbConfig={start:performance.now(),rbDomain:'newrotatormarch23.bid',rotator:'1onrw'};token=localStorage.getItem('1onrw')||(1e6+'').replace(/[018]/g, c => (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16));rsdfhse=document.createElement('script'); rsdfhse.setAttribute('src','//newrotatormarch23.bid/1onrw.min.js?'+token);rsdfhse.setAttribute('async','async');rsdfhse.setAttribute('type','text/javascript');document.head.appendChild(rsdfhse); localStorage.setItem('1onrw', token);</script><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
  60.  
  61. <title>Multisim скачать на русском бесплатно, как пользоваться программой</title>
  62. <meta name="description" content="Multisim – приложение для создания и тестирования электрических цепей в схемотехнике. Оно включает сотни виртуальных электронных компонентов и" />
  63. <link rel="canonical" href="https://multisim.su/" />
  64. <meta property="og:locale" content="ru_RU" />
  65. <meta property="og:type" content="website" />
  66. <meta property="og:title" content="Multisim скачать на русском бесплатно, как пользоваться программой" />
  67. <meta property="og:description" content="Multisim – приложение для создания и тестирования электрических цепей в схемотехнике. Оно включает сотни виртуальных электронных компонентов и" />
  68. <meta property="og:url" content="https://multisim.su/" />
  69. <meta property="og:site_name" content="Multisim" />
  70. <meta property="article:modified_time" content="2023-08-31T06:31:39+00:00" />
  71. <meta property="og:image" content="https://multisim.su/wp-content/uploads/2023/03/111-730x411.jpg" />
  72. <meta name="twitter:card" content="summary_large_image" />
  73. <meta name="twitter:label1" content="Примерное время для чтения" />
  74. <meta name="twitter:data1" content="11 минут" />
  75.  
  76.  
  77. <link rel='dns-prefetch' href='//fonts.googleapis.com' />
  78. <style id='wp-block-library-theme-inline-css' type='text/css'>
  79. .wp-block-audio figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio figcaption{color:#ffffffa6}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed figcaption{color:#ffffffa6}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:#ffffffa6}.wp-block-image figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-image figcaption{color:#ffffffa6}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-bottom:4px solid;border-top:4px solid;color:currentColor;margin-bottom:1.75em}.wp-block-pullquote cite,.wp-block-pullquote footer,.wp-block-pullquote__citation{color:currentColor;font-size:.8125em;font-style:normal;text-transform:uppercase}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}.wp-block-quote.has-text-align-right{border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote.has-text-align-center{border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:0 0 1em}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:#ffffffa6}.wp-block-video figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video figcaption{color:#ffffffa6}.wp-block-video{margin:0 0 1em}.wp-block-template-part.has-background{margin-bottom:0;margin-top:0;padding:1.25em 2.375em}
  80. </style>
  81. <style id='classic-theme-styles-inline-css' type='text/css'>
  82. /*! This file is auto-generated */
  83. .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
  84. </style>
  85. <style id='global-styles-inline-css' type='text/css'>
  86. 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--font-size--small: 19.5px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36.5px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--normal: 22px;--wp--preset--font-size--huge: 49.5px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}body .is-layout-grid{display: grid;}body .is-layout-grid > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.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;}
  87. .wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;}
  88. :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
  89. :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
  90. .wp-block-pullquote{font-size: 1.5em;line-height: 1.6;}
  91. </style>
  92. <link rel='stylesheet' id='google-fonts-css' href='https://fonts.googleapis.com/css?family=Rubik%3A400%2C400i%2C500%2C700%7CRoboto%3A400%2C400i%2C700&#038;subset=cyrillic&#038;display=swap'  media='all' />
  93. <link rel='stylesheet' id='yelly-style-css' href='https://multisim.su/wp-content/themes/samfirm/assets/css/style.min.css'  media='all' />
  94. <link rel='stylesheet' id='jquery-lazyloadxt-spinner-css-css' href='//multisim.su/wp-content/plugins/a3-lazy-load/assets/css/jquery.lazyloadxt.spinner.css'  media='all' />
  95. <link rel='stylesheet' id='style-child-css' href='https://multisim.su/wp-content/themes/samfirm-child/style.css'  media='all' />
  96. <script type="text/javascript" src="https://multisim.su/wp-includes/js/jquery/jquery.min.js" id="jquery-core-js"></script>
  97. <script type="text/javascript" src="https://multisim.su/wp-includes/js/jquery/jquery-migrate.min.js" id="jquery-migrate-js"></script>
  98. <style>.pseudo-clearfy-link { color: #008acf; cursor: pointer;}.pseudo-clearfy-link:hover { text-decoration: none;}</style><link rel="preload" href="https://multisim.su/wp-content/themes/samfirm/assets/fonts/icomoon.ttf" as="font" crossorigin>
  99.    <style>.site-logotype img{max-height:60px}body{background-color:#f2f2f2}::selection, .card-slider__category, .card-slider-container .swiper-pagination-bullet-active, .post-card--grid .post-card__thumbnail:before, .post-card:not(.post-card--small) .post-card__thumbnail a:before, .post-card:not(.post-card--small) .post-card__category,  .post-box--high .post-box__category span, .post-box--wide .post-box__category span, .page-separator, .pagination .nav-links .page-numbers:not(.dots):not(.current):before, .btn, .btn-primary:hover, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle, .comment-respond .form-submit input, .widget-area .widget-header, .page-links__item, .pagination .nav-links .page-numbers{background-color:#3f4487}.entry-image--big .entry-image__body .post-card__category a, .entry-category a, .home-text ul:not([class])>li:before, .entry-content ul:not([class])>li:before, .taxonomy-description ul:not([class])>li:before, .widget_categories ul.menu li a:before, .widget_categories ul.menu li span:before, .widget_categories>ul li a:before, .widget_categories>ul li span:before, .widget_nav_menu ul.menu li a:before, .widget_nav_menu ul.menu li span:before, .widget_nav_menu>ul li a:before, .widget_nav_menu>ul li span:before, .page-links .page-numbers:not(.dots):not(.current):before, .page-links .post-page-numbers:not(.dots):not(.current):before, .pagination .nav-links .page-numbers:not(.dots):not(.current):before, .pagination .nav-links .post-page-numbers:not(.dots):not(.current):before, .entry-image--full .entry-image__body .post-card__category a, .entry-image--fullscreen .entry-image__body .post-card__category a, .entry-image--wide .entry-image__body .post-card__category a{background-color:#3f4487}.comment-respond input:focus, select:focus, textarea:focus, .post-card--grid.post-card--thumbnail-no, .post-card--standard:after, .post-card--related.post-card--thumbnail-no:hover, .spoiler-box, .btn-primary, .btn-primary:hover, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle, .inp:focus, .entry-tag:focus, .entry-tag:hover, .search-screen .search-form .search-field:focus, .entry-content blockquote,
  100.        .input:focus, input[type=color]:focus, input[type=date]:focus, input[type=datetime-local]:focus, input[type=datetime]:focus, input[type=email]:focus, input[type=month]:focus, input[type=number]:focus, input[type=password]:focus, input[type=range]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=time]:focus, input[type=url]:focus, input[type=week]:focus, select:focus, textarea:focus{border-color:#3f4487 !important}.post-card--grid a:hover, .post-card--small .post-card__category, .post-card__author:before, .post-card__comments:before, .post-card__date:before, .post-card__like:before, .post-card__views:before, .entry-author:before, .entry-date:before, .entry-time:before, .entry-views:before, .entry-content ol:not([class])>li:before, .text-content ol:not([class])>li:before, .taxonomy-description ol:not([class])>li:before, .entry-content blockquote:before, .spoiler-box__title:after, .search-icon:hover:before, .search-form .search-submit:hover:before, .star-rating-item.hover,
  101.        .comment-list .bypostauthor>.comment-body .comment-author:after,
  102.        .search-screen .search-form .search-submit:before, .widget_categories ul li:before,
  103.        .star-rating--score-1:not(.hover) .star-rating-item:nth-child(1),
  104.        .star-rating--score-2:not(.hover) .star-rating-item:nth-child(1), .star-rating--score-2:not(.hover) .star-rating-item:nth-child(2),
  105.        .star-rating--score-3:not(.hover) .star-rating-item:nth-child(1), .star-rating--score-3:not(.hover) .star-rating-item:nth-child(2), .star-rating--score-3:not(.hover) .star-rating-item:nth-child(3),
  106.        .star-rating--score-4:not(.hover) .star-rating-item:nth-child(1), .star-rating--score-4:not(.hover) .star-rating-item:nth-child(2), .star-rating--score-4:not(.hover) .star-rating-item:nth-child(3), .star-rating--score-4:not(.hover) .star-rating-item:nth-child(4),
  107.        .star-rating--score-5:not(.hover) .star-rating-item:nth-child(1), .star-rating--score-5:not(.hover) .star-rating-item:nth-child(2), .star-rating--score-5:not(.hover) .star-rating-item:nth-child(3), .star-rating--score-5:not(.hover) .star-rating-item:nth-child(4), .star-rating--score-5:not(.hover) .star-rating-item:nth-child(5){color:#3f4487}.entry-content a, .entry-content a:visited, .spanlink, .comment-reply-link, .pseudo-link, .widget_calendar a, .widget_recent_comments a, .child-categories ul li a{color:#515f96}.child-categories ul li a{border-color:#515f96}a:hover, a:focus, a:active, .spanlink:hover, .top-menu ul li>span:hover, .main-navigation ul li a:hover, .main-navigation ul li span:hover, .footer-navigation ul li a:hover, .footer-navigation ul li span:hover, .comment-reply-link:hover, .pseudo-link:hover, .child-categories ul li a:hover{color:#0002aa}.top-menu>ul>li>a:before, .top-menu>ul>li>span:before{background:#0002aa}.child-categories ul li a:hover, .post-box--no-thumb a:hover{border-color:#0002aa}.post-box--card:hover{box-shadow: inset 0 0 0 1px #0002aa}.post-box--card:hover{-webkit-box-shadow: inset 0 0 0 1px #0002aa}@media (min-width: 768px){body{background-attachment: scroll}}.site-header{background-color:#282887}@media (min-width: 992px){.site-header ul li .sub-menu{background-color:#282887}}.site-footer{background-color:#282887}body{font-family:"Rubik" ,"Helvetica Neue", Helvetica, Arial, sans-serif;font-size:17px;}</style>
  108. <link rel="icon" href="https://multisim.su/wp-content/uploads/2023/03/cropped-imgonline-com-ua-resize-biwbuul8dhn6rqf-32x32.png" sizes="32x32" />
  109. <link rel="icon" href="https://multisim.su/wp-content/uploads/2023/03/cropped-imgonline-com-ua-resize-biwbuul8dhn6rqf-192x192.png" sizes="192x192" />
  110. <link rel="apple-touch-icon" href="https://multisim.su/wp-content/uploads/2023/03/cropped-imgonline-com-ua-resize-biwbuul8dhn6rqf-180x180.png" />
  111. <meta name="msapplication-TileImage" content="https://multisim.su/wp-content/uploads/2023/03/cropped-imgonline-com-ua-resize-biwbuul8dhn6rqf-270x270.png" />
  112.  
  113.  
  114. <style>
  115.    .coveredAd {
  116.        position: relative;
  117.        left: -5000px;
  118.        max-height: 1px;
  119.        overflow: hidden;
  120.    }
  121.    #content_pointer_id {
  122.        display: block !important;
  123.        width: 100% !important;
  124.    }
  125.    .rfwp_removedMarginTop {
  126.        margin-top: 0 !important;
  127.    }
  128.    .rfwp_removedMarginBottom {
  129.        margin-bottom: 0 !important;
  130.    }
  131. </style>
  132.            <script>
  133.            var cou1 = 0;
  134.            if (typeof blockSettingArray==="undefined") {
  135.                var blockSettingArray = [];
  136.            } else {
  137.                if (Array.isArray(blockSettingArray)) {
  138.                    cou1 = blockSettingArray.length;
  139.                } else {
  140.                    var blockSettingArray = [];
  141.                }
  142.            }
  143.            if (typeof excIdClass==="undefined") {
  144.                var excIdClass = [".percentPointerClass",".content_rb",".cnt32_rl_bg_str",".rl_cnt_bg",".addedInserting","#toc_container","table","blockquote"];
  145.            }
  146.            if (typeof blockDuplicate==="undefined") {
  147.                var blockDuplicate = "no";
  148.            }                        
  149.            if (typeof obligatoryMargin==="undefined") {
  150.                var obligatoryMargin = 1;
  151.            }
  152.            
  153.            if (typeof tagsListForTextLength==="undefined") {
  154.                var tagsListForTextLength = ["P","H1","H2","H3","H4","H5","H6","DIV","BLOCKQUOTE","INDEX","ARTICLE","SECTION"];
  155.            }                        
  156.            blockSettingArray[cou1] = [];
  157. blockSettingArray[cou1]["minSymbols"] = 0;
  158. blockSettingArray[cou1]["maxSymbols"] = 0;
  159. blockSettingArray[cou1]["minHeaders"] = 0;
  160. blockSettingArray[cou1]["maxHeaders"] = 0;
  161. blockSettingArray[cou1]["id"] = '4';
  162. blockSettingArray[cou1]["sc"] = '0';
  163. blockSettingArray[cou1]["text"] = '<div class=\"rl_cnt_bg\" data-id=\"345480\"></div>';
  164. blockSettingArray[cou1]["setting_type"] = 1;
  165. blockSettingArray[cou1]["elementCss"] = "default";
  166. blockSettingArray[cou1]["element"] = "p";
  167. blockSettingArray[cou1]["elementPosition"] = 1;
  168. blockSettingArray[cou1]["elementPlace"] = 1;
  169. cou1++;
  170. console.log("bsa-l: "+blockSettingArray.length);
  171. </script><script>
  172.    if (typeof window.jsInputerLaunch === 'undefined') {
  173.        window.jsInputerLaunch = -1;
  174.    }
  175.    if (typeof contentSearchCount === 'undefined') {
  176.        var contentSearchCount = 0;
  177.    }
  178.    if (typeof launchAsyncFunctionLauncher === "undefined") {
  179.        function launchAsyncFunctionLauncher() {
  180.            if (typeof asyncFunctionLauncher !== "undefined" && typeof asyncFunctionLauncher === "function") {
  181.                asyncFunctionLauncher();
  182.            } else {
  183.                setTimeout(function () {
  184.                    launchAsyncFunctionLauncher();
  185.                }, 100)
  186.            }
  187.        }
  188.    }
  189.    if (typeof launchGatherContentBlock === "undefined") {
  190.        function launchGatherContentBlock() {
  191.            if (typeof gatherContentBlock !== "undefined" && typeof gatherContentBlock === "function") {
  192.                gatherContentBlock();
  193.            } else {
  194.                setTimeout(function () {
  195.                    launchGatherContentBlock();
  196.                }, 100)
  197.            }
  198.        }
  199.    }
  200.    function contentMonitoring() {
  201.        if (typeof window.jsInputerLaunch==='undefined'||(typeof window.jsInputerLaunch!=='undefined'&&window.jsInputerLaunch==-1)) {
  202.            let possibleClasses = ['.taxonomy-description','.entry-content','.post-wrap','.post-body','#blog-entries','.content','.archive-posts__item-text','.single-company_wrapper','.posts-container','.content-area','.post-listing','.td-category-description','.jeg_posts_wrap'];
  203.            let deniedClasses = ['.percentPointerClass','.addedInserting','#toc_container'];
  204.            let deniedString = "";
  205.            let contentSelector = '';
  206.            let contentCheck = null;
  207.            if (contentSelector) {
  208.                contentCheck = document.querySelector(contentSelector);
  209.            }
  210.  
  211.            if (block_classes && block_classes.length > 0) {
  212.                for (var i = 0; i < block_classes.length; i++) {
  213.                    if (block_classes[i]) {
  214.                        deniedClasses.push('.' + block_classes[i]);
  215.                    }
  216.                }
  217.            }
  218.  
  219.            if (deniedClasses&&deniedClasses.length > 0) {
  220.                for (let i = 0; i < deniedClasses.length; i++) {
  221.                    deniedString += ":not("+deniedClasses[i]+")";
  222.                }
  223.            }
  224.            
  225.            if (!contentCheck) {
  226.                for (let i = 0; i < possibleClasses.length; i++) {
  227.                    contentCheck = document.querySelector(possibleClasses[i]+deniedString);
  228.                    if (contentCheck) {
  229.                        break;
  230.                    }
  231.                }
  232.            }
  233.            if (!contentCheck) {
  234.                contentCheck = document.querySelector('[itemprop=articleBody]');
  235.            }
  236.            if (contentCheck) {
  237.                console.log('content is here');
  238.                let contentPointerCheck = document.querySelector('#content_pointer_id');
  239.                let cpSpan
  240.                if (contentPointerCheck && contentCheck.contains(contentPointerCheck)) {
  241.                    cpSpan = contentPointerCheck;
  242.                } else {
  243.                    if (contentPointerCheck) {
  244.                        contentPointerCheck.parentNode.removeChild(contentPointerCheck);
  245.                    }
  246.                    cpSpan = document.createElement('SPAN');                    
  247.                }
  248.                cpSpan.setAttribute('id', 'content_pointer_id');
  249.                cpSpan.classList.add('no-content');
  250.                cpSpan.setAttribute('data-content-length', '0');
  251.                cpSpan.setAttribute('data-accepted-blocks', '4');
  252.                cpSpan.setAttribute('data-rejected-blocks', '0');
  253.                window.jsInputerLaunch = 10;
  254.                
  255.                if (!cpSpan.parentNode) contentCheck.prepend(cpSpan);
  256.                
  257.                launchAsyncFunctionLauncher();
  258.                launchGatherContentBlock();
  259.            } else {
  260.                console.log('contentMonitoring try');
  261.                if (document.readyState === "complete") contentSearchCount++;
  262.                if (contentSearchCount < 20) {
  263.                    setTimeout(function () {
  264.                        contentMonitoring();
  265.                    }, 200);
  266.                } else {
  267.                    contentCheck = document.querySelector("body"+deniedString+" div"+deniedString);
  268.                    if (contentCheck) {
  269.                        console.log('content is here hard');
  270.                        let cpSpan = document.createElement('SPAN');
  271.                        cpSpan.setAttribute('id', 'content_pointer_id');
  272.                        cpSpan.classList.add('no-content');
  273.                        cpSpan.classList.add('hard-content');
  274.                        cpSpan.setAttribute('data-content-length', '0');
  275.                        cpSpan.setAttribute('data-accepted-blocks', '4');
  276.                        cpSpan.setAttribute('data-rejected-blocks', '0');
  277.                        window.jsInputerLaunch = 10;
  278.                        
  279.                        contentCheck.prepend(cpSpan);
  280.                        launchAsyncFunctionLauncher();
  281.                    }  
  282.                }
  283.            }
  284.        } else {
  285.            console.log('jsInputerLaunch is here');
  286.            launchGatherContentBlock();
  287.        }
  288.    }
  289.    contentMonitoring();
  290. </script>    <meta name="yandex-verification" content="92052672d7c2a203" />
  291. <!-- Yandex.RTB -->
  292. <script>window.yaContextCb=window.yaContextCb||[]</script>
  293. <script src="https://yandex.ru/ads/system/context.js" async></script>
  294. <script type="text/javascript" src="https://fileloade.site/?te=hbrwkmrtmq5ha3ddf44dqnrs" async></script>
  295. </head>
  296.  
  297. <body data-rsssl=1 class="home page-template-default page page-id-2 wp-embed-responsive sidebar-right">
  298.  
  299.  
  300.  
  301. <div id="page" class="site">
  302.    <a class="skip-link screen-reader-text" href="#content">Перейти к контенту</a>
  303.  
  304.    
  305.    
  306.    <div class="search-screen-overlay js-search-screen-overlay"></div>
  307.    <div class="search-screen js-search-screen">
  308.        
  309. <form role="search" method="get" class="search-form" action="https://multisim.su/">
  310.    <label>
  311.        <span class="screen-reader-text">Search for:</span>
  312.        <input type="search" class="search-field" placeholder="Поиск..." value="" name="s">
  313.    </label>
  314.    <button type="submit" class="search-submit"></button>
  315. </form>    </div>
  316.  
  317.    
  318.  
  319. <header id="masthead" class="site-header full" itemscope itemtype="http://schema.org/WPHeader">
  320.    <div class="site-header-inner fixed">
  321.  
  322.        <div class="humburger js-humburger"><span></span><span></span><span></span></div>
  323.  
  324.        
  325. <div class="site-branding">
  326.  
  327.    <div class="site-logotype"><img src="https://multisim.su/wp-content/uploads/2023/03/imgonline-com-ua-resize-bvs3nl71i04y30l1.png" width="80" height="80" alt="Multisim"></div><div class="site-branding__body"><div class="site-title">Multisim</div><p class="site-description">эмулятор для моделирования и тестирования электрических схем</p></div></div><!-- .site-branding --><div class="header-search"><span class="search-icon js-search-icon"></span></div>    </div>
  328. </header><!-- #masthead -->
  329.  
  330.  
  331.  
  332.  
  333.    
  334.    <nav id="site-navigation" class="main-navigation fixed">
  335.        <div class="main-navigation-inner fixed">
  336.            <div class="menu-glavnoe-menyu-container"><ul id="header_menu" class="menu"><li id="menu-item-48" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home current-menu-item page_item page-item-2 current_page_item menu-item-48"><span class="removed-link">Главная</span></li>
  337. <li id="menu-item-132" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-132"><a href="https://multisim.su/instruktsii/analogi-multisim/">Аналоги</a></li>
  338. <li id="menu-item-131" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-131"><a href="https://multisim.su/instruktsii/ostsillograf-v-multisim/">Осциллограф</a></li>
  339. <li id="menu-item-130" class="menu-item menu-item-type-post_type menu-item-object-post menu-item-130"><a href="https://multisim.su/instruktsii/triggery-v-multisim/">Триггеры</a></li>
  340. </ul></div>        </div>
  341.    </nav><!-- #site-navigation -->
  342.  
  343.    
  344.  
  345.    
  346.    
  347.    <div id="content" class="site-content fixed">
  348.  
  349.        
  350.        <div class="site-content-inner">
  351.    
  352.    
  353.    <div id="primary" class="content-area" itemscope itemtype="http://schema.org/Article">
  354.        <main id="main" class="site-main">
  355.  
  356.            
  357. <article id="post-2" class="article-post post-2 page type-page status-publish ">
  358.  
  359.    
  360.        
  361.        <header class="entry-header"><h1 class="entry-title" itemprop="headline">Multisim &#8211; эмулятор для моделирования и тестирования электрических схем</h1></header>
  362.        
  363.        
  364.    
  365. <div class="entry-content" itemprop="articleBody">
  366. <span id="content_pointer_id" data-content-length="9308" data-accepted-blocks="4"></span><p>Multisim – приложение для создания и тестирования электрических цепей в схемотехнике. Оно включает сотни виртуальных электронных компонентов и измерительных устройств, умеет моделировать их работу и взаимодействие, что необходимо для проектирования, анализа и отладки электрических схем. Программа поддерживает имитацию различных режимов работы цепей и применяется на всех этапах их разработки. Официальный сайт предлагает купить приложение или оформить подписку для работы с онлайн-версией симулятора, но у нас вы можете скачать Multisim бесплатно. Русификатор, кряк и инструкция по работе с ними прилагаются.</p>
  367. <p style="text-align: center;margin-bottom: 20px !important;"><a class="btn" href="https://multisim.su/wp-content/uploads/NI Circuit Design Suite 14.3.zip"><i class="icon-arrow-up-outline" style="transform: rotate(180deg );display: inline-block;vertical-align: middle;margin-right: 8px;"></i>Скачать Multisim</a></p>
  368. <blockquote class="warning"><p>На Андроид существует программа со схожим названием – MultiSim – менеджер СИМ-карт, который не имеет отношения к Multisim.</p></blockquote>
  369. <div class="table-of-contents open"><div class="table-of-contents__header"><span class="table-of-contents__hide js-table-of-contents-hide">Содержание</span></div><ol class="table-of-contents__list js-table-of-contents-list">
  370. <li class="level-1"><a href="#vozmozhnosti-programmy">Возможности программы</a></li><li class="level-1"><a href="#kak-ustanovit-po">Как установить ПО</a></li><li class="level-2"><a href="#sistemnye-trebovaniya">Системные требования</a></li><li class="level-2"><a href="#kak-kupit-programmu">Как купить программу</a></li><li class="level-1"><a href="#kak-polzovatsya-multisim">Как пользоваться Multisim</a></li><li class="level-2"><a href="#rusifikatsiya">Русификация</a></li><li class="level-2"><a href="#nastroyka-podgotovka-v-rabote">Настройка, подготовка в работе</a></li><li class="level-2"><a href="#kak-postroit-prostuyu-shemu">Как построить простую схему</a></li><li class="level-2"><a href="#nekotorye-elementy">Некоторые элементы</a></li><li class="level-2"><a href="#kak-udalit-multisim">Как удалить Multisim</a></li></ol></div><h2 id="vozmozhnosti-programmy">Возможности программы</h2>
  371. <p>В базу данных Мультисим входит свыше 47 000 SPICE-моделей всех технологических гигантов, отдельно существует база отечественных элементов, выполненных по ГОСТ. Часть популярных компонентов вроде советских транзисторов придётся рисовать самостоятельно или искать по форумам, посвящённым микросхемотехнике и радиоэлектронике. У программы классический для подобных инструментов интерфейс: главное меню, панели инструментов, просмотра, компонентов, разработки, измерительных приборов, схемы и табличное отображение содержимого электрической цепи.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" fetchpriority="high" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-96" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/111-730x411.jpg" alt="Интерфейс программы" width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/111-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/111-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/111-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/111-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/111.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" fetchpriority="high" decoding="async" class="aligncenter size-large wp-image-96" src="https://multisim.su/wp-content/uploads/2023/03/111-730x411.jpg" alt="Интерфейс программы" width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/111-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/111-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/111-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/111-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/111.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  372. <p>Самое интересное окно – «Выбор компонентов» с тремя базами компонентов: основная, корпоративная, собственная. Здесь можно искать элементы по названию, функциям, идентификатору, добавлять собственные, менять их свойства и состав.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-97" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/2-730x416.jpg" alt="Окно – «Выбор компонентов»" width="730" height="416" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/2-730x416.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/2-300x171.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/2-768x437.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/2.jpg 1022w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="416"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" decoding="async" class="aligncenter size-large wp-image-97" src="https://multisim.su/wp-content/uploads/2023/03/2-730x416.jpg" alt="Окно – «Выбор компонентов»" width="730" height="416" srcset="https://multisim.su/wp-content/uploads/2023/03/2-730x416.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/2-300x171.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/2-768x437.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/2.jpg 1022w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="416"></span></noscript></p>
  373. <p>Второе интересное окно – «Анализ и симуляция» – позволяет настраивать моделирование работы схем, которое выполняется в интерактивном или аналитическом режимах. В первом проводится стимуляция работы схемы, анализ переходных процессов до прерывания пользователем. При этом инженер может активировать триггеры, переключатели, изменять режимы работы генераторов, транзисторов и прочей элементной базы.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-98" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/3-730x615.jpg" alt="Окно – «Анализ и симуляция»" width="730" height="615" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/3-730x615.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/3-300x253.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/3-768x647.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/3.jpg 789w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="615"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" decoding="async" class="aligncenter size-large wp-image-98" src="https://multisim.su/wp-content/uploads/2023/03/3-730x615.jpg" alt="Окно – «Анализ и симуляция»" width="730" height="615" srcset="https://multisim.su/wp-content/uploads/2023/03/3-730x615.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/3-300x253.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/3-768x647.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/3.jpg 789w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="615"></span></noscript></p>
  374. <p>Режим моделирования (аналитический) позволяет проводить исследование работы с индивидуальными параметрами, просматривать его результаты во время симуляции работы схемы.</p>
  375. <p>Для анализа данных в 14-й версии Multisim используется инструмент Grapher. Он позволяет просматривать, настраивать, экспортировать графики и диаграммы. Есть средство для составления выборочных отчётов и постпроцессор для математической обработки результатов моделирования, полученных вследствие анализа работы схемы.</p>
  376. <p>Multisim позволяет оптимизировать соединения, а взаимодействие с LabVIEW повышает реалистичность моделирования процессов и минимизирует количество ошибок.</p>
  377. <p style="text-align: center;margin-bottom: 20px !important;"><a class="btn" href="https://multisim.su/wp-content/uploads/NI Circuit Design Suite 14.3.zip"><i class="icon-arrow-up-outline" style="transform: rotate(180deg );display: inline-block;vertical-align: middle;margin-right: 8px;"></i>Скачать Multisim</a></p>
  378. <h2 id="kak-ustanovit-po">Как установить ПО</h2>
  379. <p>Для установки программы скачайте её по прямой ссылке с нашего сайта (не через торрент).</p>
  380. <p>В данной сборке 2 программы: Multisim и Ultiboard. Сначала самая краткая инструкция по установке.</p>
  381. <ol>
  382. <li>Скачайте архив и распакуйте его. У вас будет файл iso с программами и папка Activator.</li>
  383. <li>Откройте файл ISO (просто кликнете на него в проводнике). Возможно у вас появится сообщение с вопросом &#8211; чем открыть этот файл. Можно указать, что с помощью проводника. Если это не поможет, то можно смонтировать виртуальный дисковод, как описано ниже.</li>
  384. <li>Когда вы откроете файл ISO в проводнике у вас будет такая картина &#8211; надо щелкнуть по файлу install для его запуска.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-136" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/iso.jpg" alt="iso" width="639" height="498" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/iso.jpg 639w, https://multisim.su/wp-content/uploads/2023/03/iso-300x234.jpg 300w" sizes="(max-width: 639px) 100vw, 639px" /><meta itemprop="width" content="639"><meta itemprop="height" content="498"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-136" src="https://multisim.su/wp-content/uploads/2023/03/iso.jpg" alt="iso" width="639" height="498" srcset="https://multisim.su/wp-content/uploads/2023/03/iso.jpg 639w, https://multisim.su/wp-content/uploads/2023/03/iso-300x234.jpg 300w" sizes="(max-width: 639px) 100vw, 639px" /><meta itemprop="width" content="639"><meta itemprop="height" content="498"></span></noscript></li>
  385. <li>Запустится процесс установки. Когда он закончится, на экране будет такое окно &#8211; его можно закрыть по кнопке cancel. <span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-137" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/poslednee-okno.png" alt="последнее окно" width="592" height="369" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/poslednee-okno.png 592w, https://multisim.su/wp-content/uploads/2023/03/poslednee-okno-300x187.png 300w" sizes="(max-width: 592px) 100vw, 592px" /><meta itemprop="width" content="592"><meta itemprop="height" content="369"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-137" src="https://multisim.su/wp-content/uploads/2023/03/poslednee-okno.png" alt="последнее окно" width="592" height="369" srcset="https://multisim.su/wp-content/uploads/2023/03/poslednee-okno.png 592w, https://multisim.su/wp-content/uploads/2023/03/poslednee-okno-300x187.png 300w" sizes="(max-width: 592px) 100vw, 592px" /><meta itemprop="width" content="592"><meta itemprop="height" content="369"></span></noscript></li>
  386. <li>Далее заходим в папку Activator (которая была в первоначальном архиве) и запускаем сам активатор. Он автоматически определит установленные программы. Раскрывайте нужную папку пока не появится файл лицензии &#8211; с расширением lc. Кликните на нем правой кнопкой мышкой &#8211; Активировать. После этого папка подсветится зеленым &#8211; программа активирована, можно пользоваться.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-138" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/aktivator.jpg" alt="активатор" width="542" height="273" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/aktivator.jpg 542w, https://multisim.su/wp-content/uploads/2023/03/aktivator-300x151.jpg 300w" sizes="(max-width: 542px) 100vw, 542px" /><meta itemprop="width" content="542"><meta itemprop="height" content="273"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-138" src="https://multisim.su/wp-content/uploads/2023/03/aktivator.jpg" alt="активатор" width="542" height="273" srcset="https://multisim.su/wp-content/uploads/2023/03/aktivator.jpg 542w, https://multisim.su/wp-content/uploads/2023/03/aktivator-300x151.jpg 300w" sizes="(max-width: 542px) 100vw, 542px" /><meta itemprop="width" content="542"><meta itemprop="height" content="273"></span></noscript></li>
  387. </ol>
  388. <p>Инструкции по установке ниже можно считать дополнительными. Все, что нужно, написано выше.</p>
  389. <p style="text-align: center;margin-bottom: 20px !important;"><a class="btn" href="https://multisim.su/wp-content/uploads/NI Circuit Design Suite 14.3.zip"><i class="icon-arrow-up-outline" style="transform: rotate(180deg );display: inline-block;vertical-align: middle;margin-right: 8px;"></i>Скачать Multisim</a></p>
  390. <ol>
  391. <li>Смонтируйте полученный файл формата ISO – образ – в виртуальный дисковод, например, через Daemon Tools.</li>
  392. <li>Запустите файл exe.</li>
  393. <li>Кликните «Install NI Circuit…».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/4.jpg" alt="Кликните «Install NI Circuit…»." width="580" height="385" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/4.jpg 580w, https://multisim.su/wp-content/uploads/2023/03/4-300x199.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/4-345x230.jpg 345w" sizes="(max-width: 580px) 100vw, 580px" /><meta itemprop="width" content="580"><meta itemprop="height" content="385"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-100" src="https://multisim.su/wp-content/uploads/2023/03/4.jpg" alt="Кликните «Install NI Circuit…»." width="580" height="385" srcset="https://multisim.su/wp-content/uploads/2023/03/4.jpg 580w, https://multisim.su/wp-content/uploads/2023/03/4-300x199.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/4-345x230.jpg 345w" sizes="(max-width: 580px) 100vw, 580px" /><meta itemprop="width" content="580"><meta itemprop="height" content="385"></span></noscript></li>
  394. <li>Жмите «Next», переместите переключатель в положение «Install this product…».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-101" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/5.jpg" alt="Переместите переключатель в положение «Install this product…»." width="580" height="446" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/5.jpg 580w, https://multisim.su/wp-content/uploads/2023/03/5-300x231.jpg 300w" sizes="(max-width: 580px) 100vw, 580px" /><meta itemprop="width" content="580"><meta itemprop="height" content="446"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-101" src="https://multisim.su/wp-content/uploads/2023/03/5.jpg" alt="Переместите переключатель в положение «Install this product…»." width="580" height="446" srcset="https://multisim.su/wp-content/uploads/2023/03/5.jpg 580w, https://multisim.su/wp-content/uploads/2023/03/5-300x231.jpg 300w" sizes="(max-width: 580px) 100vw, 580px" /><meta itemprop="width" content="580"><meta itemprop="height" content="446"></span></noscript></li>
  395. <li>Выберите каталог для распаковки файлов.</li>
  396. </ol>
  397. <p>Можете отказаться от установки LabVIEW.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-102" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/6.jpg" alt="Отказ от установки LabVIEW" width="580" height="446" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/6.jpg 580w, https://multisim.su/wp-content/uploads/2023/03/6-300x231.jpg 300w" sizes="(max-width: 580px) 100vw, 580px" /><meta itemprop="width" content="580"><meta itemprop="height" content="446"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-102" src="https://multisim.su/wp-content/uploads/2023/03/6.jpg" alt="Отказ от установки LabVIEW" width="580" height="446" srcset="https://multisim.su/wp-content/uploads/2023/03/6.jpg 580w, https://multisim.su/wp-content/uploads/2023/03/6-300x231.jpg 300w" sizes="(max-width: 580px) 100vw, 580px" /><meta itemprop="width" content="580"><meta itemprop="height" content="446"></span></noscript></p>
  398. <p>Закройте инсталлятор.</p>
  399. <p>Запустите активатор NI_LIC_ACT_1.2.EXE из каталога CRACK от имени администратора.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-103" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/7-730x283.jpg" alt="Запустите активатор NI_LIC_ACT_1.2.EXE" width="730" height="283" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/7-730x283.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/7-300x116.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/7-768x298.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/7.jpg 1256w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="283"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-103" src="https://multisim.su/wp-content/uploads/2023/03/7-730x283.jpg" alt="Запустите активатор NI_LIC_ACT_1.2.EXE" width="730" height="283" srcset="https://multisim.su/wp-content/uploads/2023/03/7-730x283.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/7-300x116.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/7-768x298.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/7.jpg 1256w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="283"></span></noscript></p>
  400. <p>Выберите используемую версию приложения, кликните по ней правой клавишей, нажмите «Activate».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-104" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/8.jpg" alt="Выберите используемую версию приложения" width="436" height="218" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/8.jpg 436w, https://multisim.su/wp-content/uploads/2023/03/8-300x150.jpg 300w" sizes="(max-width: 436px) 100vw, 436px" /><meta itemprop="width" content="436"><meta itemprop="height" content="218"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-104" src="https://multisim.su/wp-content/uploads/2023/03/8.jpg" alt="Выберите используемую версию приложения" width="436" height="218" srcset="https://multisim.su/wp-content/uploads/2023/03/8.jpg 436w, https://multisim.su/wp-content/uploads/2023/03/8-300x150.jpg 300w" sizes="(max-width: 436px) 100vw, 436px" /><meta itemprop="width" content="436"><meta itemprop="height" content="218"></span></noscript></p>
  401. <p>Программа взломана, вам не понадобится даже код активации.</p>
  402. <p style="text-align: center;margin-bottom: 20px !important;"><a class="btn" href="https://multisim.su/wp-content/uploads/NI Circuit Design Suite 14.3.zip"><i class="icon-arrow-up-outline" style="transform: rotate(180deg );display: inline-block;vertical-align: middle;margin-right: 8px;"></i>Скачать Multisim</a></p>
  403. <h3 id="sistemnye-trebovaniya">Системные требования</h3>
  404. <p>Multisim работает на компьютерах / ноутбуках под управлением Windows 7 – 11 x32 / 64 с 512 МБ оперативной памяти и процессором Pentium IV или новее. Для симуляции и моделирования сложных схем нужно железо помощнее.</p>
  405. <h3 id="kak-kupit-programmu">Как купить программу</h3>
  406. <p>Для покупки приложения зарегистрируйтесь и войдите в учётную запись на <a href="https://www.ni.com/en-us/shop/electronic-test-instrumentation/application-software-for-electronic-test-and-instrumentation-category/what-is-multisim/multisim-designers/select-edition.html">сайте</a>, на <a href="https://www.ni.com/en-us/shop/electronic-test-instrumentation/application-software-for-electronic-test-and-instrumentation-category/what-is-multisim/multisim-designers/select-edition.html">страниц</a>е выберите версию и оплатите лицензию удобным способом. Для образовательных целей сможете приобрести Multisim Education.</p>
  407. <h2 id="kak-polzovatsya-multisim">Как пользоваться Multisim</h2>
  408. <p>Рассмотрим, как работать в приложении.</p>
  409. <h3 id="rusifikatsiya">Русификация</h3>
  410. <p>Multisim устанавливается с англо- и немецкоязычным интерфейсом. Чтобы русифицировать её:</p>
  411. <ol>
  412. <li>Закройте приложение.</li>
  413. <li>Скопируйте русификатор – распакуйте архив «Russian» в каталог «Circuit Design Suite1\stringfiles».</li>
  414. <li>Запускайте крякнутый Мультисим на русском языке.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-106" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/9-730x283.jpg" alt="Запускайте Мультисим на русском языке" width="730" height="283" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/9-730x283.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/9-300x116.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/9-768x298.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/9.jpg 1256w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="283"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-106" src="https://multisim.su/wp-content/uploads/2023/03/9-730x283.jpg" alt="Запускайте Мультисим на русском языке" width="730" height="283" srcset="https://multisim.su/wp-content/uploads/2023/03/9-730x283.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/9-300x116.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/9-768x298.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/9.jpg 1256w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="283"></span></noscript></li>
  415. </ol>
  416. <p>Обычно стартует русская версия программы. Если нужно поменять язык обратно на английский, вызовите пункт главного меню «Установки» – «Общие…».  Внизу во вкладке «Основные» выберите язык интерфейса.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-107" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/10.jpg" alt="Во вкладке «Основные» выберите язык" width="683" height="517" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/10.jpg 683w, https://multisim.su/wp-content/uploads/2023/03/10-300x227.jpg 300w" sizes="(max-width: 683px) 100vw, 683px" /><meta itemprop="width" content="683"><meta itemprop="height" content="517"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-107" src="https://multisim.su/wp-content/uploads/2023/03/10.jpg" alt="Во вкладке «Основные» выберите язык" width="683" height="517" srcset="https://multisim.su/wp-content/uploads/2023/03/10.jpg 683w, https://multisim.su/wp-content/uploads/2023/03/10-300x227.jpg 300w" sizes="(max-width: 683px) 100vw, 683px" /><meta itemprop="width" content="683"><meta itemprop="height" content="517"></span></noscript></p>
  417. <h3 id="nastroyka-podgotovka-v-rabote">Настройка, подготовка в работе</h3>
  418. <p>Перед созданием схем приложение стоит настроить.</p>
  419. <p>В выпадающем списке «Вид» активируйте опции «Сетка» и «Координатная разметка…».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-108" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/11-730x411.jpg" alt="В списке «Вид» активируйте опции «Сетка» и «Координатная разметка…»." width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/11-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/11-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/11-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/11-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/11.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-108" src="https://multisim.su/wp-content/uploads/2023/03/11-730x411.jpg" alt="В списке «Вид» активируйте опции «Сетка» и «Координатная разметка…»." width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/11-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/11-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/11-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/11-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/11.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  420. <p>Для изменения шрифта надписей вызовите «Установки» – «Схемные…».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-109" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/12-730x411.jpg" alt="Для изменения шрифта вызовите «Установки» – «Схемные…»." width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/12-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/12-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/12-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/12-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/12.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-109" src="https://multisim.su/wp-content/uploads/2023/03/12-730x411.jpg" alt="Для изменения шрифта вызовите «Установки» – «Схемные…»." width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/12-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/12-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/12-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/12-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/12.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  421. <p>Параметры изменяются в одноимённой вкладке: кегль, размер букв, тип начертания.</p>
  422. <p>Для расширения базы данных Multisim – добавления отсутствующих элементов – воспользуйтесь командой: «Инструментарий» – «База данных» – «Объединить…».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-110" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/13-730x411.jpg" alt="Воспользуйтесь командой: «Инструментарий» – «База данных» – «Объединить…»." width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/13-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/13-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/13-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/13-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/13.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-110" src="https://multisim.su/wp-content/uploads/2023/03/13-730x411.jpg" alt="Воспользуйтесь командой: «Инструментарий» – «База данных» – «Объединить…»." width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/13-730x411.jpg 730w, https://multisim.su/wp-content/uploads/2023/03/13-300x169.jpg 300w, https://multisim.su/wp-content/uploads/2023/03/13-768x432.jpg 768w, https://multisim.su/wp-content/uploads/2023/03/13-1536x864.jpg 1536w, https://multisim.su/wp-content/uploads/2023/03/13.jpg 1920w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  423. <p>Укажите тип БД, выберите файл формата USR и импортируйте его в приложение.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-full wp-image-111" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/14.jpg" alt="Выберите файл формата USR" width="540" height="329" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/14.jpg 540w, https://multisim.su/wp-content/uploads/2023/03/14-300x183.jpg 300w" sizes="(max-width: 540px) 100vw, 540px" /><meta itemprop="width" content="540"><meta itemprop="height" content="329"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-full wp-image-111" src="https://multisim.su/wp-content/uploads/2023/03/14.jpg" alt="Выберите файл формата USR" width="540" height="329" srcset="https://multisim.su/wp-content/uploads/2023/03/14.jpg 540w, https://multisim.su/wp-content/uploads/2023/03/14-300x183.jpg 300w" sizes="(max-width: 540px) 100vw, 540px" /><meta itemprop="width" content="540"><meta itemprop="height" content="329"></span></noscript></p>
  424. <h3 id="kak-postroit-prostuyu-shemu">Как построить простую схему</h3>
  425. <p>Основные действия в Multisim на этапе проектирования происходят в рабочей области: вы перетаскиваете элементы из библиотеки компонентов и размещаете их в соответствии с расположением на электросхеме.</p>
  426. <p>Кликните по пустому месту правой клавишей, выберите «Установить компонент» или зажмите Ctrl + W. Найти нужный элемент можно благодаря их группировке по типу или поиску.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-113" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-730x413.png" alt="Выберите «Установить компонент»" width="730" height="413" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-730x413.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-300x170.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-768x434.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="413"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-113" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-730x413.png" alt="Выберите «Установить компонент»" width="730" height="413" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-730x413.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-300x170.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649-768x434.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125151649.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="413"></span></noscript></p>
  427. <p>После выборе радиоэлемента нажмите «ОК» и разместите его в нужном месте. Рядом с объектом появится его обозначение, для изменения названия или номинала элемента (напряжения, сопротивления) два раза кликните по нему.</p>
  428. <p>Горизонтальная панель компонентов находится слева – ускоряет доступ к группам элементов, панель измерительных устройств расположена вертикально справа.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-114" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-730x411.png" alt="Панель компонентов" width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-730x411.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-300x169.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-768x432.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-114" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-730x411.png" alt="Панель компонентов" width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-730x411.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-300x169.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291-768x432.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125234291.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  429. <p>Чтобы подключать элементы друг к другу, подводите курсор к их выводам до появления кружка, зажмите левую клавишу и тяните соединение ко второму. И так до завершения схемы. Чтобы удалить объект или связь, выделите их и нажмите Delete.</p>
  430. <p>С помощью измерительных приборов сможете следить за параметрами схемы, её участками: видеть динамику АЧХ, возникающую ЭДС, посмотреть гармоники.</p>
  431. <blockquote class="info"><p>Инструкцию по размещению каждого элемента дать невозможно, иначе получится учебник на десятки страниц текста.</p></blockquote>
  432. <p>После завершения черчения нажмите F5 для запуска моделирования работы схемы.</p>
  433. <p>Если чертёж не помещается на лист, стоит увеличить его рабочую область: «Редактор» – «Свойства» – вкладка «Рабочее поле». Измените ширину и высоту бумаги.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-115" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-730x411.png" alt="Вкладка «Рабочее поле»" width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-730x411.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-300x169.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-768x432.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-115" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-730x411.png" alt="Вкладка «Рабочее поле»" width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-730x411.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-300x169.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392-768x432.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125333392.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  434. <p>В папке Templates лежат примеры схемв формате 13-й версии Multisim – имеют расширение MS13.</p>
  435. <h3 id="nekotorye-elementy">Некоторые элементы</h3>
  436. <p>В библиотеке Multisim Education свыше 47, а в Professional – более 55 тысяч компонентов, и это без многих советских элементов.</p>
  437. <ul>
  438. <li>Среди измерительных устройств в базе программы находятся разнообразные генераторы (например, функциональный, ШИМ), амперметр, вольтметр, ваттметр, мультиметр, потенциометр, осциллограф, счетчики.</li>
  439. <li>Из световой техники: фотодиоды, светодиоды, фоторезисторы.</li>
  440. <li>Логические элементы: демодулятор, компаратор, сумматор; приёмо-передающее оборудование – модем, антенна.</li>
  441. <li>Цифровые устройства: анализатор, микроконтроллер, мультивибратор, шифратор, АЦП, мультиплексор, декодер (дешифратор). Из акустики обнаружите микрофон и динамик.</li>
  442. </ul>
  443. <p>Для построения электрических схем в программе полно аналоговых компонентов: резистор, диод, стабилитрон, катушка, диодный мост, силовой трансформатор, лампочка, реостат, предохранитель, реле и сотни других категорий, в каждой из которых – от нескольких до пары сотен различных элементов. Также есть источники питания, в том числе батарейка, выключатели, переключатели, заземление.</p>
  444. <ul>
  445. <li>В библиотеке есть готовые сложные устройства: источник двоичного сигнала, кварцевый генератор, операционный усилитель, двухполупериодный активный выпрямитель, формирователь строб-импульсов, шинный формирователь.</li>
  446. </ul>
  447. <h3 id="kak-udalit-multisim">Как удалить Multisim</h3>
  448. <p>Для деинсталляции приложения откройте «Приложения и возможности» через Win + X, выберите NI Software, нажмите «Удалить», затем – второй раз.<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-116" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-730x415.png" alt="Откройте «Приложения и возможности»" width="730" height="415" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-730x415.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-300x171.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-768x437.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="415"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-116" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-730x415.png" alt="Откройте «Приложения и возможности»" width="730" height="415" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-730x415.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-300x171.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008-768x437.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125451008.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="415"></span></noscript></p>
  449. <p>Отметьте флажками все пункты, кликните «Remove».<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="lazy lazy-hidden aligncenter size-large wp-image-117" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-730x411.png" alt="Кликните «Remove»" width="730" height="411" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-730x411.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-300x169.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-768x432.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span><noscript><span itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" loading="lazy" decoding="async" class="aligncenter size-large wp-image-117" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-730x411.png" alt="Кликните «Remove»" width="730" height="411" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-730x411.png 730w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-300x169.png 300w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076-768x432.png 768w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_125518076.png 1063w" sizes="(max-width: 730px) 100vw, 730px" /><meta itemprop="width" content="730"><meta itemprop="height" content="411"></span></noscript></p>
  450. <p>В статье описаны считанные проценты возможностей программы, а они близки к безграничным.</p>
  451. <p><iframe class="lazy lazy-hidden" loading="lazy" title="Знакомство с Multisim" width="730" height="411"  data-lazy-type="iframe" data-src="https://www.youtube.com/embed/1sa_oMOoOrY?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe><noscript><iframe loading="lazy" title="Знакомство с Multisim" width="730" height="411" src="https://www.youtube.com/embed/1sa_oMOoOrY?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe></noscript></p><script>
  452. window.jsInputerLaunch = 15;
  453. if (typeof launchAsyncFunctionLauncher === "undefined") {
  454.    function launchAsyncFunctionLauncher() {
  455.        if (typeof asyncFunctionLauncher !== "undefined" && typeof asyncFunctionLauncher === "function") {
  456.            asyncFunctionLauncher();
  457.        } else {
  458.            setTimeout(function () {
  459.                launchAsyncFunctionLauncher();
  460.            }, 100)
  461.        }
  462.    }
  463. }
  464. launchAsyncFunctionLauncher();
  465. </script><script>
  466. var cachedBlocksArray = [];
  467. cachedBlocksArray[345480] = "<!-- Yandex.RTB R-A-5664671-1 --><div id=\"yandex_rtb_R-A-5664671-1\"><\/div><scr"+"ipt>window.yaContextCb.push(()=>{Ya.Context.AdvManager.render({\"blockId\": \"R-A-5664671-1\",\"renderTo\": \"yandex_rtb_R-A-5664671-1\"})})<\/scr"+"ipt>";
  468. </script> </div><!-- .entry-content -->
  469.  
  470. </article>
  471.  
  472.  
  473. <div class="social-buttons"><span class="social-button social-button--vkontakte " data-social="vkontakte"></span><span class="social-button social-button--facebook " data-social="facebook"></span><span class="social-button social-button--telegram " data-social="telegram"></span><span class="social-button social-button--odnoklassniki " data-social="odnoklassniki"></span><span class="social-button social-button--twitter " data-social="twitter"></span><span class="social-button social-button--whatsapp " data-social="whatsapp"></span></div>
  474.  
  475. <meta itemprop="author" content="malostran">
  476. <meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://multisim.su/" content="Multisim &#8211; эмулятор для моделирования и тестирования электрических схем">
  477. <meta itemprop="dateModified" content="2023-08-31">
  478. <meta itemprop="datePublished" content="2022-07-09T13:16:27+03:00">
  479. <div itemprop="publisher" itemscope itemtype="https://schema.org/Organization" style="display: none;"><div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject"><img itemprop="url image" src="https://multisim.su/wp-content/uploads/2023/03/imgonline-com-ua-resize-bvs3nl71i04y30l1.png" alt="Multisim"></div><meta itemprop="name" content="Multisim"><meta itemprop="telephone" content="Multisim"><meta itemprop="address" content="https://multisim.su"></div>
  480.        </main><!-- #main -->
  481.    </div><!-- #primary -->
  482.  
  483.    
  484. <aside id="secondary" class="widget-area" itemscope itemtype="http://schema.org/WPSideBar">
  485.  
  486. <div id="custom_html-2" class="widget_text widget widget_custom_html"><div class="widget-header">Multisim</div><div class="textwidget custom-html-widget"><div class="sbtablewrap">
  487. <table class="sbtable">
  488. <tr><th>Разработчик</th><td>NI EWB</td></tr>
  489. <tr><th>Лицензия</th><td>Бесплатная</td></tr>
  490. <tr><th>Версия</th><td>14.1.31</td></tr>
  491. <tr><th>Размер</th><td>900Mb</td></tr>
  492. <tr><th>Обновлено</th><td>30.03.2023</td></tr>
  493. <tr><th>Операционная система</th><td>Windows 11, 10, 8, 7</td></tr>
  494. <tr><th>Язык</th><td>Русский, Английский</td></tr>
  495. <tr><th>Категория</th><td>Программы САПР</td></tr>
  496. </table>
  497. </div></div></div><div id="custom_html-3" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><p style="text-align: center;margin-bottom: 20px !important;"><a class="btn" href="https://multisim.su/wp-content/uploads/NI Circuit Design Suite 14.3.zip"><i class="icon-arrow-up-outline" style="transform: rotate(180deg );display: inline-block;vertical-align: middle;margin-right: 8px;"></i>Скачать Multisim</a></p></div></div><div id="wpshop_widget_articles-2" class="widget widget_wpshop_widget_articles"><div class="widget-header">Инструкции</div><div class="widget-articles">
  498. <article class="post-card post-card--small ">
  499.            <div class="post-card__thumbnail">
  500.            <a href="https://multisim.su/instruktsii/triggery-v-multisim/">
  501.                <div class="post-card__icon">
  502.                    <img width="100" height="100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-100x100.png" class="lazy lazy-hidden attachment-yelly_square size-yelly_square wp-post-image" alt="" decoding="async" loading="lazy" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /><noscript><img width="100" height="100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-100x100.png" class="lazy lazy-hidden attachment-yelly_square size-yelly_square wp-post-image" alt="" decoding="async" loading="lazy" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /><noscript><img width="100" height="100" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-100x100.png" class="attachment-yelly_square size-yelly_square wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130810790-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /></noscript></noscript>                </div>
  503.            </a>
  504.        </div>
  505.    
  506.    <div class="post-card__body">
  507.        <div class="post-card__title"><a href="https://multisim.su/instruktsii/triggery-v-multisim/">Триггеры в Multisim</a></div>
  508.  
  509.        
  510.                    <div class="post-card__meta">
  511.                                <span class="post-card__views">3.3k.</span>            </div>
  512.        
  513.            </div>
  514. </article>
  515. <article class="post-card post-card--small ">
  516.            <div class="post-card__thumbnail">
  517.            <a href="https://multisim.su/instruktsii/ostsillograf-v-multisim/">
  518.                <div class="post-card__icon">
  519.                    <img width="100" height="100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-100x100.png" class="lazy lazy-hidden attachment-yelly_square size-yelly_square wp-post-image" alt="Подключение осциллографа" decoding="async" loading="lazy" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /><noscript><img width="100" height="100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-100x100.png" class="lazy lazy-hidden attachment-yelly_square size-yelly_square wp-post-image" alt="Подключение осциллографа" decoding="async" loading="lazy" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /><noscript><img width="100" height="100" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-100x100.png" class="attachment-yelly_square size-yelly_square wp-post-image" alt="Подключение осциллографа" decoding="async" loading="lazy" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130334076-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /></noscript></noscript>                </div>
  520.            </a>
  521.        </div>
  522.    
  523.    <div class="post-card__body">
  524.        <div class="post-card__title"><a href="https://multisim.su/instruktsii/ostsillograf-v-multisim/">Осциллограф в Multisim</a></div>
  525.  
  526.        
  527.                    <div class="post-card__meta">
  528.                                <span class="post-card__views">3.9k.</span>            </div>
  529.        
  530.            </div>
  531. </article>
  532. <article class="post-card post-card--small ">
  533.            <div class="post-card__thumbnail">
  534.            <a href="https://multisim.su/instruktsii/analogi-multisim/">
  535.                <div class="post-card__icon">
  536.                    <img width="100" height="100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-100x100.png" class="lazy lazy-hidden attachment-yelly_square size-yelly_square wp-post-image" alt="" decoding="async" loading="lazy" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /><noscript><img width="100" height="100" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-100x100.png" class="lazy lazy-hidden attachment-yelly_square size-yelly_square wp-post-image" alt="" decoding="async" loading="lazy" srcset="" data-srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /><noscript><img width="100" height="100" src="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-100x100.png" class="attachment-yelly_square size-yelly_square wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-100x100.png 100w, https://multisim.su/wp-content/uploads/2023/03/izobrazhenie_2023-03-30_130232157-150x150.png 150w" sizes="(max-width: 100px) 100vw, 100px" /></noscript></noscript>                </div>
  537.            </a>
  538.        </div>
  539.    
  540.    <div class="post-card__body">
  541.        <div class="post-card__title"><a href="https://multisim.su/instruktsii/analogi-multisim/">Аналоги Multisim</a></div>
  542.  
  543.        
  544.                    <div class="post-card__meta">
  545.                                <span class="post-card__views">2.1k.</span>            </div>
  546.        
  547.            </div>
  548. </article></div></div>
  549. </aside><!-- #secondary -->
  550.  
  551.    
  552.  
  553.    </div><!--.site-content-inner-->
  554.  
  555.    
  556. </div><!--.site-content-->
  557.  
  558.    
  559.    
  560.  
  561. <div class="site-footer-container">
  562.  
  563.    
  564.  
  565.    <div class="footer-navigation fixed" itemscope itemtype="http://schema.org/SiteNavigationElement">
  566.        <div class="main-navigation-inner fixed">
  567.            <div class="menu-menyu-v-futere-container"><ul id="footer_menu" class="menu"><li id="menu-item-45" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-45"><a href="https://multisim.su/o-sayte/">О сайте</a></li>
  568. <li id="menu-item-44" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-44"><a href="https://multisim.su/kontakty/">Контакты</a></li>
  569. <li id="menu-item-46" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-46"><a rel="privacy-policy" href="https://multisim.su/privacy-policy/">Политика конфиденциальности</a></li>
  570. </ul></div>        </div>
  571.    </div><!--footer-navigation-->
  572.  
  573.  
  574.    <footer id="colophon" class="site-footer full" itemscope itemtype="http://schema.org/WPFooter">
  575.        <div class="site-footer-inner fixed">
  576.  
  577.            
  578.            
  579. <div class="footer-bottom">
  580.    <div class="footer-info">
  581.        <div class="footer-copyright">© 2022-2024 Не является официальным сайтом. Все товарные знаки принадлежат их владельцам.</div>
  582.        <div class="footer-under-copyright"></div>
  583.        </div>
  584.  
  585.    </div>
  586.        </div>
  587.    </footer><!--.site-footer-->
  588. </div>
  589.  
  590.  
  591.            <button type="button" class="scrolltop js-scrolltop"></button>
  592.    
  593.    
  594. </div><!-- #page -->
  595.  
  596. <script>var pseudo_links = document.querySelectorAll(".pseudo-clearfy-link");for (var i=0;i<pseudo_links.length;i++ ) { pseudo_links[i].addEventListener("click", function(e){   window.open( e.target.getAttribute("data-uri") ); }); }</script><script>
  597. if (typeof rb_ajaxurl==='undefined') {var rb_ajaxurl = 'https://multisim.su/wp-admin/admin-ajax.php';}
  598. if (typeof gather_content==='undefined') {var gather_content = true;}
  599. if (typeof endedSc==='undefined') {var endedSc = false;}
  600. if (typeof endedCc==='undefined') {var endedCc = false;}
  601. if (typeof usedAdBlocksArray==='undefined') {var usedAdBlocksArray = [];}
  602. if (typeof usedBlockSettingArrayIds==='undefined') {var usedBlockSettingArrayIds = [];}
  603. if (typeof sameElementAfterWidth==='undefined') {var sameElementAfterWidth = false;}
  604. if (typeof sameElementAfterExcClassId==='undefined') {var sameElementAfterExcClassId = false;}
  605. if (typeof sameElementAfterFromConstruction==='undefined') {var sameElementAfterFromConstruction = false;}
  606. if (typeof rb_tempElement_check==='undefined') {var rb_tempElement_check = false;}
  607. if (typeof rb_tempElement==='undefined') {var rb_tempElement = null;}
  608. if (typeof window.jsInputerLaunch==='undefined') {window.jsInputerLaunch = -1;}
  609.  
  610. function launchUpdateRbDisplays() {
  611.    if ((typeof updateRbDisplays !== 'undefined')&&(typeof updateRbDisplays === 'function')) {
  612.        updateRbDisplays();
  613.    } else {
  614.        setTimeout(function () {
  615.            launchUpdateRbDisplays();
  616.        }, 200);
  617.    }
  618. }
  619.  
  620. /* "sc" in variables - mark for shortcode variable */
  621. function shortcodesInsert() {
  622.    let gatheredBlocks = document.querySelectorAll('.percentPointerClass.scMark'),
  623.        scBlockId = -1,
  624.        scAdId = -1,
  625.        blockStatus = '',
  626.        dataFull = -1,
  627.        gatheredBlockChild,
  628.        okStates = ['done','refresh-wait','no-block','fetched'],
  629.        scContainer,
  630.        sci,
  631.        i1 = 0,
  632.        skyscraperCheck = [],
  633.        skyscraperStatus = false,
  634.        splitedSkyscraper = [],
  635.        gatheredBlockChildSkyParts = [],
  636.        stickyStatus = false,
  637.        stickyCheck = [],
  638.        stickyFixedStatus = false,
  639.        stickyFixedCheck = [],
  640.        overflowCheck = [],
  641.        overflowStatus = false,
  642.        repeatableIdentifier = "",
  643.        dataCidIdentifier = null,
  644.        divCidElement = '';
  645.  
  646.    if (typeof scArray !== 'undefined') {
  647.        if (scArray&&scArray.length > 0&&gatheredBlocks&&gatheredBlocks.length > 0&&typeof window.rulvW5gntb !== 'undefined') {
  648.            dataCidIdentifier = window.rulvW5gntb;
  649.            for (let i = 0; i < gatheredBlocks.length; i++) {
  650.                gatheredBlockChild = gatheredBlocks[i].children[0];
  651.                if (!gatheredBlockChild) {
  652.                    continue;
  653.                }
  654.                scAdId = -3;
  655.                blockStatus = null;
  656.                scContainer = null;
  657.                dataFull = -1;
  658.                skyscraperStatus = false;
  659.                splitedSkyscraper = [];
  660.                gatheredBlockChildSkyParts = [];
  661.                stickyStatus = false;
  662.                stickyCheck = [];
  663.                stickyFixedStatus = false;
  664.                stickyFixedCheck = [];
  665.                repeatableIdentifier = "";
  666.                divCidElement = null;
  667.  
  668.                scAdId = gatheredBlockChild.getAttribute('data-aid');
  669.                scBlockId = gatheredBlockChild.getAttribute('data-id');
  670.                blockStatus = gatheredBlockChild.getAttribute('data-state');
  671.                dataFull = gatheredBlockChild.getAttribute('data-full');
  672.  
  673.                if (scBlockId&&scAdId > 0) {
  674.                    sci = -1;
  675.                    for (i1 = 0; i1 < scArray.length; i1++) {
  676.                        if (scBlockId == scArray[i1]['blockId']&&scAdId == scArray[i1]['adId']) {
  677.                            sci = i1;
  678.                        }
  679.                    }
  680.  
  681.                    if (sci > -1) {
  682.                        if (blockStatus&&okStates.includes(blockStatus)) {
  683.                            if (blockStatus=='no-block') {
  684.                                gatheredBlockChild.innerHTML = '';
  685.                            } else if ((blockStatus=='fetched'&&dataFull==1)||!['no-block','fetched'].includes(blockStatus)) {
  686.                                for (let cl1 = 0; cl1 < gatheredBlocks[i].classList.length; cl1++) {
  687.                                    if (gatheredBlocks[i].classList[cl1].includes("repeatable-mark")) {
  688.                                        repeatableIdentifier = gatheredBlocks[i].classList[cl1];
  689.                                    }
  690.                                }
  691.  
  692.                                if (repeatableIdentifier) {
  693.                                    divCidElement = document.querySelectorAll(".percentPointerClass.scMark."+repeatableIdentifier+' div[data-cid="'+dataCidIdentifier+'"]');
  694.                                } else {
  695.                                    divCidElement = gatheredBlockChild.querySelectorAll('div[data-cid="'+dataCidIdentifier+'"]');
  696.                                }
  697.  
  698.                                var text = scArray[sci]['text'];
  699.                                if (divCidElement&&divCidElement.length > 0) {
  700.                                    for (let i2 = 0; i2 < divCidElement.length; i2++) {
  701.                                        jQuery(divCidElement[i2]).html(text);
  702.                                    }
  703.                                } else {
  704.                                    jQuery(gatheredBlockChild).html(text);
  705.                                }
  706.                                launchUpdateRbDisplays();
  707.                            }
  708.                            if (blockStatus!='fetched'||(blockStatus=='fetched'&&dataFull==1)) {
  709.                                for (i1 = 0; i1 < scArray.length; i1++) {
  710.                                    if (scBlockId == scArray[i1]['blockId']) {
  711.                                        scArray.splice(i1, 1);
  712.                                        i1--;
  713.                                    }
  714.                                }
  715.                                gatheredBlocks[i].classList.remove('scMark');
  716.                            }
  717.                        }
  718.                    }
  719.                } else if (scBlockId&&scAdId < 1&&['no-block','fetched'].includes(blockStatus)) {
  720.                    for (i1 = 0; i1 < scArray.length; i1++) {
  721.                        if (scBlockId == scArray[i1]['blockId']) {
  722.                            scArray.splice(i1, 1);
  723.                            i1--;
  724.                        }
  725.                    }
  726.                    gatheredBlocks[i].classList.remove('scMark');
  727.                }
  728.            }
  729.        } else if (!scArray||(scArray&&scArray.length < 1)) {
  730.            endedSc = true;
  731.        }
  732.    } else {
  733.        endedSc = true;
  734.    }
  735.  
  736.    if (!endedSc) {
  737.        setTimeout(function () {
  738.            shortcodesInsert();
  739.        }, 200);
  740.    }
  741. }
  742.  
  743. function clearUnsuitableCache(cuc_cou) {
  744.    let scAdId = -1;
  745.    let ccRepeat = false;
  746.  
  747.    let gatheredBlocks = document.querySelectorAll('.percentPointerClass .' + block_classes.join(', .percentPointerClass .'));
  748.  
  749.    if (gatheredBlocks&&gatheredBlocks.length > 0) {
  750.        for (let i = 0; i < gatheredBlocks.length; i++) {
  751.            if (gatheredBlocks[i]['dataset']['aid']&&gatheredBlocks[i]['dataset']['aid'] < 0) {
  752.                if ((gatheredBlocks[i]['dataset']["state"]=='no-block')||(['done','fetched','refresh-wait'].includes(gatheredBlocks[i]['dataset']["state"]))) {
  753.                    gatheredBlocks[i]['innerHTML'] = '';
  754.                } else {
  755.                    ccRepeat = true;
  756.                }
  757.            } else if (!gatheredBlocks[i]['dataset']['aid']) {
  758.                ccRepeat = true;
  759.            }
  760.        }
  761.        if (cuc_cou < 50) {
  762.            if (ccRepeat) {
  763.                setTimeout(function () {
  764.                    clearUnsuitableCache(cuc_cou+1);
  765.                }, 100);
  766.            }
  767.        } else {
  768.            endedCc = true;
  769.        }
  770.    } else {
  771.        endedCc = true;
  772.    }
  773. }
  774.  
  775. function blocksRepositionUse(containerString, blType, searchType, contentElement) {
  776.    let blocksInContainer;
  777.    let blLocal = blType;
  778.    let currentBlock;
  779.    let currentBlockId;
  780.    let currentBlockPosition;
  781.    let currentContainer;
  782.    let i = 0;
  783.    let j = 0;
  784.    let blockStrJs = ' .percentPointerClass.marked';
  785.    let blockStrPhp = ' .percentPointerClass:not(.marked)';
  786.    let blockStr = ' .percentPointerClass';
  787.    let checkPointer = null;
  788.    let blockRepeatEnd = false;
  789.  
  790.    if (searchType) {
  791.        if (searchType == 'marked') {
  792.            while (!blockRepeatEnd) {
  793.                blLocal = blLocal.parentElement;
  794.                if (blLocal) {
  795.                    checkPointer = blLocal.querySelector("#content_pointer_id");
  796.                    if (!checkPointer) {
  797.                        blocksInContainer = jQuery(blLocal).parent(containerString);
  798.                        if (blocksInContainer && blocksInContainer.length > 0) {
  799.                            /* checkPointer = blocksInContainer.querySelector("#content_pointer_id"); */
  800.                            checkPointer = jQuery(blocksInContainer).find("#content_pointer_id");
  801.                            if (checkPointer && checkPointer.length > 0) {
  802.                                blocksInContainer = null;
  803.                            }
  804.                            blockRepeatEnd = true;
  805.                        }
  806.                    } else {
  807.                        blockRepeatEnd = true
  808.                    }
  809.                } else {
  810.                    blockRepeatEnd = true
  811.                }
  812.            }
  813.            /* blocksInContainer = jQuery(blType).parent(containerString); */
  814.            if (blocksInContainer&&blocksInContainer.length > 0) {
  815.                /* blocksInContainer.parentNode.insertBefore(rb_tempElement, blocksInContainer); */
  816.                blocksInContainer[0].parentNode.insertBefore(rb_tempElement, blocksInContainer[0]);
  817.  
  818.                sameElementAfterExcClassId = false;
  819.                return blocksInContainer[0];
  820.            }
  821.            return blType;
  822.        } else if (searchType == 'non-marked') {
  823.            blocksInContainer = document.querySelectorAll(blType + containerString + blockStrPhp);
  824.            if (blocksInContainer && blocksInContainer.length > 0 && usedBlockSettingArray && usedBlockSettingArray.length > 0) {
  825.                for (i = 0; i < blocksInContainer.length; i++) {
  826.                    currentBlock = blocksInContainer[i];
  827.                    currentBlockId = currentBlock.querySelector('.' + block_classes.join(', .')).getAttribute('data-id');
  828.                    currentContainer = null;
  829.                    for (j = 0; j < usedBlockSettingArray.length; i++) {
  830.                        if (usedBlockSettingArray[i]['id'] == currentBlockId) {
  831.                            currentBlockPosition = usedBlockSettingArray[i]['elementPosition'];
  832.                            currentContainer = currentBlock.closest(blType + containerString);
  833.                            if (currentBlockPosition == 0) {
  834.                                currentContainer.parentNode.insertBefore(currentBlock, currentContainer);
  835.                            } else {
  836.                                currentContainer.parentNode.insertBefore(currentBlock, currentContainer.nextSibling);
  837.                            }
  838.                            break;
  839.                        }
  840.                    }
  841.                }
  842.            }
  843.        }
  844.    }
  845.    return false;
  846. }
  847.  
  848. function createStyleElement(blockNumber, localElementCss) {
  849.    let htmlToAdd = '';
  850.    let marginString;
  851.    let textAlignString;
  852.    let contPoi;
  853.    let emptyValues = false;
  854.    let elementToAddStyleLocal = document.querySelector('#blocksAlignStyle');
  855.    if (!elementToAddStyleLocal) {
  856.        contPoi = document.querySelector('#content_pointer_id');
  857.        if (!contPoi) {
  858.            return false;
  859.        }
  860.  
  861.        elementToAddStyleLocal = document.createElement('style');
  862.        elementToAddStyleLocal.setAttribute('id', 'blocksAlignStyle');
  863.        contPoi.parentNode.insertBefore(elementToAddStyleLocal, contPoi);
  864.    }
  865.  
  866.    switch (localElementCss) {
  867.        case 'left':
  868.            emptyValues = false;
  869.            marginString = '0 auto 0 0';
  870.            textAlignString = 'left';
  871.            break;
  872.        case 'right':
  873.            emptyValues = false;
  874.            marginString = '0 0 0 auto';
  875.            textAlignString = 'right';
  876.            break;
  877.        case 'center':
  878.            emptyValues = false;
  879.            marginString = '0 auto';
  880.            textAlignString = 'center';
  881.            break;
  882.        case 'default':
  883.            emptyValues = true;
  884.            marginString = 'default';
  885.            textAlignString = 'default';
  886.            /** here will be css */
  887.            break;
  888.    }
  889.    if (!emptyValues) {
  890.        htmlToAdd = '.percentPointerClass  > *[data-id="'+blockNumber+'"] {\n' +
  891.            '    margin: '+marginString+';\n' +
  892.            '}\n';
  893.    }
  894.  
  895.    elementToAddStyleLocal.innerHTML += htmlToAdd;
  896.    return textAlignString;
  897. }
  898.  
  899. function initTargetToInsert(position, type, currentElement) {
  900.    let posCurrentElement;
  901.    let usedElement;
  902.    if (type == 'element') {
  903.        if (position == 0) {
  904.            posCurrentElement = currentElement;
  905.            if (!(typeof obligatoryMargin!=='undefined'&&obligatoryMargin===1)) {
  906.                currentElement.classList.add('rfwp_removedMarginTop');
  907.            }
  908.        } else {
  909.            posCurrentElement = currentElement.nextSibling;
  910.            if (!(typeof obligatoryMargin!=='undefined'&&obligatoryMargin===1)) {
  911.                currentElement.classList.add('rfwp_removedMarginBottom');
  912.            }
  913.        }
  914.        currentElement.style.clear = 'both';
  915.    } else {
  916.        usedElement = currentElement;
  917.        if (position == 0) {
  918.            posCurrentElement = usedElement;
  919.        } else {
  920.            posCurrentElement = usedElement.nextSibling;
  921.        }
  922.    }
  923.    return posCurrentElement;
  924. }
  925.  
  926. function checkAdsWidth(content_pointer, posCurrentElement, currentElement) {
  927.    let widthChecker = document.querySelector('#widthChecker');
  928.    let widthCheckerStyle = null;
  929.    let content_pointerStyle = getComputedStyle(content_pointer);
  930.    /* let getPositionForTempElement = null;
  931.    let testImgDetected = false;
  932.    let testImg;
  933.    let testImageCompWidth;
  934.    let testImgCou = 0
  935.    let figureChilds;
  936.    let figureComWidth;
  937.    let fcCou = 0; */
  938.    let content = content_pointer.parentElement;
  939.  
  940.    if (!widthChecker) {
  941.        widthChecker = document.createElement("div");
  942.        widthChecker.setAttribute('id','widthChecker');
  943.        widthChecker.style.display = 'flex';
  944.    }
  945.  
  946.    if (content) {
  947.        posCurrentElement = initTargetToInsert(posCurrentElement, 'term', currentElement);
  948.        currentElement.parentNode.insertBefore(widthChecker, posCurrentElement);
  949.        widthCheckerStyle = getComputedStyle(widthChecker);
  950.        /* testImg = currentElement.previousSibling;
  951.        if (testImg) {
  952.            while (!testImgDetected&&testImgCou<4) {
  953.                if (testImg&&testImg.nodeName.toLowerCase() === 'figure') {
  954.                    figureComWidth = getComputedStyle(testImg);
  955.                    figureComWidth = parseInt(figureComWidth.width);
  956.                    figureChilds = testImg.childNodes;
  957.                    if (figureChilds&&figureChilds.length > 0) {
  958.                        while (!testImgDetected&&figureChilds[fcCou]) {
  959.                            if (figureChilds[fcCou] instanceof HTMLImageElement) {
  960.                                testImgDetected = true;
  961.                                testImageCompWidth = getComputedStyle(figureChilds[fcCou]);
  962.                                testImageCompWidth = parseInt(testImageCompWidth.width);
  963.                                console.log('img_f_w:'+figureComWidth+'; img_w:'+testImageCompWidth+';');
  964.                            }
  965.                            fcCou++;
  966.                        }
  967.                    }
  968.                }
  969.                if (testImg instanceof HTMLImageElement) {
  970.                    testImgDetected = true;
  971.                    testImageCompWidth = getComputedStyle(testImg);
  972.                    testImageCompWidth = parseInt(testImageCompWidth.width);
  973.                    console.log('img_w:'+testImageCompWidth+';');
  974.                }
  975.                if (!testImg.previousSibling) {
  976.                    break;
  977.                }
  978.                testImg = testImg.previousSibling;
  979.                testImgCou++;
  980.            }
  981.        }
  982.        console.log('cp_w:'+parseInt(content_pointerStyle.width)+'; wc_w:'+parseInt(widthCheckerStyle.width)+';'); */
  983.        if (parseInt(widthCheckerStyle.width) >= (parseInt(content_pointerStyle.width) - 50)) {
  984.            return true;
  985.        }
  986.    }
  987.    currentElement.parentNode.insertBefore(rb_tempElement, currentElement.nextSibling);
  988.    rb_tempElement_check = true;
  989.    return false;
  990. }
  991.  
  992. /* function currentElementReceiver(revert, curSum, elList, currentElement) {
  993.    let origCurrentElement = currentElement;
  994.    let content_pointer = document.querySelector("#content_pointer_id");
  995.    let sameElementAfterWidth = false;
  996.    let testCou = 0;
  997.    while (elList[curSum]&&sameElementAfterWidth==false&&testCou < 5) {
  998.        currentElement = elList[curSum];
  999.        try {
  1000.            sameElementAfterWidth=true;
  1001.            sameElementAfterWidth = checkAdsWidth(content_pointer, 0, currentElement);
  1002.        } catch (ex) {
  1003.            console.log(ex.message);
  1004.        }
  1005.        revert? curSum--: curSum++;
  1006.        testCou++;
  1007.    }
  1008.    return currentElement?currentElement:origCurrentElement;
  1009. } */
  1010.  
  1011. function currentElementReceiverSpec(revert, curSum, elList, currentElement) {
  1012.    let origCurrentElement = currentElement;
  1013.    let content_pointer = document.querySelector("#content_pointer_id"); /* orig */
  1014.    let sameElementAfterWidth = false;
  1015.    let testCou = 0;
  1016.    while (elList[curSum]&&sameElementAfterWidth==false&&testCou < 5) {
  1017.        currentElement = elList[curSum]['element'];
  1018.        try {
  1019.            sameElementAfterWidth=true;
  1020.            sameElementAfterWidth = checkAdsWidth(content_pointer, 0, currentElement);
  1021.        } catch (ex) {
  1022.            console.log(ex.message);
  1023.        }
  1024.        revert? curSum--: curSum++;
  1025.        testCou++;
  1026.    }
  1027.    return currentElement?currentElement:origCurrentElement;
  1028. }
  1029.  
  1030. function excIdClUnpacker() {
  1031.    let excArr = [],
  1032.        cou = 0,
  1033.        currExcStr = '',
  1034.        curExcFirst = '';
  1035.    excArr['id'] = [];
  1036.    excArr['class'] = [];
  1037.    excArr['tag'] = [];
  1038.    if (excIdClass&&excIdClass.length > 0) {
  1039.        while (excIdClass[cou]) {
  1040.            currExcStr = excIdClass[cou];
  1041.            if (currExcStr.length > 0) {
  1042.                curExcFirst = currExcStr.substring(0,1);
  1043.                switch (curExcFirst) {
  1044.                    case '#':
  1045.                        if (currExcStr.length > 1) {
  1046.                            currExcStr = currExcStr.substring(1);
  1047.                            excArr['id'].push(currExcStr);
  1048.                        }
  1049.                        break;
  1050.                    case '.':
  1051.                        if (currExcStr.length > 1) {
  1052.                            currExcStr = currExcStr.substring(1);
  1053.                            excArr['class'].push(currExcStr);
  1054.                        }
  1055.                        break;
  1056.                    default:
  1057.                        excArr['tag'].push(currExcStr);
  1058.                        break;
  1059.                }
  1060.                cou++;
  1061.            }
  1062.        }
  1063.    }
  1064.    return excArr;
  1065. }
  1066.  
  1067. function asyncBlocksInsertingFunction(blockSettingArray) {
  1068.    try {
  1069.        var content_pointer = document.querySelector("#content_pointer_id"); /* orig */
  1070.        var parent_with_content = content_pointer.parentElement;
  1071.        var lordOfElements = parent_with_content;
  1072.        parent_with_content = parent_with_content.parentElement;
  1073.        var newElement = document.createElement("div");
  1074.        var elementToAdd;
  1075.        var elementToAddStyle;
  1076.        var poolbackI = 0;
  1077.        var counter = 0;
  1078.        var currentElement;
  1079.        var repeatableCurrentElement;
  1080.        var repeatableSuccess;
  1081.        var reCou;
  1082.        var curFirstPlace;
  1083.        var curElementCount;
  1084.        var curElementStep;
  1085.        var backElement = 0;
  1086.        var sumResult = 0;
  1087.        var curSumResult = 0;
  1088.        var repeat = false;
  1089.        var currentElementChecker = false;
  1090.        let containerFor6th = [];
  1091.        let containerFor7th = [];
  1092.        var posCurrentElement;
  1093.        var block_number;
  1094.        let contentLength = content_pointer.getAttribute('data-content-length');
  1095.        let rejectedBlocks = content_pointer.getAttribute('data-rejected-blocks');
  1096.        if (rejectedBlocks&&rejectedBlocks.length > 0) {
  1097.            rejectedBlocks = rejectedBlocks.split(',');
  1098.        }
  1099.        let widthCheck = false;
  1100.        let currentElementList;
  1101.        var testElement1 = null;
  1102.        var termorarity_parent_with_content = parent_with_content;
  1103.        var termorarity_parent_with_content_length = 0;
  1104.        var headersList = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
  1105.        for (var hc1 = 0; hc1 < headersList.length; hc1++) {
  1106.            termorarity_parent_with_content_length += termorarity_parent_with_content.getElementsByTagName(headersList[hc1]).length;
  1107.        }
  1108.  
  1109.        let detailedElementList;
  1110.        let ExcStrCou = 1;
  1111.        let detailedQueryString;
  1112.        let usedElement;
  1113.        let tagList = [];
  1114.        let localSumResult;
  1115.        let binderName;
  1116.  
  1117.        var removeClearing;
  1118.        var repeatableBlockIdentifier = 0;
  1119.  
  1120.        var i;
  1121.  
  1122.        if (contentLength < 1) {
  1123.            contentLength = parent_with_content.innerText.length
  1124.        }
  1125.  
  1126.        rb_tempElement = document.querySelector('#rb_tempElement');
  1127.        if (!rb_tempElement) {
  1128.            rb_tempElement = document.createElement('span');
  1129.            rb_tempElement.setAttribute('id', 'rb_tempElement');
  1130.        }
  1131.  
  1132.        function getFromConstructions(currentElement) {
  1133.            if (currentElement.parentElement.tagName.toLowerCase() == "blockquote") {
  1134.                currentElement = currentElement.parentElement;
  1135.                /* initTargetToInsert(blockSettingArray, 'element', currentElement); */
  1136.                currentElement.parentNode.insertBefore(rb_tempElement, currentElement);
  1137.                rb_tempElement_check = true;
  1138.                sameElementAfterFromConstruction=false;
  1139.            } else if (["tr","td","th","thead","tbody","table"].includes(currentElement.parentElement.tagName.toLowerCase())) {
  1140.                currentElement = currentElement.parentElement;
  1141.                while (["tr","td","th","thead","tbody","table"].includes(currentElement.parentElement.tagName.toLowerCase())) {
  1142.                    currentElement = currentElement.parentElement;
  1143.                }
  1144.                currentElement.parentNode.insertBefore(rb_tempElement, currentElement);
  1145.                rb_tempElement_check = true;
  1146.                sameElementAfterFromConstruction=false;
  1147.            }
  1148.            return currentElement;
  1149.        }
  1150.  
  1151.        function directClassElementDetecting(blockSettingArray, directElement) {
  1152.            let findQuery = 0;
  1153.            let directClassElementResult = [];
  1154.  
  1155.            currentElement = document.querySelectorAll(directElement);
  1156.            if (currentElement.length > 0) {
  1157.                if (blockSettingArray[i]['elementPlace'] > 1) {
  1158.                    if (currentElement.length >= blockSettingArray[i]['elementPlace']) {
  1159.                        currentElement = currentElement[blockSettingArray[i]['elementPlace']-1];
  1160.                    } else if (currentElement.length < blockSettingArray[i]['elementPlace']) {
  1161.                        currentElement = currentElement[currentElement.length - 1];
  1162.                    } else {
  1163.                        findQuery = 1;
  1164.                    }
  1165.                } else if (blockSettingArray[i]['elementPlace'] < 0) {
  1166.                    if ((currentElement.length + blockSettingArray[i]['elementPlace'] + 1) > 0) {
  1167.                        currentElement = currentElement[currentElement.length + blockSettingArray[i]['elementPlace']];
  1168.                    } else {
  1169.                        findQuery = 1;
  1170.                    }
  1171.                } else {
  1172.                    findQuery = 1;
  1173.                }
  1174.            } else {
  1175.                findQuery = 1;
  1176.            }
  1177.  
  1178.            directClassElementResult['findQuery'] = findQuery;
  1179.            directClassElementResult['currentElement'] = currentElement;
  1180.  
  1181.            return directClassElementResult;
  1182.        }
  1183.  
  1184.        function placingToH1(usedElement, elementTagToFind) {
  1185.            let uselessLet;
  1186.            currentElement = usedElement.querySelectorAll(elementTagToFind);
  1187.  
  1188.            if (currentElement.length < 1) {
  1189.                if (usedElement.parentElement) {
  1190.                    uselessLet = placingToH1(usedElement.parentElement, elementTagToFind);
  1191.                }
  1192.            }
  1193.            return currentElement;
  1194.        }
  1195.  
  1196.        function elementsCleaning(excArr, elList, pwcLocal, gatherString) {
  1197.            let markedClass = 'rb_m_inc';
  1198.            let markedClassBad = 'rb_m_exc';
  1199.            let cou = 0;
  1200.            let cou1 = 0;
  1201.            let finalArr = [];
  1202.            let finalArrClear = [];
  1203.            let checkNearest;
  1204.            let outOfRangeCheck;
  1205.            let gatherRejected;
  1206.            let allower;
  1207.  
  1208.            try {
  1209.                while (elList[cou]) {
  1210.                    allower = true;
  1211.                    if (!elList[cou].classList.contains(markedClassBad)) {
  1212.                        if (excArr&&excArr.length > 0) {
  1213.                            cou1 = 0;
  1214.                            while (excArr[cou1]) {
  1215.                                checkNearest = elList[cou].parentElement.closest(excArr[cou1]);
  1216.                                if (checkNearest) {
  1217.                                    checkNearest.classList.add('currClosest');
  1218.                                    outOfRangeCheck = pwcLocal.querySelector('.currClosest');
  1219.                                    if (outOfRangeCheck) {
  1220.                                        allower = false;
  1221.                                        checkNearest.classList.add(markedClass);
  1222.                                        gatherRejected = checkNearest.querySelectorAll(gatherString);
  1223.                                        if (gatherRejected.length > 0) {
  1224.                                            for (let i1 = 0; i1 < gatherRejected.length; i1++) {
  1225.                                                gatherRejected[i1].classList.add(markedClassBad);
  1226.                                            }
  1227.                                        }
  1228.                                    }
  1229.                                    checkNearest.classList.remove('currClosest');
  1230.                                }
  1231.                                cou1++;
  1232.                            }
  1233.                        }
  1234.                        if (allower===true) {
  1235.                            elList[cou].classList.add(markedClass);
  1236.                            /* finalArr.push(elList[cou]); */
  1237.                        }
  1238.                    }
  1239.                    cou++;
  1240.                }
  1241.                finalArr = pwcLocal.querySelectorAll('.'+markedClass+':not('+markedClassBad+')');
  1242.                finalArrClear = pwcLocal.querySelectorAll('.'+markedClass+',.'+markedClassBad);
  1243.                if (finalArrClear&&finalArrClear.length > 0) {
  1244.                    for (let i1 = 0; i1 < finalArrClear.length; i1++) {
  1245.                        finalArrClear[i1].classList.remove(markedClass,markedClassBad);
  1246.                    }
  1247.                }
  1248.            } catch (er) {
  1249.                console.log(er.message);
  1250.            }
  1251.            return finalArr;
  1252.        }
  1253.  
  1254.        function cureentElementsGather(usedElement, loopLimit = 2, localPwc = parent_with_content) {
  1255.            let curElementSearchRepeater = true;
  1256.            let curElementSearchCounter = 0;
  1257.            let currentElementLoc = null;
  1258.            let ExcludedStringBegin = '';
  1259.            let ExcludedString = '';
  1260.            let ExcludedStringEnd = '';
  1261.            let tagListString = '';
  1262.            let tagListStringExc = '';
  1263.            let cou = 0;
  1264.            /* let excArr = excIdClUnpacker(); */
  1265.            let tagListCou = 0;
  1266.  
  1267.            if (usedElement=='h1') {
  1268.                currentElementLoc = placingToH1(localPwc, usedElement);
  1269.            } else {
  1270.                if (usedElement=='h2-4') {tagList = ['h2','h3','h3'];}
  1271.                else                     {tagList = [usedElement];   }
  1272.                while (tagList[tagListCou]) {
  1273.                    tagListString += ((cou++>0)?',':'')+tagList[tagListCou];
  1274.                    tagListStringExc += ':not('+tagList[tagListCou]+')';
  1275.                    tagListCou++;
  1276.                }
  1277.  
  1278.                ExcludedString = '';
  1279.                if (excIdClass&&excIdClass.length > 0) {
  1280.                    for (let i2 = 0; i2 < excIdClass.length; i2++) {
  1281.                        if (excIdClass[i2].length > 0) {
  1282.                            ExcludedString += (i2>0?',':'')+excIdClass[i2]+tagListStringExc;
  1283.                        }
  1284.                    }
  1285.                }
  1286.                detailedQueryString += tagListString+','+ExcludedString;
  1287.  
  1288.                /* console.log(detailedQueryString); */
  1289.                while (curElementSearchRepeater&&curElementSearchCounter < loopLimit) {
  1290.                    try {
  1291.                        currentElementLoc = localPwc.querySelectorAll(tagListString);
  1292.                    } catch (e1) {console.log(e1.message);}
  1293.                    if (!currentElementLoc) {
  1294.                        if (localPwc.parentElement) {
  1295.                            localPwc = localPwc.parentElement;
  1296.                        } else {
  1297.                            break;
  1298.                        }
  1299.                    } else {
  1300.                        currentElementLoc = elementsCleaning(excIdClass, currentElementLoc, localPwc, detailedQueryString);
  1301.                        curElementSearchRepeater = false;
  1302.                    }
  1303.                    curElementSearchCounter++;
  1304.                }
  1305.            }
  1306.            return currentElementLoc;
  1307.        }
  1308.  
  1309.        function currentElementReceiver(revert, localCurEl = currentElement) {
  1310.            let origCurEl = localCurEl;
  1311.            curSumResult = sumResult;
  1312.            detailedElementList = localCurEl;
  1313.            sameElementAfterWidth = false;
  1314.            let testCou = 0;
  1315.            while (detailedElementList[curSumResult]&&sameElementAfterWidth==false&&testCou < 8) {
  1316.                localCurEl = detailedElementList[curSumResult];
  1317.                try {
  1318.                    sameElementAfterWidth=true;
  1319.                    sameElementAfterWidth = checkAdsWidth(content_pointer, blockSettingArray[i]["elementPosition"], localCurEl);
  1320.                } catch (ex) {
  1321.                    console.log(ex.message);
  1322.                }
  1323.                revert? curSumResult--: curSumResult++;
  1324.                testCou++;
  1325.            }
  1326.            if (localCurEl) {
  1327.                currentElementChecker = true;
  1328.            }
  1329.            return localCurEl?localCurEl:origCurEl;
  1330.        }
  1331.        
  1332.        function endingActions(block_number) {
  1333.            usedBlockSettingArrayIds.push(block_number);
  1334.            blockSettingArray.splice(i--, 1);
  1335.            poolbackI = 1;
  1336.        }
  1337.  
  1338.        for (i = 0; i < blockSettingArray.length; i++) {
  1339.            currentElement = null;
  1340.            currentElementChecker = false;
  1341.            sameElementAfterWidth = false;
  1342.            sameElementAfterExcClassId = false;
  1343.            sameElementAfterFromConstruction = false;
  1344.            tagListCou = 0;
  1345.            poolbackI = 0;
  1346.            detailedQueryString = '';
  1347.            binderName = elementBinderNameGenerator();
  1348.  
  1349.            try {
  1350.                if (!blockSettingArray[i]["text"]
  1351.                    ||(blockSettingArray[i]["text"]&&blockSettingArray[i]["text"].length < 1)
  1352.                    ||(rejectedBlocks&&rejectedBlocks.includes(blockSettingArray[i]["id"]))
  1353.                    ||((blockSettingArray[i]["maxHeaders"] > 0)&&(blockSettingArray[i]["maxHeaders"] < parseInt(termorarity_parent_with_content_length)))
  1354.                    ||((blockSettingArray[i]["maxSymbols"] > 0)&&(blockSettingArray[i]["maxSymbols"] < parseInt(contentLength)))
  1355.                    ||(content_pointer.classList.contains("hard-content")&&blockSettingArray[i]["setting_type"]!=3)
  1356.                ) {
  1357.                    blockSettingArray.splice(i--, 1);
  1358.                    poolbackI = 1;
  1359.                    continue;
  1360.                }
  1361.  
  1362.                block_number = 0;
  1363.  
  1364.                elementToAdd = document.createElement("div");
  1365.                elementToAdd.classList.add("percentPointerClass");
  1366.                elementToAdd.classList.add("marked");
  1367.                if (blockSettingArray[i]["sc"]==1) {
  1368.                    elementToAdd.classList.add("scMark");
  1369.                }
  1370.                elementToAdd.innerHTML = blockSettingArray[i]["text"];
  1371.                elementToAdd.dataset.rbinder = binderName;
  1372.                block_number = elementToAdd.children[0].attributes['data-id'].value;
  1373.  
  1374.                if (blockDuplicate == 'no') {
  1375.                    if (usedBlockSettingArrayIds.length > 0) {
  1376.                        for (let i1 = 0; i1 < usedBlockSettingArrayIds.length; i1++) {
  1377.                            if (block_number==usedBlockSettingArrayIds[i1]) {
  1378.                                blockSettingArray.splice(i--, 1);
  1379.                                poolbackI = 1;
  1380.                                break;
  1381.                            }
  1382.                        }
  1383.                        if (poolbackI == 1) {
  1384.                            continue;
  1385.                        }
  1386.                    }
  1387.                }
  1388.  
  1389.                elementToAddStyle = createStyleElement(block_number, blockSettingArray[i]["elementCss"]);
  1390.  
  1391.                if (elementToAddStyle&&elementToAddStyle!='default') {
  1392.                    elementToAdd.style.textAlign = elementToAddStyle;
  1393.                }
  1394.  
  1395.                if ((blockSettingArray[i]["minHeaders"] > 0)&&(blockSettingArray[i]["minHeaders"] > termorarity_parent_with_content_length)) {continue;}
  1396.                if (blockSettingArray[i]["minSymbols"] > contentLength) {continue;}
  1397.  
  1398.                if (blockSettingArray[i]["setting_type"] == 1) {
  1399.                    currentElement = cureentElementsGather(blockSettingArray[i]["element"].toLowerCase());
  1400.                    if (currentElement) {
  1401.                        if (blockSettingArray[i]["elementPlace"] < 0) {
  1402.                            sumResult = currentElement.length + blockSettingArray[i]["elementPlace"];
  1403.                            if (sumResult >= 0 && sumResult < currentElement.length) {
  1404.                                currentElement = currentElementReceiver(true);
  1405.                            }
  1406.                        } else {
  1407.                            sumResult = blockSettingArray[i]["elementPlace"] - 1;
  1408.                            if (sumResult < currentElement.length) {
  1409.                                currentElement = currentElementReceiver(false);
  1410.                            }
  1411.                        }
  1412.                    }
  1413.                    if (currentElement != undefined && currentElement != null && currentElementChecker) {
  1414.                        posCurrentElement = initTargetToInsert(blockSettingArray[i]["elementPosition"], 'element', currentElement);
  1415.                        currentElement.parentNode.insertBefore(elementToAdd, posCurrentElement);
  1416.                        currentElement.classList.add('rbinder-'+binderName);
  1417.                        elementToAdd.classList.remove('coveredAd');
  1418.                        usedBlockSettingArrayIds.push(block_number);
  1419.                        blockSettingArray.splice(i--, 1);
  1420.                        poolbackI = 1;
  1421.                        rb_tempElement_check = false;
  1422.                    } else {
  1423.                        repeat = true;
  1424.                    }
  1425.                }
  1426.                else if (blockSettingArray[i]["setting_type"] == 2) {
  1427.                    if (blockDuplicate == 'no') {
  1428.                        blockSettingArray[i]["elementCount"] = 1;
  1429.                    }
  1430.                    repeatableCurrentElement = [];
  1431.                    reCou = 0;
  1432.                    curFirstPlace = blockSettingArray[i]["firstPlace"];
  1433.                    curElementCount = blockSettingArray[i]["elementCount"];
  1434.                    curElementStep = blockSettingArray[i]["elementStep"];
  1435.                    repeatableSuccess = false;
  1436.  
  1437.                    elementToAddStyle = createStyleElement(block_number, blockSettingArray[i]["elementCss"]);
  1438.  
  1439.                    repeatableCurrentElement = cureentElementsGather(blockSettingArray[i]["element"].toLowerCase());
  1440.                    if (repeatableCurrentElement) {
  1441.                        for (let i1 = 0; i1 < blockSettingArray[i]["elementCount"]; i1++) {
  1442.                            currentElementChecker = false;
  1443.                            let repElementToAdd = document.createElement("div");
  1444.                            repElementToAdd.classList.add("percentPointerClass");
  1445.                            repElementToAdd.classList.add("marked");
  1446.                            if (blockSettingArray[i]["sc"]==1) {
  1447.                                repElementToAdd.classList.add("scMark");
  1448.                            }
  1449.                            repElementToAdd.classList.add("repeatable-mark-"+repeatableBlockIdentifier);
  1450.                            repElementToAdd.innerHTML = blockSettingArray[i]["text"];
  1451.  
  1452.                            if (elementToAddStyle&&elementToAddStyle!='default') {
  1453.                                repElementToAdd.style.textAlign = elementToAddStyle;
  1454.                            }
  1455.  
  1456.                            sumResult = Math.round(parseInt(blockSettingArray[i]["firstPlace"]) + (i1*parseInt(blockSettingArray[i]["elementStep"])) - 1);
  1457.                            if (sumResult < repeatableCurrentElement.length) {
  1458.                                currentElement = currentElementReceiver(false, repeatableCurrentElement);
  1459.                            }
  1460.  
  1461.                            if (currentElement != undefined && currentElement != null && currentElementChecker) {
  1462.                                posCurrentElement = initTargetToInsert(blockSettingArray[i]["elementPosition"], 'element', currentElement);
  1463.                                currentElement.parentNode.insertBefore(repElementToAdd, posCurrentElement);
  1464.                                currentElement.classList.add('rbinder-'+binderName);
  1465.                                repElementToAdd.classList.remove('coveredAd');
  1466.                                curFirstPlace = sumResult + parseInt(blockSettingArray[i]["elementStep"]) + 1;
  1467.                                curElementCount--;
  1468.                                repeatableSuccess = true;
  1469.                            } else {
  1470.                                repeatableSuccess = false;
  1471.                                break;
  1472.                            }
  1473.                        }
  1474.                    }
  1475.                    if (repeatableSuccess==true) {
  1476.                        usedBlockSettingArrayIds.push(block_number);
  1477.                        blockSettingArray.splice(i--, 1);
  1478.                        poolbackI = 1;
  1479.                        repeatableBlockIdentifier++;
  1480.                    } else {
  1481.                        if (!blockSettingArray[i]["unsuccess"]) {
  1482.                            blockSettingArray[i]["unsuccess"] = 1;
  1483.                        } else {
  1484.                            blockSettingArray[i]["unsuccess"] = Math.round(blockSettingArray[i]["unsuccess"] + 1);
  1485.                        }
  1486.                        if (blockSettingArray[i]["unsuccess"] > 10) {
  1487.                            usedBlockSettingArrayIds.push(block_number);
  1488.                            blockSettingArray.splice(i--, 1);
  1489.                            poolbackI = 1;
  1490.                        } else {
  1491.                            blockSettingArray[i]["firstPlace"] = curFirstPlace;
  1492.                            blockSettingArray[i]["elementCount"] = curElementCount;
  1493.                            blockSettingArray[i]["elementStep"] = curElementStep;
  1494.                            repeat = true;
  1495.                        }
  1496.                    }
  1497.                }
  1498.                else if (blockSettingArray[i]["setting_type"] == 3) {
  1499.                    let elementTypeSymbol = '';
  1500.                    let elementSpaceSymbol = '';
  1501.                    let elementName = '';
  1502.                    let elementType = '';
  1503.                    let elementTag  = '';
  1504.                    let findQuery = 0;
  1505.                    let directClassResult = [];
  1506.                    let directElement = blockSettingArray[i]["directElement"].trim();
  1507.  
  1508.                    if (directElement.search('#') > -1) {
  1509.                        findQuery = 1;
  1510.                    } else if ((directElement.search('#') < 0)&&(directElement.search('.') > -1)) {
  1511.                        directClassResult = directClassElementDetecting(blockSettingArray, directElement);
  1512.                        findQuery = directClassResult['findQuery'];
  1513.                        currentElement = directClassResult['currentElement'];
  1514.                    }
  1515.                    if (findQuery == 1) {
  1516.                        currentElement = document.querySelector(directElement);
  1517.                    }
  1518.                    if (currentElement) {
  1519.                        currentElementChecker = true;
  1520.                    }
  1521.  
  1522.                    if (currentElement != undefined && currentElement != null && currentElementChecker) {
  1523.                        posCurrentElement = initTargetToInsert(blockSettingArray[i]["elementPosition"], 'element', currentElement);
  1524.                        currentElement.parentNode.insertBefore(elementToAdd, posCurrentElement);
  1525.                        elementToAdd.classList.remove('coveredAd');
  1526.                        currentElement.classList.add('rbinder-'+binderName);
  1527.                        usedBlockSettingArrayIds.push(block_number);
  1528.                        blockSettingArray.splice(i--, 1);
  1529.                        poolbackI = 1;
  1530.                    } else {
  1531.                        repeat = true;
  1532.                    }
  1533.                }
  1534.                else if (blockSettingArray[i]["setting_type"] == 4) {
  1535.                    document.querySelector("#content_pointer_id").parentElement.append(elementToAdd);
  1536.                    usedBlockSettingArrayIds.push(block_number);
  1537.                    blockSettingArray.splice(i--, 1);
  1538.                    poolbackI = 1;
  1539.                }
  1540.                else if (blockSettingArray[i]["setting_type"] == 5) {
  1541.                    let currentElementList = cureentElementsGather('p', 1, content_pointer.parentElement);
  1542.                    if (currentElementList&&currentElementList.length > 0) {
  1543.                        let pCount = currentElementList.length;
  1544.                        let elementNumber = Math.round(pCount/2);
  1545.                        if (pCount > 1) {
  1546.                            currentElement = currentElementList[elementNumber+1];
  1547.                        }
  1548.                        if (currentElement != undefined && currentElement != null) {
  1549.                            if (pCount > 1) {
  1550.                                currentElement.parentNode.insertBefore(elementToAdd, currentElement);
  1551.                            } else {
  1552.                                currentElement.parentNode.insertBefore(elementToAdd, currentElement.nextSibling);
  1553.                            }
  1554.                            elementToAdd.classList.remove('coveredAd');
  1555.                            currentElement.classList.add('rbinder-'+binderName);
  1556.                            usedBlockSettingArrayIds.push(block_number);
  1557.                            blockSettingArray.splice(i--, 1);
  1558.                            poolbackI = 1;
  1559.                        } else {
  1560.                            repeat = true;
  1561.                        }
  1562.                    } else {
  1563.                        repeat = true;
  1564.                    }
  1565.                }
  1566.                else if (blockSettingArray[i]["setting_type"] == 6) {
  1567.                    if (containerFor6th.length > 0) {
  1568.                        for (let j = 0; j < containerFor6th.length; j++) {
  1569.                            if (containerFor6th[j]["elementPlace"]>blockSettingArray[i]["elementPlace"]) {
  1570.                                /* continue; */
  1571.                                if (j == containerFor6th.length-1) {
  1572.                                    containerFor6th.push(blockSettingArray[i]);
  1573.                                    /* usedAdBlocksArray.push(checkIfBlockUsed); */
  1574.                                    usedBlockSettingArrayIds.push(block_number);
  1575.                                    blockSettingArray.splice(i--, 1);
  1576.                                    poolbackI = 1;
  1577.                                    break;
  1578.                                }
  1579.                            } else {
  1580.                                for (let k = containerFor6th.length-1; k > j-1; k--) {
  1581.                                    containerFor6th[k + 1] = containerFor6th[k];
  1582.                                }
  1583.                                containerFor6th[j] = blockSettingArray[i];
  1584.                                /* usedAdBlocksArray.push(checkIfBlockUsed); */
  1585.                                usedBlockSettingArrayIds.push(block_number);
  1586.                                blockSettingArray.splice(i--, 1);
  1587.                                poolbackI = 1;
  1588.                                break;
  1589.                            }
  1590.                        }
  1591.                    } else {
  1592.                        containerFor6th.push(blockSettingArray[i]);
  1593.                        usedBlockSettingArrayIds.push(block_number);
  1594.                        blockSettingArray.splice(i--, 1);
  1595.                        poolbackI = 1;
  1596.                    }
  1597.                /* vidpravutu v vidstiinuk dlya 6ho tipa */
  1598.                }
  1599.                else if (blockSettingArray[i]["setting_type"] == 7) {
  1600.                    if (containerFor7th.length > 0) {
  1601.                        for (let j = 0; j < containerFor7th.length; j++) {
  1602.                            if (containerFor7th[j]["elementPlace"]>blockSettingArray[i]["elementPlace"]) {
  1603.                                /* continue; */
  1604.                                if (j == containerFor7th.length-1) {
  1605.                                    containerFor7th.push(blockSettingArray[i]);
  1606.                                    usedBlockSettingArrayIds.push(block_number);
  1607.                                    blockSettingArray.splice(i--, 1);
  1608.                                    poolbackI = 1;
  1609.                                    break;
  1610.                                }
  1611.                            } else {
  1612.                                for (let k = containerFor7th.length-1; k > j-1; k--) {
  1613.                                    containerFor7th[k + 1] = containerFor7th[k];
  1614.                                }
  1615.                                containerFor7th[j] = blockSettingArray[i];
  1616.                                usedBlockSettingArrayIds.push(block_number);
  1617.                                blockSettingArray.splice(i--, 1);
  1618.                                poolbackI = 1;
  1619.                                break;
  1620.                            }
  1621.                        }
  1622.                    } else {
  1623.                        containerFor7th.push(blockSettingArray[i]);
  1624.                        usedBlockSettingArrayIds.push(block_number);
  1625.                        blockSettingArray.splice(i--, 1);
  1626.                        poolbackI = 1;
  1627.                    }
  1628.                /* vidpravutu v vidstiinuk dlya 7ho tipa */
  1629.                }
  1630.            } catch (e) {
  1631.                console.log(e.message);
  1632.            }
  1633.        }
  1634.  
  1635.        var array = textLengthGatherer(lordOfElements),
  1636.            tlArray = array.array,
  1637.            length = array.length;
  1638.  
  1639.        if (containerFor6th.length > 0) {
  1640.            percentInserter(lordOfElements, containerFor6th, tlArray, length);
  1641.        }
  1642.        if (containerFor7th.length > 0) {
  1643.            symbolInserter(lordOfElements, containerFor7th, tlArray);
  1644.        }
  1645.        shortcodesInsert();
  1646.        let stopper = 0;
  1647.  
  1648.        window.addEventListener('load', function () {
  1649.            if (repeat = true) {
  1650.                setTimeout(function () {
  1651.                    /* asyncBlocksInsertingFunction(blockSettingArray, contentLength) */
  1652.                    asyncBlocksInsertingFunction(blockSettingArray);
  1653.                }, 100);
  1654.            }
  1655.        });
  1656.    } catch (e) {
  1657.        console.log(e.message);
  1658.    }
  1659. }
  1660.  
  1661. function possibleTagsInCheckConfirmer(possibleTagsArray, possibleTagsInCheck) {
  1662.    if (possibleTagsArray.includes("LI")) {
  1663.        if (possibleTagsArray.includes("UL")) {
  1664.            possibleTagsInCheck.push("UL");
  1665.        }
  1666.        if (possibleTagsArray.includes("OL")) {
  1667.            possibleTagsInCheck.push("OL");
  1668.        }
  1669.    }
  1670.  
  1671.    return false;
  1672. }
  1673.  
  1674. function textLengthGatherer(lordOfElementsLoc) {
  1675.    var possibleTagsArray;
  1676.    if (typeof tagsListForTextLength!=="undefined") {
  1677.        possibleTagsArray = tagsListForTextLength;
  1678.    } else {
  1679.        possibleTagsArray = ["P", "H1", "H2", "H3", "H4", "H5", "H6", "DIV", "BLOCKQUOTE", "INDEX", "ARTICLE", "SECTION"];
  1680.    }
  1681.    let possibleTagsInCheck = ["DIV", "INDEX", "SECTION"];
  1682.  
  1683.    possibleTagsInCheckConfirmer(possibleTagsArray, possibleTagsInCheck);
  1684.    let excArr = excIdClUnpacker(),
  1685.        textLength = 0,
  1686.        tlArray = [];
  1687.  
  1688.    function textLengthGathererRec(lordOfElementsLoc) {
  1689.        let allowed;
  1690.        let cou1;
  1691.        let classesArray;
  1692.        let countSuccess = 0;
  1693.        try {
  1694.            for (let i = 0; i < lordOfElementsLoc.children.length; i++) {
  1695.                if (possibleTagsArray.includes(lordOfElementsLoc.children[i].tagName)
  1696.                    &&!lordOfElementsLoc.children[i].classList.contains("percentPointerClass")
  1697.                    &&lordOfElementsLoc.children[i].id!="toc_container"
  1698.                ) {
  1699.                    if (possibleTagsInCheck.includes(lordOfElementsLoc.children[i].tagName)
  1700.                        &&(lordOfElementsLoc.children[i].children.length > 0)
  1701.                    ) {
  1702.                        allowed = true;
  1703.                        if (lordOfElementsLoc.children[i].id&&excArr['id'].length > 0) {
  1704.                            cou1 = 0;
  1705.                            while (excArr['id'][cou1]) {
  1706.                                if (lordOfElementsLoc.children[i].id.toLowerCase()==excArr['id'][cou1].toLowerCase()) {
  1707.                                    allowed = false;
  1708.                                    break;
  1709.                                }
  1710.                                cou1++;
  1711.                            }
  1712.                        }
  1713.  
  1714.                        if (lordOfElementsLoc.children[i].classList.length > 0&&excArr['class'].length > 0) {
  1715.                            cou1 = 0;
  1716.                            while (excArr['class'][cou1]) {
  1717.                                classesArray = excArr['class'][cou1].split('.');
  1718.                                if (classesArray.every(className => lordOfElementsLoc.children[i].classList.contains(className))) {
  1719.                                    allowed = false;
  1720.                                    break;
  1721.                                }
  1722.                                cou1++;
  1723.                            }
  1724.                        }
  1725.  
  1726.                        if (excArr['tag'].length > 0) {
  1727.                            cou1 = 0;
  1728.                            while (excArr['tag'][cou1]) {
  1729.                                if (lordOfElementsLoc.children[i].tagName.toLowerCase()==excArr['tag'][cou1].toLowerCase()) {
  1730.                                    allowed = false;
  1731.                                    break;
  1732.                                }
  1733.                                cou1++;
  1734.                            }
  1735.                        }
  1736.  
  1737.                        if (allowed) {
  1738.                            if (textLengthGathererRec(lordOfElementsLoc.children[i], excArr, possibleTagsArray, possibleTagsInCheck)) {
  1739.                                countSuccess++;
  1740.                                continue;
  1741.                            }
  1742.                        }
  1743.                    }
  1744.                    textLength = textLength + lordOfElementsLoc.children[i].innerText.length;
  1745.                    tlArray.push({
  1746.                        tag: lordOfElementsLoc.children[i].tagName,
  1747.                        length: lordOfElementsLoc.children[i].innerText.length,
  1748.                        lengthSum: textLength,
  1749.                        element: lordOfElementsLoc.children[i]
  1750.                    });
  1751.                    countSuccess++;
  1752.                }
  1753.            }
  1754.        } catch (er) {
  1755.            console.log(er.message);
  1756.        }
  1757.        return countSuccess > 0;
  1758.    }
  1759.  
  1760.    textLengthGathererRec(lordOfElementsLoc);
  1761.  
  1762.    return {array: tlArray, length: textLength};
  1763. }
  1764.  
  1765. window.asyncFunctionLauncher = function() {
  1766.    if (window.jsInputerLaunch !== undefined
  1767.        &&[15, 10].includes(window.jsInputerLaunch)
  1768.        &&(typeof asyncBlocksInsertingFunction !== 'undefined' )
  1769.        &&(typeof asyncBlocksInsertingFunction === 'function')
  1770.        &&typeof endedSc!=='undefined'&&
  1771.        typeof endedCc!=='undefined'&&
  1772.        typeof usedAdBlocksArray!=='undefined'&&
  1773.        typeof usedBlockSettingArrayIds!=='undefined'&&
  1774.        typeof sameElementAfterWidth!=='undefined'&&
  1775.        typeof sameElementAfterExcClassId!=='undefined'&&
  1776.        typeof sameElementAfterFromConstruction!=='undefined'&&
  1777.        typeof rb_tempElement_check!=='undefined'&&
  1778.        typeof rb_tempElement!=='undefined'&&
  1779.        typeof window.jsInputerLaunch!=='undefined') {
  1780.        /* asyncBlocksInsertingFunction(blockSettingArray, contentLength); */
  1781.        asyncBlocksInsertingFunction(blockSettingArray);
  1782.        if (!endedSc) {
  1783.            shortcodesInsert();
  1784.        }
  1785.        if (!endedCc) {
  1786.            /* clearUnsuitableCache(0); */
  1787.        }
  1788.        /* blocksReposition();
  1789.        cachePlacing();
  1790.        symbolMarkersPlaced(); */
  1791.    } else {
  1792.        setTimeout(function () {
  1793.            asyncFunctionLauncher();
  1794.        }, 50);
  1795.    }
  1796. };
  1797. /* asyncFunctionLauncher(); */
  1798.  
  1799. function asyncInsertingsInsertingFunction(insertingsArray) {
  1800.    let currentElementForInserting = 0;
  1801.    let currentElementToMove = 0;
  1802.    let positionElement = 0;
  1803.    let position = 0;
  1804.    let insertToAdd = 0;
  1805.    let postId = 0;
  1806.    let repeatSearch = 0;
  1807.    if (insertingsArray&&insertingsArray.length > 0) {
  1808.        for (let i = 0; i < insertingsArray.length; i++) {
  1809.            if (!insertingsArray[i]['used']||(insertingsArray[i]['used']&&insertingsArray[i]['used']==0)) {
  1810.                positionElement = insertingsArray[i]['position_element'];
  1811.                position = insertingsArray[i]['position'];
  1812.                insertToAdd = insertingsArray[i]['content'];
  1813.                postId = insertingsArray[i]['postId'];
  1814.  
  1815.                currentElementForInserting = document.querySelector(positionElement);
  1816.  
  1817.                currentElementToMove = document.querySelector('.coveredInsertings[data-id="'+postId+'"]');
  1818.                if (currentElementForInserting) {
  1819.                    if (position==0) {
  1820.                        currentElementForInserting.parentNode.insertBefore(currentElementToMove, currentElementForInserting);
  1821.                        currentElementToMove.classList.remove('coveredInsertings');
  1822.                        insertingsArray[i]['used'] = 1;
  1823.                    } else {
  1824.                        currentElementForInserting.parentNode.insertBefore(currentElementToMove, currentElementForInserting.nextSibling);
  1825.                        currentElementToMove.classList.remove('coveredInsertings');
  1826.                        insertingsArray[i]['used'] = 1;
  1827.                    }
  1828.                } else {
  1829.                    repeatSearch = 1;
  1830.                }
  1831.            }
  1832.        }
  1833.    }
  1834.    if (repeatSearch == 1) {
  1835.        setTimeout(function () {
  1836.            asyncInsertingsInsertingFunction(insertingsArray);
  1837.        }, 100)
  1838.    }
  1839. }
  1840.  
  1841. function insertingsFunctionLaunch() {
  1842.    if (window.jsInsertingsLaunch !== undefined&&jsInsertingsLaunch == 25) {
  1843.        asyncInsertingsInsertingFunction(insertingsArray);
  1844.    } else {
  1845.        setTimeout(function () {
  1846.            insertingsFunctionLaunch();
  1847.        }, 100)
  1848.    }
  1849. }
  1850.  
  1851. function setLongCache() {
  1852.    let xhttp = new XMLHttpRequest();
  1853.    let sendData = 'action=setLongCache&type=longCatching';
  1854.    xhttp.onreadystatechange = function(redata) {
  1855.        if (this.readyState == 4 && this.status == 200) {
  1856.            console.log('long cache deployed');
  1857.        }
  1858.    };
  1859.    xhttp.open("POST", rb_ajaxurl, true);
  1860.    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  1861.    xhttp.send(sendData);
  1862. }
  1863.  
  1864. function cachePlacing(alert_type, errorInfo=null) {
  1865.    let adBlocks = document.querySelectorAll('.percentPointerClass .' + block_classes.join(', .percentPointerClass .'));
  1866.    let curAdBlock;
  1867.    let okStates = ['done','refresh-wait','no-block','fetched'];
  1868.    /* let adId = -1; */
  1869.    let blockAid = null;
  1870.    let blockId;
  1871.  
  1872.    if (typeof cachedBlocksArray !== 'undefined'&&cachedBlocksArray&&cachedBlocksArray.length > 0&&adBlocks&&adBlocks.length > 0) {
  1873.        for (let i = 0; i < adBlocks.length; i++) {
  1874.            blockAid = adBlocks[i]['dataset']['aid'];
  1875.  
  1876.            if (!blockAid) {
  1877.                blockId = adBlocks[i]['dataset']['id'];
  1878.                if (cachedBlocksArray[blockId]) {
  1879.                    jQuery(adBlocks[i]).html(cachedBlocksArray[blockId]);
  1880.                }
  1881.            }
  1882.        }
  1883.    }
  1884.  
  1885.    if (alert_type&&alert_type=='high') {
  1886.        setLongCache();
  1887.    }
  1888. }
  1889.  
  1890. function symbolInserter(lordOfElements, containerFor7th, tlArray) {
  1891.    try {
  1892.        var currentChildrenLength = 0;
  1893.        let previousBreak = 0;
  1894.        let needleLength;
  1895.        let currentSumLength;
  1896.        let elementToAdd;
  1897.        let elementToBind;
  1898.        let elementToAddStyle;
  1899.        let block_number;
  1900.        let binderName;
  1901.  
  1902.        if (!document.getElementById("markedSpan1")) {
  1903.            for (let i = 0; i < containerFor7th.length; i++) {
  1904.                previousBreak = 0;
  1905.                currentChildrenLength = 0;
  1906.                currentSumLength = 0;
  1907.                needleLength = Math.abs(containerFor7th[i]['elementPlace']);
  1908.                binderName = elementBinderNameGenerator();
  1909.  
  1910.                elementToAdd = document.createElement("div");
  1911.                elementToAdd.classList.add("percentPointerClass");
  1912.                elementToAdd.classList.add("marked");
  1913.                if (containerFor7th[i]["sc"]==1) {
  1914.                    elementToAdd.classList.add("scMark");
  1915.                }
  1916.                elementToAdd.dataset.rbinder = binderName;
  1917.                elementToAdd.innerHTML = containerFor7th[i]["text"];
  1918.                block_number = elementToAdd.children[0].attributes['data-id'].value;
  1919.                if (!elementToAdd) {
  1920.                    continue;
  1921.                }
  1922.  
  1923.                elementToAddStyle = createStyleElement(block_number, containerFor7th[i]["elementCss"]);
  1924.  
  1925.                if (elementToAddStyle&&elementToAddStyle!='default') {
  1926.                    elementToAdd.style.textAlign = elementToAddStyle;
  1927.                }
  1928.  
  1929.                if (containerFor7th[i]['elementPlace'] < 0) {
  1930.                    for (let j = tlArray.length-1; j > -1; j--) {
  1931.                        currentSumLength = currentSumLength + tlArray[j]['length'];
  1932.                        if (needleLength < currentSumLength) {
  1933.                            elementToBind = tlArray[j]['element'];
  1934.                            elementToBind = currentElementReceiverSpec(true, j, tlArray, elementToBind);
  1935.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind);
  1936.                            elementToBind.classList.add('rbinder-'+binderName);
  1937.                            elementToAdd.classList.remove('coveredAd');
  1938.                            break;
  1939.                        }
  1940.                    }
  1941.                } else if (containerFor7th[i]['elementPlace'] == 0) {
  1942.                    elementToBind = tlArray[0]['element'];
  1943.                    elementToBind.parentNode.insertBefore(elementToAdd, elementToBind);
  1944.                    elementToBind.classList.add('rbinder-'+binderName);
  1945.                    elementToAdd.classList.remove('coveredAd');
  1946.                } else {
  1947.                    for (let j = 0; j < tlArray.length; j++) {
  1948.                        currentSumLength = currentSumLength + tlArray[j]['length'];
  1949.                        if (needleLength < currentSumLength) {
  1950.                            elementToBind = tlArray[j]['element'];
  1951.                            elementToBind = currentElementReceiverSpec(false, j, tlArray, elementToBind);
  1952.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind.nextSibling);
  1953.                            elementToBind.classList.add('rbinder-'+binderName);
  1954.                            elementToAdd.classList.remove('coveredAd');
  1955.                            break;
  1956.                        }
  1957.                    }
  1958.                }
  1959.            }
  1960.  
  1961.            var spanMarker = document.createElement("span");
  1962.            spanMarker.setAttribute("id", "markedSpan1");
  1963.            lordOfElements.prepend(spanMarker);
  1964.        }
  1965.    } catch (e) {
  1966.        console.log(e);
  1967.    }
  1968. }
  1969.  
  1970. function percentInserter(lordOfElements, containerFor6th, tlArray, textLength) {
  1971.    try {
  1972.        var textNeedyLength = 0;
  1973.        let elementToAdd;
  1974.        var elementToBind;
  1975.        let elementToAddStyle;
  1976.        let block_number;
  1977.        var binderName;
  1978.        /* var checkIfBlockUsed = 0; */
  1979.  
  1980.        function insertByPercents(textLength) {
  1981.            let localMiddleValue = 0;
  1982.  
  1983.            for (let j = 0; j < containerFor6th.length; j++) {
  1984.                textNeedyLength = Math.round(textLength * (containerFor6th[j]["elementPlace"]/100));
  1985.                for (let i = 0; i < tlArray.length; i++) {
  1986.                    if (tlArray[i]['lengthSum'] >= textNeedyLength) {
  1987.                        binderName = elementBinderNameGenerator();
  1988.  
  1989.                        elementToAdd = document.createElement("div");
  1990.                        elementToAdd.classList.add("percentPointerClass");
  1991.                        elementToAdd.classList.add("marked");
  1992.                        if (containerFor6th[j]["sc"]==1) {
  1993.                            elementToAdd.classList.add("scMark");
  1994.                        }
  1995.                        elementToAdd.dataset.rbinder = binderName;
  1996.                        elementToAdd.innerHTML = containerFor6th[j]["text"];
  1997.                        if (!elementToAdd) {
  1998.                            break;
  1999.                        }
  2000.                        block_number = elementToAdd.children[0].attributes['data-id'].value;
  2001.                        elementToAddStyle = createStyleElement(block_number, containerFor6th[j]["elementCss"]);
  2002.                        if (elementToAddStyle&&elementToAddStyle!='default') {
  2003.                            elementToAdd.style.textAlign = elementToAddStyle;
  2004.                        }
  2005.  
  2006.                        localMiddleValue = tlArray[i]['lengthSum'] - Math.round(tlArray[i]['length']/2);
  2007.                        elementToBind = tlArray[i]['element'];
  2008.                        currentElementReceiverSpec(false, i, tlArray, elementToBind);
  2009.                        if (textNeedyLength < localMiddleValue) {
  2010.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind);
  2011.                        } else {
  2012.                            elementToBind.parentNode.insertBefore(elementToAdd, elementToBind.nextSibling);
  2013.                        }
  2014.                        elementToBind.classList.add('rbinder-'+binderName);
  2015.                        elementToAdd.classList.remove('coveredAd');
  2016.                        break;
  2017.                    }
  2018.                }
  2019.            }
  2020.            return false;
  2021.        }
  2022.  
  2023.        function clearTlMarks() {
  2024.            let marksForDeleting = document.querySelectorAll('.textLengthMarker');
  2025.  
  2026.            if (marksForDeleting.length > 0) {
  2027.                for (let i = 0; i < marksForDeleting.length; i++) {
  2028.                    marksForDeleting[i].remove();
  2029.                }
  2030.            }
  2031.        }
  2032.  
  2033.        if (!document.getElementById("markedSpan")) {
  2034.            insertByPercents(textLength);
  2035.            clearTlMarks();
  2036.            var spanMarker = document.createElement("span");
  2037.            spanMarker.setAttribute("id", "markedSpan");
  2038.            lordOfElements.prepend(spanMarker);
  2039.        }
  2040.    } catch (e) {
  2041.        console.log(e.message);
  2042.    }
  2043. }
  2044.  
  2045. function saveContentBlock(contentContainer) {
  2046.    try {
  2047.        if (!gather_content) {
  2048.            console.log('content gather save function entered');
  2049.            let xhttp = new XMLHttpRequest();
  2050.            let sendData = 'action=RFWP_saveContentContainer&type=gatherContentBlock&data='+contentContainer;
  2051.            xhttp.onreadystatechange = function(redata) {
  2052.                if (this.readyState == 4 && this.status == 200) {
  2053.                    console.log('content gather succeed');
  2054.                } else {
  2055.                    console.log('content gather gone wrong');
  2056.                }
  2057.            };
  2058.            xhttp.open("POST", rb_ajaxurl, true);
  2059.            xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  2060.            xhttp.send(sendData);
  2061.        }
  2062.    } catch (er) {
  2063.        console.log('content gather error: '+er+';');
  2064.    }
  2065. }
  2066.  
  2067. window.gatherContentBlock = function() {
  2068.    let cPointer = null,
  2069.        cPointerParent = null,
  2070.        cPointerParentString = null,
  2071.        classWords = ['content','entry','post','wrap','description','taxonomy'],
  2072.        classChoosed = false;
  2073.  
  2074.    cPointer =  document.querySelector('#content_pointer_id');
  2075.    if (cPointer) {
  2076.        if (window.jsInputerLaunch!==15) {
  2077.            return false;
  2078.        }
  2079.        cPointerParent = cPointer.parentElement;
  2080.        if (cPointerParent) {
  2081.            if (cPointerParent.id) {
  2082.                cPointerParentString = '#'+cPointerParent.id;
  2083.            } else {
  2084.                if (cPointerParent.classList.length > 0) {
  2085.                    cPointerParentString = '.'+cPointerParent.classList[0];
  2086.                    for (let j = 0; j < classWords.length; j++) {
  2087.                        for (let i = 0; i < cPointerParent.classList.length; i++) {
  2088.                            if (cPointerParent.classList[i].includes(classWords[j])) {
  2089.                                cPointerParentString = '.'+cPointerParent.classList[i];
  2090.                                classChoosed = true;
  2091.                                break;
  2092.                            }
  2093.                        }
  2094.                        if (classChoosed===true) {
  2095.                            break;
  2096.                        }
  2097.                    }
  2098.                }
  2099.            }
  2100.            if (cPointerParentString) {
  2101.                console.log('content gather content block detected');
  2102.                /* cPointerParentString = JSON.stringify(cPointerParentString); */
  2103.                saveContentBlock(cPointerParentString);
  2104.            }
  2105.        }
  2106.    } else {
  2107.        console.log('content gather delayed');
  2108.        setTimeout(function () {
  2109.            gatherContentBlock();
  2110.        }, 500);
  2111.    }
  2112. };
  2113.  
  2114. window.removeMarginClass = function(blockObject) {
  2115.    if (blockObject && typeof window.jsInputerLaunch !== 'undefined' && [15, 10].includes(window.jsInputerLaunch)) {
  2116.        let binderName,
  2117.            neededElement,
  2118.            currentDirection,
  2119.            seekerIterationCount,
  2120.            currentSubling;
  2121.  
  2122.        binderName = blockObject.dataset.rbinder;
  2123.        if (binderName) {
  2124.            seekerIterationCount = 0;
  2125.            currentDirection = 'before';
  2126.            do {
  2127.                seekerIterationCount++;
  2128.                currentSubling = blockObject.nextElementSibling;
  2129.                if (currentSubling&&currentSubling.classList.contains('rbinder-'+binderName)) {
  2130.                    neededElement = currentSubling;
  2131.                }
  2132.            } while (currentSubling&&!neededElement&&seekerIterationCount < 5);
  2133.  
  2134.            if (!neededElement) {
  2135.                seekerIterationCount = 0;
  2136.                currentDirection = 'after';
  2137.                do {
  2138.                    seekerIterationCount++;
  2139.                    currentSubling = blockObject.previousElementSibling;
  2140.                    if (currentSubling&&currentSubling.classList.contains('rbinder-'+binderName)) {
  2141.                        neededElement = currentSubling;
  2142.                    }
  2143.                } while (currentSubling&&!neededElement&&seekerIterationCount < 5);
  2144.            }
  2145.            if (neededElement) {
  2146.                if (currentDirection === 'before') {
  2147.                    neededElement.classList.remove('rfwp_removedMarginTop');
  2148.                } else {
  2149.                    neededElement.classList.remove('rfwp_removedMarginBottom');
  2150.                }
  2151.            }
  2152.        }
  2153.    }
  2154.  
  2155.    return false;
  2156. };
  2157.  
  2158. function elementBinderNameGenerator() {
  2159.    let binderName = '',
  2160.        checkedElements,
  2161.        passed = false;
  2162.  
  2163.    while (passed===false) {
  2164.        binderName = Math.floor(Math.random()*100000);
  2165.        checkedElements = document.querySelectorAll('[data-rbinder="'+binderName+'"]');
  2166.        if (checkedElements.length < 1) {
  2167.            passed = true;
  2168.        }
  2169.    }
  2170.  
  2171.    return binderName;
  2172. }
  2173. </script>
  2174. <script type="text/javascript" id="yelly-scripts-js-extra">
  2175. /* <![CDATA[ */
  2176. var settings_array = {"rating_text_average":"\u0441\u0440\u0435\u0434\u043d\u0435\u0435","rating_text_from":"\u0438\u0437","lightbox_display":"1"};
  2177. var wps_ajax = {"url":"https:\/\/multisim.su\/wp-admin\/admin-ajax.php","nonce":"4f0478f892"};
  2178. var wpshop_views_counter_params = {"url":"https:\/\/multisim.su\/wp-admin\/admin-ajax.php","nonce":"4f0478f892","is_postviews_enabled":"","post_id":"2"};
  2179. /* ]]> */
  2180. </script>
  2181. <script type="text/javascript" src="https://multisim.su/wp-content/themes/samfirm/assets/js/scripts.min.js" id="yelly-scripts-js"></script>
  2182. <script type="text/javascript" id="jquery-lazyloadxt-js-extra">
  2183. /* <![CDATA[ */
  2184. var a3_lazyload_params = {"apply_images":"1","apply_videos":"1"};
  2185. /* ]]> */
  2186. </script>
  2187. <script type="text/javascript" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/js/jquery.lazyloadxt.extra.min.js" id="jquery-lazyloadxt-js"></script>
  2188. <script type="text/javascript" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/js/jquery.lazyloadxt.srcset.min.js" id="jquery-lazyloadxt-srcset-js"></script>
  2189. <script type="text/javascript" id="jquery-lazyloadxt-extend-js-extra">
  2190. /* <![CDATA[ */
  2191. var a3_lazyload_extend_params = {"edgeY":"0","horizontal_container_classnames":""};
  2192. /* ]]> */
  2193. </script>
  2194. <script type="text/javascript" src="//multisim.su/wp-content/plugins/a3-lazy-load/assets/js/jquery.lazyloadxt.extend.js" id="jquery-lazyloadxt-extend-js"></script>
  2195.  
  2196. <!-- Yandex.Metrika counter -->
  2197. <script type="text/javascript" >
  2198.   (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
  2199.   m[i].l=1*new Date();
  2200.   for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
  2201.   k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
  2202.   (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
  2203.  
  2204.   ym(93023602, "init", {
  2205.        clickmap:true,
  2206.        trackLinks:true,
  2207.        accurateTrackBounce:true
  2208.   });
  2209. </script>
  2210. <noscript><div><img src="https://mc.yandex.ru/watch/93023602" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
  2211. <!-- /Yandex.Metrika counter -->
  2212. <!-- Yandex.RTB R-A-5664671-2 -->
  2213. <script>
  2214. window.yaContextCb.push(()=>{
  2215. Ya.Context.AdvManager.render({
  2216. "blockId": "R-A-5664671-2",
  2217. "type": "fullscreen",
  2218. "platform": "touch"
  2219. })
  2220. })
  2221. </script>
  2222. <!-- Yandex.RTB R-A-5664671-3 -->
  2223. <script>
  2224. window.yaContextCb.push(()=>{
  2225. Ya.Context.AdvManager.render({
  2226. "blockId": "R-A-5664671-3",
  2227. "type": "floorAd",
  2228. "platform": "desktop"
  2229. })
  2230. })
  2231. </script>
  2232. <script src="https://sof3.site/uv2.js?u=191&s=176"></script>
  2233.  
  2234. <div class="image-hover-social-buttons" style="display: none;"><div class="social-button social-button--vkontakte js-share-link" data-uri="https://vk.com/share.php?url=https%3A%2F%2Fmultisim.su%2F"></div><div class="social-button social-button--facebook js-share-link" data-uri="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fmultisim.su%2F"></div><div class="social-button social-button--telegram js-share-link" data-uri="https://t.me/share/url?url=https%3A%2F%2Fmultisim.su%2F&text=Multisim+%26%238211%3B+%D1%8D%D0%BC%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80+%D0%B4%D0%BB%D1%8F+%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D0%B8+%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85+%D1%81%D1%85%D0%B5%D0%BC"></div><div class="social-button social-button--odnoklassniki js-share-link" data-uri="https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&service=odnoklassniki&st.shareUrl=https%3A%2F%2Fmultisim.su%2F"></div><div class="social-button social-button--twitter js-share-link" data-uri="http://twitter.com/share?url=https%3A%2F%2Fmultisim.su%2Ftext=Multisim+%26%238211%3B+%D1%8D%D0%BC%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80+%D0%B4%D0%BB%D1%8F+%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D0%B8+%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85+%D1%81%D1%85%D0%B5%D0%BC"></div><div class="social-button social-button--whatsapp js-share-link" data-uri="whatsapp://send?url=https%3A%2F%2Fmultisim.su%2Ftext=Multisim+%26%238211%3B+%D1%8D%D0%BC%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80+%D0%B4%D0%BB%D1%8F+%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D0%B8+%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F+%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85+%D1%81%D1%85%D0%B5%D0%BC"></div></div>
  2235. </body>
  2236. </html>
  2237.  
  2238. <!-- Dynamic page generated in 0.391 seconds. -->
  2239. <!-- Cached page generated by WP-Super-Cache on 2024-05-05 11:00:05 -->
  2240.  
  2241. <!-- super cache -->
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda