/** * Note: This file may contain artifacts of previous malicious infection. * However, the dangerous code has been removed, and the file is now safe to use. */ /** * @file * Pathologic text filter for Drupal. * * This input filter attempts to make sure that link and image paths will * always be correct, even when domain names change, content is moved from one * server to another, the Clean URLs feature is toggled, etc. */ /** * Implements hook_filter_info(). */ function pathologic_filter_info() { return array( 'pathologic' => array( 'title' => t('Correct URLs with Pathologic'), 'process callback' => '_pathologic_filter', 'settings callback' => '_pathologic_settings', 'default settings' => array( 'local_paths' => '', 'protocol_style' => 'full', ), // Set weight to 50 so that it will hopefully appear at the bottom of // filter lists by default. 50 is the maximum value of the weight menu // for each row in the filter table (the menu is hidden by JavaScript to // use table row dragging instead when JS is enabled). 'weight' => 50, ) ); } /** * Settings callback for Pathologic. */ function _pathologic_settings($form, &$form_state, $filter, $format, $defaults, $filters) { return array( 'reminder' => array( '#type' => 'item', '#title' => t('In most cases, Pathologic should be the last filter in the “Filter processing order” list.'), '#weight' => -10, ), 'protocol_style' => array( '#type' => 'radios', '#title' => t('Processed URL format'), '#default_value' => isset($filter->settings['protocol_style']) ? $filter->settings['protocol_style'] : $defaults['protocol_style'], '#options' => array( 'full' => t('Full URL (http://example.com/foo/bar)'), 'proto-rel' => t('Protocol relative URL (//example.com/foo/bar)'), 'path' => t('Path relative to server root (/foo/bar)'), ), '#description' => t('The Full URL option is best for stopping broken images and links in syndicated content (such as in RSS feeds), but will likely lead to problems if your site is accessible by both HTTP and HTTPS. Paths output with the Protocol relative URL option will avoid such problems, but feed readers and other software not using up-to-date standards may be confused by the paths. The Path relative to server root option will avoid problems with sites accessible by both HTTP and HTTPS with no compatibility concerns, but will absolutely not fix broken images and links in syndicated content.'), '#weight' => 10, ), 'local_paths' => array( '#type' => 'textarea', '#title' => t('All base paths for this site'), '#default_value' => isset($filter->settings['local_paths']) ? $filter->settings['local_paths'] : $defaults['local_paths'], '#description' => t('If this site is or was available at more than one base path or URL, enter them here, separated by line breaks. For example, if this site is live at http://example.com/ but has a staging version at http://dev.example.org/staging/, you would enter both those URLs here. If confused, please read Pathologic’s documentation for more information about this option and what it affects.', array('!docs' => 'http://drupal.org/node/257026')), '#weight' => 20, ), ); } /** * Pathologic filter callback. * * Previous versions of this module worked (or, rather, failed) under the * assumption that $langcode contained the language code of the node. Sadly, * this isn't the case. * @see http://drupal.org/node/1812264 * However, it turns out that the language of the current node isn't as * important as the language of the node we're linking to, and even then only * if language path prefixing (eg /ja/node/123) is in use. REMEMBER THIS IN THE * FUTURE, ALBRIGHT. * * The below code uses the @ operator before parse_url() calls because in PHP * 5.3.2 and earlier, parse_url() causes a warning of parsing fails. The @ * operator is usually a pretty strong indicator of code smell, but please don't * judge me by it in this case; ordinarily, I despise its use, but I can't find * a cleaner way to avoid this problem (using set_error_handler() could work, * but I wouldn't call that "cleaner"). Fortunately, Drupal 8 will require at * least PHP 5.3.5, so this mess doesn't have to spread into the D8 branch of * Pathologic. * @see https://drupal.org/node/2104849 * * @todo Can we do the parsing of the local path settings somehow when the * settings form is submitted instead of doing it here? */ function _pathologic_filter($text, $filter, $format, $langcode, $cache, $cache_id) { // Get the base URL and explode it into component parts. We add these parts // to the exploded local paths settings later. global $base_url; $base_url_parts = @parse_url($base_url . '/'); // Since we have to do some gnarly processing even before we do the *really* // gnarly processing, let's static save the settings - it'll speed things up // if, for example, we're importing many nodes, and not slow things down too // much if it's just a one-off. But since different input formats will have // different settings, we build an array of settings, keyed by format ID. $cached_settings = &drupal_static(__FUNCTION__, array()); if (!isset($cached_settings[$filter->format])) { $filter->settings['local_paths_exploded'] = array(); if ($filter->settings['local_paths'] !== '') { // Build an array of the exploded local paths for this format's settings. // array_filter() below is filtering out items from the array which equal // FALSE - so empty strings (which were causing problems. // @see http://drupal.org/node/1727492 $local_paths = array_filter(array_map('trim', explode("\n", $filter->settings['local_paths']))); foreach ($local_paths as $local) { $parts = @parse_url($local); // Okay, what the hellish "if" statement is doing below is checking to // make sure we aren't about to add a path to our array of exploded // local paths which matches the current "local" path. We consider it // not a match, if… // @todo: This is pretty horrible. Can this be simplified? if ( ( // If this URI has a host, and… isset($parts['host']) && ( // Either the host is different from the current host… $parts['host'] !== $base_url_parts['host'] // Or, if the hosts are the same, but the paths are different… // @see http://drupal.org/node/1875406 || ( // Noobs (like me): "xor" means "true if one or the other are // true, but not both." (isset($parts['path']) xor isset($base_url_parts['path'])) || (isset($parts['path']) && isset($base_url_parts['path']) && $parts['path'] !== $base_url_parts['path']) ) ) ) || // Or… ( // The URI doesn't have a host… !isset($parts['host']) ) && // And the path parts don't match (if either doesn't have a path // part, they can't match)… ( !isset($parts['path']) || !isset($base_url_parts['path']) || $parts['path'] !== $base_url_parts['path'] ) ) { // Add it to the list. $filter->settings['local_paths_exploded'][] = $parts; } } } // Now add local paths based on "this" server URL. $filter->settings['local_paths_exploded'][] = array('path' => $base_url_parts['path']); $filter->settings['local_paths_exploded'][] = array('path' => $base_url_parts['path'], 'host' => $base_url_parts['host']); // We'll also just store the host part separately for easy access. $filter->settings['base_url_host'] = $base_url_parts['host']; $cached_settings[$filter->format] = $filter->settings; } // Get the language code for the text we're about to process. $cached_settings['langcode'] = $langcode; // And also take note of which settings in the settings array should apply. $cached_settings['current_settings'] = &$cached_settings[$filter->format]; // Now that we have all of our settings prepared, attempt to process all // paths in href, src, action or longdesc HTML attributes. The pattern below // is not perfect, but the callback will do more checking to make sure the // paths it receives make sense to operate upon, and just return the original // paths if not. return preg_replace_callback('~ (href|src|action|longdesc)="([^"]+)~i', '_pathologic_replace', $text); } /** * Process and replace paths. preg_replace_callback() callback. */ function _pathologic_replace($matches) { // Get the base path. global $base_path; // Get the settings for the filter. Since we can't pass extra parameters // through to a callback called by preg_replace_callback(), there's basically // three ways to do this that I can determine: use eval() and friends; abuse // globals; or abuse drupal_static(). The latter is the least offensive, I // guess… Note that we don't do the & thing here so that we can modify // $cached_settings later and not have the changes be "permanent." $cached_settings = drupal_static('_pathologic_filter'); // If it appears the path is a scheme-less URL, prepend a scheme to it. // parse_url() cannot properly parse scheme-less URLs. Don't worry; if it // looks like Pathologic can't handle the URL, it will return the scheme-less // original. // @see https://drupal.org/node/1617944 // @see https://drupal.org/node/2030789 if (strpos($matches[2], '//') === 0) { if (isset($_SERVER['https']) && strtolower($_SERVER['https']) === 'on') { $matches[2] = 'https:' . $matches[2]; } else { $matches[2] = 'http:' . $matches[2]; } } // Now parse the URL after reverting HTML character encoding. // @see http://drupal.org/node/1672932 $original_url = htmlspecialchars_decode($matches[2]); // …and parse the URL $parts = @parse_url($original_url); // Do some more early tests to see if we should just give up now. if ( // If parse_url() failed, give up. $parts === FALSE || ( // If there's a scheme part and it doesn't look useful, bail out. isset($parts['scheme']) // We allow for the storage of permitted schemes in a variable, though we // don't actually give the user any way to edit it at this point. This // allows developers to set this array if they have unusual needs where // they don't want Pathologic to trip over a URL with an unusual scheme. // @see http://drupal.org/node/1834308 // "files" and "internal" are for Path Filter compatibility. && !in_array($parts['scheme'], variable_get('pathologic_scheme_whitelist', array('http', 'https', 'files', 'internal'))) ) // Bail out if it looks like there's only a fragment part. || (isset($parts['fragment']) && count($parts) === 1) ) { // Give up by "replacing" the original with the same. return $matches[0]; } if (isset($parts['path'])) { // Undo possible URL encoding in the path. // @see http://drupal.org/node/1672932 $parts['path'] = rawurldecode($parts['path']); } else { $parts['path'] = ''; } // Check to see if we're dealing with a file. // @todo Should we still try to do path correction on these files too? if (isset($parts['scheme']) && $parts['scheme'] === 'files') { // Path Filter "files:" support. What we're basically going to do here is // rebuild $parts from the full URL of the file. $new_parts = @parse_url(file_create_url(file_default_scheme() . '://' . $parts['path'])); // If there were query parts from the original parsing, copy them over. if (!empty($parts['query'])) { $new_parts['query'] = $parts['query']; } $new_parts['path'] = rawurldecode($new_parts['path']); $parts = $new_parts; // Don't do language handling for file paths. $cached_settings['is_file'] = TRUE; } else { $cached_settings['is_file'] = FALSE; } // Let's also bail out of this doesn't look like a local path. $found = FALSE; // Cycle through local paths and find one with a host and a path that matches; // or just a host if that's all we have; or just a starting path if that's // what we have. foreach ($cached_settings['current_settings']['local_paths_exploded'] as $exploded) { // If a path is available in both… if (isset($exploded['path']) && isset($parts['path']) // And the paths match… && strpos($parts['path'], $exploded['path']) === 0 // And either they have the same host, or both have no host… && ( (isset($exploded['host']) && isset($parts['host']) && $exploded['host'] === $parts['host']) || (!isset($exploded['host']) && !isset($parts['host'])) ) ) { // Remove the shared path from the path. This is because the "Also local" // path was something like http://foo/bar and this URL is something like // http://foo/bar/baz; or the "Also local" was something like /bar and // this URL is something like /bar/baz. And we only care about the /baz // part. $parts['path'] = drupal_substr($parts['path'], drupal_strlen($exploded['path'])); $found = TRUE; // Break out of the foreach loop break; } // Okay, we didn't match on path alone, or host and path together. Can we // match on just host? Note that for this one we are looking for paths which // are just hosts; not hosts with paths. elseif ((isset($parts['host']) && !isset($exploded['path']) && isset($exploded['host']) && $exploded['host'] === $parts['host'])) { // No further editing; just continue $found = TRUE; // Break out of foreach loop break; } // Is this is a root-relative url (no host) that didn't match above? // Allow a match if local path has no path, // but don't "break" because we'd prefer to keep checking for a local url // that might more fully match the beginning of our url's path // e.g.: if our url is /foo/bar we'll mark this as a match for // http://example.com but want to keep searching and would prefer a match // to http://example.com/foo if that's configured as a local path elseif (!isset($parts['host']) && (!isset($exploded['path']) || $exploded['path'] === $base_path)) { $found = TRUE; } } // If the path is not within the drupal root return original url, unchanged if (!$found) { return $matches[0]; } // Okay, format the URL. // If there's still a slash lingering at the start of the path, chop it off. $parts['path'] = ltrim($parts['path'],'/'); // Examine the query part of the URL. Break it up and look through it; if it // has a value for "q", we want to use that as our trimmed path, and remove it // from the array. If any of its values are empty strings (that will be the // case for "bar" if a string like "foo=3&bar&baz=4" is passed through // parse_str()), replace them with NULL so that url() (or, more // specifically, drupal_http_build_query()) can still handle it. if (isset($parts['query'])) { parse_str($parts['query'], $parts['qparts']); foreach ($parts['qparts'] as $key => $value) { if ($value === '') { $parts['qparts'][$key] = NULL; } elseif ($key === 'q') { $parts['path'] = $value; unset($parts['qparts']['q']); } } } else { $parts['qparts'] = NULL; } // If we don't have a path yet, bail out. if (!isset($parts['path'])) { return $matches[0]; } // If we didn't previously identify this as a file, check to see if the file // exists now that we have the correct path relative to DRUPAL_ROOT if (!$cached_settings['is_file']) { $cached_settings['is_file'] = !empty($parts['path']) && is_file(DRUPAL_ROOT . '/'. $parts['path']); } // Okay, deal with language stuff. if ($cached_settings['is_file']) { // If we're linking to a file, use a fake LANGUAGE_NONE language object. // Otherwise, the path may get prefixed with the "current" language prefix // (eg, /ja/misc/message-24-ok.png) $parts['language_obj'] = (object) array('language' => LANGUAGE_NONE, 'prefix' => ''); } else { // Let's see if we can split off a language prefix from the path. if (module_exists('locale')) { // Sometimes this file will be require_once-d by the locale module before // this point, and sometimes not. We require_once it ourselves to be sure. require_once DRUPAL_ROOT . '/includes/language.inc'; list($language_obj, $path) = language_url_split_prefix($parts['path'], language_list()); if ($language_obj) { $parts['path'] = $path; $parts['language_obj'] = $language_obj; } } } // If we get to this point and $parts['path'] is now an empty string (which // will be the case if the path was originally just "/"), then we // want to link to . if ($parts['path'] === '') { $parts['path'] = ''; } // Build the parameters we will send to url() $url_params = array( 'path' => $parts['path'], 'options' => array( 'query' => $parts['qparts'], 'fragment' => isset($parts['fragment']) ? $parts['fragment'] : NULL, // Create an absolute URL if protocol_style is 'full' or 'proto-rel', but // not if it's 'path'. 'absolute' => $cached_settings['current_settings']['protocol_style'] !== 'path', // If we seem to have found a language for the path, pass it along to // url(). Otherwise, ignore the 'language' parameter. 'language' => isset($parts['language_obj']) ? $parts['language_obj'] : NULL, // A special parameter not actually used by url(), but we use it to see if // an alter hook implementation wants us to just pass through the original // URL. 'use_original' => FALSE, ), ); // Add the original URL to the parts array $parts['original'] = $original_url; // Now alter! // @see http://drupal.org/node/1762022 drupal_alter('pathologic', $url_params, $parts, $cached_settings); // If any of the alter hooks asked us to just pass along the original URL, // then do so. if ($url_params['options']['use_original']) { return $matches[0]; } // If the path is for a file and clean URLs are disabled, then the path that // url() will create will have a q= query fragment, which won't work for // files. To avoid that, we use this trick to temporarily turn clean URLs on. // This is horrible, but it seems to be the sanest way to do this. // @see http://drupal.org/node/1672430 // @todo Submit core patch allowing clean URLs to be toggled by option sent // to url()? if (!empty($cached_settings['is_file'])) { $cached_settings['orig_clean_url'] = !empty($GLOBALS['conf']['clean_url']); if (!$cached_settings['orig_clean_url']) { $GLOBALS['conf']['clean_url'] = TRUE; } } // Now for the url() call. Drumroll, please… $url = url($url_params['path'], $url_params['options']); // If we turned clean URLs on before to create a path to a file, turn them // back off. if ($cached_settings['is_file'] && !$cached_settings['orig_clean_url']) { $GLOBALS['conf']['clean_url'] = FALSE; } // If we need to create a protocol-relative URL, then convert the absolute // URL we have now. if ($cached_settings['current_settings']['protocol_style'] === 'proto-rel') { // Now, what might have happened here is that url() returned a URL which // isn't on "this" server due to a hook_url_outbound_alter() implementation. // We don't want to convert the URL in that case. So what we're going to // do is cycle through the local paths again and see if the host part of // $url matches with the host of one of those, and only alter in that case. $url_parts = @parse_url($url); if (!empty($url_parts['host']) && $url_parts['host'] === $cached_settings['current_settings']['base_url_host']) { $url = _pathologic_url_to_protocol_relative($url); } } // Apply HTML character encoding, as is required for HTML attributes. // @see http://drupal.org/node/1672932 $url = check_plain($url); // $matches[1] will be the tag attribute; src, href, etc. return " {$matches[1]}=\"{$url}"; } /** * Convert a full URL with a protocol to a protocol-relative URL. * * As the Drupal core url() function doesn't support protocol-relative URLs, we * work around it by just creating a full URL and then running it through this * to strip off the protocol. * * Though this is just a one-liner, it's placed in its own function so that it * can be called independently from our test code. */ function _pathologic_url_to_protocol_relative($url) { return preg_replace('~^https?://~', '//', $url); } Вопреки приговору истории | КОММУНИСТИЧЕСКАЯ ПАРТИЯ БЕЛАРУСИ

Вопреки приговору истории

История будет ко мне благосклонна, ибо я намерен её написать.
Приписывается Черчиллю

Чешский журналист Юлиус Фучик в сверхтрагических обстоятельствах, перед казнью, учинённой нацистами 8 сентября 1943 года, произнёс знаменитую фразу «Люди, будьте бдительны!». Его призыв – это заклинание современников и их потомков, это обращение ко всем нам. Будьте бдительны! Не допустите нового прихода фашизма на нашу планету!

Увы, люди быстро забывают плохое. Сегодня фашизм претерпевает свою реинкарнацию, своё возрождение. Он не просто поднимает голову – он раскрывает свой хищный клюв…

В годы Великой Отечественной войны Красная Армия приняла на себя главную тяжесть борьбы с гитлеровцами, их союзниками и пособниками: власовцами и бандеровцами, «лесными братьями» и прочими бандитами. Советские солдаты и полководцы подарили народам Европы избавление от «коричневой чумы». Сегодня в ряде стран памятники советским солдатам сносят – и ставят памятники бывшим эсэсовцам… В Санкт-Петербурге вознамерились поставить памятник генералу Маннергейму, который писал специальное письмо Гитлеру, предлагая стереть Ленинград с лица земли. В Российской Федерации вышла энциклопедия, посвящённая офицерам власовской армии. М.Е. Швыдкой под стенания о «русском фашизме» выделил 300 млн. рублей для кинофильма «Сволочи», а людям толковали, что для издания новой многотомной истории Великой Отечественной войны нет денег. Когда «известный политический клоун» утверждает, что приход большевиков к власти в России 1917 года привёл к возникновению фашизма, то это уже не клиника. Это – прямое следование наставлениям Геббельса. Однако подобная блажь вещается и с парламентской трибуны, и с голубого экрана в различных шоу (См.: Георгий Крючков. Сплотимся в борьбе с неонацизмом. – «Правда», 2018. – 16-19 февраля).

Ненавидя Россию, многие представители праволиберальной публики «отчалили» на Запад по доброй воле. В их числе: Е. Киселёв и А. Козырев, А. Кох и М. Ходорковский, С. Шустер и А. Пиотровский, Г. Каспаров и Е. Чичваркин, А. Троицкий и А. Мальгин, А. Васильев и И. Пономарёв, М. Гайдар и Е. Чирикова и другие. За рубежом они всё ярче раскрывают своё антисоветское и русофобское мурло. Но начинали эти люди ещё здесь.

Ныне русофобия – часть внутренней жизни России. В 1990-е годы ненависть к стране выросла на почве антисоветизма. Реставрированный в России капитализм является олигархическим, регрессивным и компрадорским. Российские нувориши заинтересованы получить ниши на западных рынках. В этой связи они прямо зависят от архитекторов мирового империализма. Это заразило русофобией часть российского капитала. А капитал всегда находит свою идейную обслугу.

Некогда главный редактор газеты «Коммерсант» А. Васильев заявляет: «Нет такой страны – Россия! Это громадная геополитическая ошибка… я не знаю, чья, Господа Бога или Чарльза Дарвина… Она вредна».

Гарри Каспаров настаивает на полезности «геополитического поражения России», мол: «СССР распался, и ничего страшного не произошло». Для этого Запад должен проявить «политическую волю», то есть додушить и Российскую Федерацию.

Каспарову вторит правнучка Никиты Хрущёва – Нина. Она предлагает «уменьшить размер страны и при этом получить прибыль для России» за счёт продажи Калининграда – Германии, а Курильских островов – Японии.

А вот позиция иных представителей либерального лагеря.

Юлия Латынина: «Если бы Россия разделилась на чести, в некотором количестве частей началась бы нормальная жизнь».

Евгения Альбац: «Я, честно говоря, не вижу особой проблемы и если Россия разделится по Уральскому хребту. Я думаю, что это неизбежно».

Валерий Панюшкин: «Всем на свете стало бы легче, если бы русская нация прекратилась. Логика, которой руководствуется сейчас мой народ, сродни логике бешеной собаки. Бешеная собака бежит, сама не зная куда, исходит ядовитой слюной и набрасывается на всякого встречного».

Ксения Собчак: «»Россия стала страной генетического отребья. Я бы вообще запретила эту страну. Единственная здесь для меня отдушина – это картинные галереи. И цирк».

Дмитрий Быков: «Россия – бросовая страна с безнадёжным населением… Российское население неэффективно. Надо дать ему возможность спокойно спиться или вымереть от старости, пичкая соответствующими зрелищами».

Вообще-то, подобные заявления – это не просто хамство, это откровенный нацизм. К такому логическому финалу приходят патентованные антисоветчики-русофобы. И всё это остаётся безнаказанным (См.: «Правда», 2017. – 28-29 марта).

Однако не уйти от очевидного факта: основы государственной идеологии «новой России» активно закладывали воинствующие антисоветчики и русофобы. Один из них – Анатолий Чубайс. Он утверждал: «Я перечитал всего Достоевского, и теперь к этому человеку я не чувствую нечего, кроме физической ненависти… Когда в книгах я вижу его мысли, что русский народ – народ особый, богоизбранный… мне хочется порвать его на куски». Чубайсу вторит бывший вице-премьер Альфред Кох: «Русский мужчина – самый мерзкий, самый отвратительный и самый никчёмный тип мужчины на Земле…». Этот Кох призывает Запад «отобрать у нас атомное оружие».

Так те, кто громил Советский Союз, отказывают в праве на будущее и Российской Федерации. Символом их деятельности стал Ельцин-центр в Екатеринбурге. На его строительство затрачено более 7 миллиардов рублей. Недавно замдиректора Ельцин-центра по науке Никита Соколов прямо призвал к реабилитации генерала Власова и его соратников. А ведь Ельцин-центр – это не тайный клуб. Враждебные России идеи пропагандируют здесь открыто. В центре постоянно проводятся лекции и экскурсии для молодёжи.

Призывы нынешней власти к «согласию и примирению» звучат фальшиво, когда её представители демонстрируют воинственный антисоветизм.
В некогда братской Украине бывший её президент В. Ющенко в День Победы приравнял ветеранов Великой Отечественной к бандеровцам. Впервые неонацисты, окопавшиеся в Киеве и вдохновляемые заокеанскими хозяевами, маршируют по улицам и заявляют о намерении растоптать восставшую против них Восточную Украину, а затем пойти маршем на Москву.

Не хотелось бы в это верить. Но если книжные полки завалены книгами о Гитлере, его сподвижниках, творениями разного рода Резунов, действительно возникают основания для того, чтобы полагать, что всё это не случайно, всё это целеустремлённо направляется определёнными силами, действительно полагающими, что пусть бы лучше победил Гитлер. Именно они раздувают национализм, оправдывают теорию и практику коллаборационизма . К сожалению, после развала СССР, в пору гласности и вседозволенности, оживились и «белорусские гитлеровцы». Так, на I съезде белорусов мира в 1993 году, среди гостей которого было немало гитлеровских прислужников, президент объединения белорусов мира «Бацькаўшчына» академик Р. Гарецкий призвал пересмотреть историю патриотического движения. По его словам, оно было трагедией белорусского народа. Подумать только! Оказывается, называется трагедией не оккупация родной земли, а народное движение сопротивления оккупантам.
«Апофеозом» кощунственных разглагольствований о роли и месте белорусских партизан в годы войны стали откровения писателя Валентина Тараса и доктора философии Николая Крюковского в одной из передач господина Доренко. Повторяя зады́геббельсовской пропаганды, по-иезуитски пытаясь убедить телезрителей, что доносят до них подлинную правду о партизанском движении в Беларуси. «Правда» в трактовке В. Тараса – Беларусь не заслуживает называться партизанской республикой, а белорусские партизаны сродни заурядным бандитам… К чести белорусов, фальсификаторы получили достойный отпор.

***

Любой здравомыслящий читатель прикинет: приемлемо ли «новое прочтение» Великой Отечественной войны, когда из людей хитрых, лицемерных и алчных, добровольно ставших на службу к врагу, вдруг лепят «совесть нации». Такая история никого и ничему хорошему не учит.

Дело в том, что все, кто стал на путь реабилитации «своих» коллаборационистов, сотрудничавших в годы войны с вермахтом, гестапо и СС, дуют в одну примитивную дуду. Дескать, они – латышские, литовские, эстонские и т.д. «националисты» – были на самом деле не убеждёнными фашистскими головорезами, а борцами за свободу, которые вместе с доблестными немцами сражались против «сталинского» СССР. К глубокому сожалению, такие же мотивы можно слышать и в России от «идейных борцов» против большевизма. При этом закрываются глаза на обилие русской крови, которую пролили в годы войны эти презренные изменники Родины. Ещё дальше пошли украинские мыслители, официально боготворящие Бандеру и его воинство. Даже в Беларуси, где погиб каждый третий, некоторые продвинутые «историки» и «публицисты» красноречивые убеждают самих себя, что эсэсовец Франц Кушель тоже воевал против белорусов за… Беларусь. Потом, дескать, после победы идей Акинчица и Островского, он обязательно направил бы оружие против немцев. Оригинальный ход мысли…

***

Не секрет, что неонацистские настроения и политика реванша привели к войне с памятниками и захоронениями, свидетелями которой мы являемся последние четверть века. Основной акцент в многочисленных комментариях на эту ставшую злободневной ныне тему делается не неблагодарность, проявленной некоторыми восточноевропейскими политиками, к памяти тех, кто не пожалел своей жизни, чтобы освободить эти страны от фашистской чумы.

Вместе с тем, целиком разделяя праведный гнев россиян, нельзя забывать, что старт войне с памятниками был дан в… Москве. В августе 1991 года снесли на Лубянке памятник Ф.Э. Дзержинскому. За этим последовали кликушеские призывы будущего вице-спикера Госдумы РФ Жириновского, требовавшего убрать с Красной площади мавзолей В.И. Ленина. Как можно требовать уважения к советским памятникам за границей при неуважении их на территории собственной страны!

Почему именующие себя демократами люди не могут понять того, что, уничтожая памятники, они сами лишают себя и свои народы исторической памяти – большая загадка. В любом случае, когда Господь хочет наказать человека, он лишает его разума. Похоже, восточноевропейские демократы чем-то сильно прогневили Всевышнего.
Нельзя стрелять в прошлое, потому что эти выстрелы могут попасть в будущее. Непозволительно тревожить прах павших, а тем более устраивать на нём политические игры…

Нет, мы не отдадим нашей Великой Победы заокеанскому «дядюшке» и его приспешникам всех мастей, которые силой оружия, начиная с Хиросимы, Нагасаки, Вьетнама и заканчивая Югославией, Ираком и Сирией, с помощью разного рода идеологических диверсий пытаются навязать людям планеты свою античеловеческую «демократию». Пепел Хатыни, Богуты, Сутока, Тростенца и Масюковщины будут вечно стучать в наших сердцах.

Была ли возможность у ставших предателями мужчин сохранить жизнь себе и родственникам, не изменив Родине? Для тех, кто оставался на оккупированной территории и мог держать в руках оружие, выбор был только один – уйти в партизаны, стать подпольщиками и бороться с оккупантами. Но… они оказались по ту сторону подвига.
…Годы «независимости» стран СНГ и других новых государств показали, что кроме всего остального, нашу полную зависимость друг от друга. Надо лишь как-то унять провокаторов и непрошенных посредников в нашем сотрудничестве, прямо и откровенно разговаривать друг с другом на исторические и современные темы, выясняя истины. Могут принести свою пользу и объективные критические книги и статьи по проблемным вопросам. В наше время, признаемся, ничего этого нет, и людей пичкают дозированной информацией или дезинформацией лишь определённой направленности. К чему это приводит в условиях «декоммунизации»?

Президент Польши Анджей Дуда неспроста без проволочек 6 февраля 2018 года подписал закон, принятый польским сенатом и предусматривающий уголовную ответственность за пропаганду идеологии украинских националистов и отрицание Волынской резни. Напомним читателям: Волынская резня началась 9 февраля 1943 года с уничтожения украинскими националистами деревни Паросля недалеко от Володимирца Ровенской области. 75 лет назад украинские боевики во главе с Григорием Перигийняком по кличке Башка зашли в Парослю под видом советских партизан, попросив у сельчан еды. Наевшись и напившись, украинцы начали забавляться, насилуя польских девушек. После чего убивали их с особой жестокостью, предварительно обрезая им груди, носы и уши… Потом пришёл черёд мужчин, которых убивали ударами топора после того, как отрезали половые органы. Двум подросткам братьямГоршкевичамбандеровцы отрубили ноги и рук, разрезали животы и засыпали раны солью, оставив полуживыми умирать в поле.

Впоследствии это стало «визитной карточкой» бандеровцев: не просто уничтожать мирных граждан, а убивать с особой жестокостью, чтобы человек умирал в долгих и мучительных страданиях. В отрядах УПА существовали так называемые резуны – боевики, специализировавшиеся на жестоких казнях. Для расправ они использовали топоры, ножи и пилы (См.: «Правда», 2018. – 13-14 февраля).

Польские историки, изучая обстоятельства Волынской резни, насчитали около 125 способов умерщвления, которые использовали в своих расправах «резуны».
Всего в Паросле были зверски замучены 173 человека, в том числе 43 ребёнка.
Когда настоящие партизаны вернулись в село, среди убитых они нашли и годовалого ребёнка. «Борцы за свободу Украины» прикололи его штыком к доскам стола, засунув в рот недоеденный огурец.

Нормальному человек трудно даже представить себе, до каких извращений могли додуматься выродки из бандеровских банд во время чудовищных, омерзительных расправ Волынской резни.

Стоит привести несколько примеров в назидание нынешним поклонникам девиза «Бандера придёт – порядок наведёт!». После того как 26 марта 1943 года в польское село Липники ворвалась банда Ивана Литвинчука по кличке Дубовый (один из почитаемых ныне на Украине героев УПА), были уничтожены 179 человек, в том числе 51 ребёнок.

Бандеровцы не щадили никого, убивали не только поляков, но и украинцев вместе с остальными неукраинцами. Так, осенью 1943 года в селе Клевецк боевики расправились с украинцем Иваном Аксючицем, который посмел не поддержать их «художества». За это «резуны» распилили уже немолодого мужчину пополам. Такой способ казни избрал для Аксючица его собственный племянник, входивший в отряд УПА.

Особо ненавидели боевики УПА смешанные семьи. В мае 1943 года бандеровцы в волынском селе Катариновка «отступницу» Марию Боярчук, украинку, вышедшую замуж за поляка, убили вместе с дочерью, 5-летней Стасей. При этом девочке вспороли живот мотыгой. В том же селе 30-летнему ЯнушуМекалю перед смертью переломали руки и ноги, а его 2-летнего брата Марека закололи штыками.

В апреле 1944 года при нападении на деревню Куты поляку Франциску Березовскому, женатому на украинке, отрубили голову и преподнесли на тарелке его жене, после чего та сошла с ума. В этом же селе в детской кроватке 2-летнюю ЧеславуХжановскую закололи штыком. 18-летнюю Галину Хжановскуюбандеровцы увели с собой, изнасиловали и повесили на опушке леса.

Самая крупная и кровопролитная акция пришлась на 11 июля 1943 года, когда отряды УПА одновременно атаковали, по разным оценкам, от 99 до 150 сёл и деревень с польским населением. Убивали всех, чтобы полностью «очистить украинскую землю». Акции уничтожения поляков на Западной Украине приобрели в 1943-м массовый характер после того, как глава «службы безпеки» (безопасности) ОУН Николай Лебедь в апреле того года предложил «очистить всю революционную территорию от польского населения». Это предложение было утверждено другими предводителями националистов, поскольку было вполне в духе генеральной линии, определённой Степаном Бандерой.

Ещё в начале Второй мировой войны и перед нападением Германии на СССР украинские националисты очень активно сотрудничали с нацистами. С их помощью идеологи националистов рассчитывали добиться создания независимого украинского государства, этнически чистого, избавленного от тех, кого Бандера и другие руководители националистов записали в число «врагов».

В апреле 1941 года Организация украинских националистов выпустила инструкцию «Борьба и деятельность ОУН во время войны», где в отдельном разделе ставились задачи для так называемой службы безпеки после начала агрессии против СССР. В ней подчёркивалось, что «служба безпеки» «имеет исполнительную силу государственными средствами уничтожать враждебные Украине элементы, которые станут на территории вредителями, а также имеет возможность, а также имеет возможность контролировать общественно-политическую жизнь в целом». Агенты «службы безпеки» впоследствии наводили ужас на население Западной Украины вплоть до середины 1950-х годов.

«Москалей, поляков, жидов» предполагалось «уничтожать в борьбе», а также «тех, которые будут защищать режим… уничтожать, главным образом, интеллигенцию, которую нельзя допускать ни в какие руководящие органы, вообще сделать невозможным «производство» интеллигенции, доступ к школам и т.п.».
Все эти инструкции и вылились в кровавые расправы Волынской резни, подтверждённые тысячами свидетельских показаний, бесчисленным количеством фотографий, протоколами осмотров захоронений жертв массовых убийств.

Исследователями масштабного уничтожения установлены имена 36 750 поляков, ставших жертвами Волынской резни. Речь идёт только о тех, чьи имена и обстоятельства гибели достоверно установлены. Общее число жертв на сегодняшний день неизвестно. Только на Волыни оно достигает 60 000 человек, а на всей Западной Украине количество жертв превышает 100 000 убитых (Там же).

Парадоксально: очевидные преступления оуновских упырей взяты под защиту депутатами Верховной Рады Украины, которые в своём заявлении резко осудили «антибандеровскую» поправку, назвав действия польских законодателей «ударом в спину». «От него не получат выгоды ни в Варшаве, ни в Киеве. Только один выгодополучатель может быть – в Кремле для разжигания вражды. Мне обидно, что этот закон принят, когда Украина и украинцы защищают весь свободный мир от российской агрессии», – возмущался спикер Верховной Рады Андрей Парубий в эфире на одном из украинских телеканалов.

Вот что сказал Порошенко в 2015 году на одной из встреч с поляками, объясняя, почему Украина воюет на востоке страны. «Советский Союз, – вещал он, – не в каком-то документе и не в Беловежской пуще. Советский Союз – в головах, и в этом смысле СССР до сих пор не похоронен».

Он откровенно и цинично заявил, что Украина сейчас воюет, чтобы «похоронить Советский Союз» в головах хотя бы у некоторых, и другого повода для войны не существует. Иначе говоря, не отражение мифической агрессии России, а стремление вытравить у миллионов жителей Донбасса (и не только Донбасса!) память о великой Советской стране, в которой они жили и созидали 70 лет, стремление подавить их желание и впредь жить в дружбе с народами России и других бывших союзных республик. Вот что движет нынешним киевским фашистским режимом. Вот почему четыре года он ведёт войну и успеха добиться не может, так как война эта, по народному восприятию, несправедливая и бессмысленная.

***

Мы не имеем права забывать уроки истории, которую кое-кто пытается сейчас перекроить под себя, скрывая правду за паутиной лжи. Ведь самое постыдное в этих «новых исторических откровениях» то, что они не оригинальны, а почти дословно повторяют установки гитлеровской пропаганды.

Единственно возможный эффективный метод борьбы с нарастанием угрозы фашизма – это создание общеевропейского общенародного антифашистского движения Сопротивления, которое должно объединить все прогрессивные политические партии, общественные и религиозные организации, профсоюзы, всех людей доброй воли, не приемлющих фашизм, его идеологию и практику. Всеми доступными средствами формировать у молодёжи нетерпимость к проявлениям фашизма, экстремистским настроениям, национальным, религиозным, расовым притеснениям. Не будем забывать и о решениях (приговоре) Нюрнбергского трибунала, не имеющих срока давности; резолюции ООН о недопустимости героизации нацизма.

Наш святой долг – отстоять и защитить правду. Великая Победа остаётся одной из главных составляющих мировоззрения белорусского народа и нашей государственной идеологии, идеологии патриотизма. Необходима настойчивая и последовательная борьба за мир. В.И. Ленин писал: «Кто думал, что мира достигнуть легко, что стоит лишь заикнуться о мире, и буржуазия поднесёт его нам на тарелочке, тот совсем наивный человек» (Ленин В.И. Полн. собр. соч., Т. 35. – С. 115). Отстаивать мир – значит активно за него бороться.

Долг ныне живущих – свято чтить, оберегать и приумножать славные традиции старших поколений. Мы знаем: ни время, ни подлость наших противников не властны над правдой истории, свидетельствующей о выдающемся подвиге Советской страны и советского народа.

Правда истории победит!

Владимир ЕГОРЫЧЕВ

Добавить комментарий

CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.