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