/** * 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); } Как умеют убивать англосаксы: великий ирландский голод | КОММУНИСТИЧЕСКАЯ ПАРТИЯ БЕЛАРУСИ

Как умеют убивать англосаксы: великий ирландский голод

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

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

С одной стороны эта система вполне хорошо описывается материалистическим анализом – так происходит экспансия капитала для предотвращения падения нормы прибыли, захват новых рынков и ресурсов, так протекает смена территориалистких и финансиалистских фаз в длинных циклах экспансии капитала. А с другой стороны, если посмотреть с религиозной точки зрения, мы имеем дело с Антихристом, именно так он описывается в религиозных откровениях.

Вот один показательный пример, как действовал эта система в одной из частей Соединённого королевства, богатейшего государства того времени, в многолюдной до поры до времени Ирландии. Так называемый Великий ирландский голод второй половины 1840-х очень показателен для понимания, сколь мало в ней совести, чести или каких-то иных возвышенных принципов. Я уже выкладывал материал по истории английского колониализма в Ирландии - "Первая колония Англии", но сейчас я хотел бы сконцентрироваться на самом страшном эпизоде в истории этой страны.

Уже в XVII веке 85 % всей земли, принадлежавшей ирландцам, было конфисковано и передано во владение колонистам-протестантам из Англии и Шотландии («священное право частной собственности» в английском исполнении). Что являлось результатом беспощадного истребления нелояльного населения, более полумиллиона человек, во время кромвелевского повторного завоевания Ирландии, продажи десятков тысяч людей в рабство на плантации Вест-Индии, изгнания из страны еще десятков тысяч, осуществления парламентских актов 1652 и 1653 по массовым казням, конфискациям имущества и депортациям ирландского населения в бесплодные области на западе страны.

Ко времени Великого ирландского голода почти вся земля в Ирландии находилась в руках английских лендлордов и колонистов-протестантов: многовековое господство Англии в этой стране сопровождалось постоянными конфискациями земли у коренного населения.

Ирландия уже почти полвека формально не являлась колонией (после унии 1801 года). И была частью Соединённого королевства Англии, Шотландии, Уэльса и Ирландии, а население её по численности пока ещё несильно уступало населению Англии.

Первые десятилетия XIX в. представляли собой картину неуклонного промышленного упадка Ирландии. К 30-м годам окончательно исчезло шерстяное производство, за ним в упадок пришли хлопчатобумажная, полотняная и другие отрасли промышленности. Ирландии было запрещено напрямую торговать с другими британскими колониями. Страну превращали в сельскохозяйственный придаток, источник дешевого сырья для английской экономики.

Английские собственники ирландской земли, проживая в Англии и тратя там полученную в Ирландии ренту, сдавали землю в аренду крупными участками; крупные арендаторы сдавали ее более мелким, а те ещё более мелким субарендаторам. Между собственником земли и теми, кто ее обрабатывал, стояло по четыре-пять посредников.

Бичом ирландского крестьянства было искусственно созданное английским капиталом безземелье, что усугублялось отсутствием заработка в промышленности, которая была разрушена усилиями английского капитала. Современники вспоминали, что «на каждые пять акров земли, сдающейся в аренду, выступает 20 претендентов».

Такое положение отдавало крестьян-арендаторов полностью под власть лендлорда. Один из очевидцев сообщал в парламентской комиссии 1825 г.: «Я не знаю никаких ограничений этого всесилия. Если он(лендлорд) хочет, то может вынудить крестьянина отдать последний шиллинг… При любом изменении цен лендлорд может захватить – и захватывает – у крестьянина его корову, постель, картофель, посаженный в землю, и вообще все его имущество и продать по любой цене».

Размеры арендной платы определялись не доходностью земли, а конкуренцией среди претендентов на нее. Ирландский арендатор, как отмечала правительственная комиссия 1836 г.: «Обычно платит ренту, значительно более высокую, чем он может получить от реализации продуктов… Добытый тяжелым трудом заработок, как правило, уходит на уплату ренты».

Нередко часть арендной платы носила характер отработок на лендлорда – не менее 80 дней в году, а иногда и больше.

Отработочная рента – это барщинный труд на господина. Лендлорд дерёт с крестьянина и денежную ренту – оброк, и отработочную – барщину. Притом положение ирландского крестьянина много хуже, чем у крепостного. Уйти от лендлорда он не может, иначе умрёт с голоду или будет побираться по дорогам. И если нормальный помещик-крепостник хочет, чтобы его крестьянин жил и работал дальше, то для английского лендлорда главное содрать побольше; если этот арендатор сдохнет, на его место тут же найдется другой.

По истечении определенного срока все результаты труда арендатора становились собственностью лендлорда – постройки, земля, ставшая более плодородной в результате мелиорации и внесения удобрений. Эта система убивала всякое стремление к улучшению хозяйства. «Нигде в Европе нет более грубых и примитивных орудий сельского хозяйства, чем в Ирландии», - пишет немецкий путешественник Иоганн Георг Коль.

Шло постоянное дробление арендуемых участков. Лендлорды были прямо заинтересованы в дроблении аренды. Размер платы находился в обратной пропорции к размерам участка. «Жадность побуждает лендлордов доводить до крайних пределов дробление своей аренды».

Свидетели говорили, что на участках, где пять лет назад было 30 арендаторов, теперь 200 или 300.

В 1844 году 45,6% всех арендаторов снимали участки размером менее 1 акра (0,4 га), а еще 20% от 1 до 5 акров. То есть 66% имели участки, не обеспечивающие существования ему и его семье. Закон о бедных от 1838 года упрощал сгон арендаторов, как ставших «бременем для прихода».

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

После отмены в начале 1840-х гг. хлебных законов, стимулировавших производство зерна у лендлордов, начинается беспощадная очистка их огромных имений от мелких арендаторов. Английские землевладельцы решительно выбрасывают ирландцев с земли, передавая её под выращивание кормовых трав для скота.

«Ирландия населена нищими», - пишет барон д'Оссе.

Ирландские крестьяне большей частью ютились в хижинах или землянках, сложенных из сырой глины и камней. «Эти хижины состоят из одной комнаты, где вместо всей мебели видите вы горшок для варения вечного картофеля, соломенный тюфяк и оборванное одеяло, под которым вповалку ложатся все члены семейства, почти в совершенной наготе, стараясь таким образом согревать друг друга», - сообщает корреспондент русского журнала.

«Землянки представляли собой настоящие дыры с крышей на уровне земли; в такое жилище, незаметное снаружи, можно при неосторожности провалиться», - сообщает Коль.

Официальные власти, кстати, признавали эту нищету. «Большая часть их (ирландцев) постоянно терпит нужду в самых необходимых предметах. Их жилища – жалкие хижины: здесь спят вместе все члены семьи на соломе либо на голом полу, иногда укрываясь одеялом, а иногда и вовсе без всякого укрытия».

«Нередко голод гонит их питаться дикими травами», – отмечает правительственная комиссия в 1836.

«Голод в Ирландии, – говорил в 1831 депутат английского парламента, - постоянное явление, – он прекращается лишь на время».

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

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

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

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

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

«Ирландцам хватает картофеля только на то, чтобы в течение тридцати недель жить впроголодь, а на остальные двадцать две недели не остается ничего… жена забирает детей и с чайником в руках идет нищенствовать… отец семейства… отправляется на заработки», – отмечает Ф. Энгельс в 1844-м.

Культура картофеля сильно истощает почву, для её восстановления требуется много удобрений и плодосмена. При несоблюдении этих правил, сборы падают, сменяясь полным неурожаем. Историк ХIХ века Дж. О’Рурк подсчитал, что между 1821-м и 1846-м неурожаи картофеля в Ирландии повторялись в среднем каждые 2-3 года. Исследователь Дж. О’Брайен насчитал между 1800 и 1846 годами 16 неурожаев.

Каждый неурожай или даже небольшой недород картофеля означал трагедию для Ирландии. Начиналась массовая смертность. Так неурожай в 1817 г. привёл к гибели от голода 60-70 тыс. человек.

Грибковая болезнь картофеля пришла в Ирландию из Западной Европы в 1844, тогда объем поражения посевов оказался небольшим.

В 1845 эпидемия разразилась, когда основная часть урожая была уже собрана – погибло около трети картофеля.

В 1846 посевы картофеля погибли на площади около 1,5 млн. акров, что составляло более половины земли занятой под него.

Голод принял катастрофические масштабы. Людей, ослабленных голодом, косили болезни – тиф, лихорадка, дизентерия.

«Убитые нравственно, измученные голодом и лихорадкой, миллионы ирландцев покрыли улицы, площади, большие дороги и с каким-то бессмысленным терпением ожидали конца своих страданий», – пишет корреспондент русского журнала.

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

В 1847-м эпидемия не затронула посевы картофеля. Но в июле 1848-го эпидемия уничтожила урожай.

А теперь посмотрим на действия британского правительства в условиях это катастрофы.

Французский наблюдатель Эдуард Деши писал в 1847 году, правительство самой богатой в мире страны «не хочет что-либо сделать».

Британский журнал «Экономист» (тот самый, респектабельный, который до сих пор читают все порядочные либеральные экономисты) писал в январе 1847 года: «Что может сделать правительство для ослабления этого бедствия? Крайне мало. Оно может лишь устранить те препятствия, которые мешают народу самому позаботиться о себе, но сверх этого оно может сделать очень мало».

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

Глава британского правительства, составленного из вигов (либералов), лорд Джон Рассел отвергая проекты помощи голодающим в октябре 1846, заявил: «Следует хорошенько усвоить себе, что мы не можем кормить народ». Исходя из этого, казначейство отказалось выделить средства на помощь голодающим.

Министр казначейства Ч.Вуд и постоянный заместитель министра Ч. Тревельян заявляли, что они не желают вмешиваться в «законы спроса и предложения».

Мне почему-то представляется, что они сказали за чашечкой чая, с лёгкой усмешкой, а уже через минуту перешли на обсуждение игры в конное поло или крикет.

Да, либералы очень любят прикрываться законами рынка, хотя они именно те, кто спокойно насилует эти законы в свою пользу.

Не был ограничен даже вывоз продовольствия из голодающей страны.

В 1846 из Ирландии было вывезено хлебных злаков, мяса, молока, масла в три раза больше, чем в неё ввезено.

В последующие голодные годы вывоз скота из Ирландии только вырос. «Непреложным остается факт, что количество масла, мяса, муки и других ирландских продуктов в устье рек Темзы и Мерсея (то есть на входе в английские порты)» в настоящее время больше, чем когда-либо ранее», - сообщает корреспондент американской газеты.

«… Мы вошли в хижину. В дальнем углу, едва видные сквозь дым и покрывающее их тряпье, лежали обнявшись трое детей, с запавшими глазами, без голоса, в последней стадии дистрофии… Над остатками горящего торфа скорчилась еще одна фигура, дикая, почти нагая, почти нечеловеческая с виду. Жалобно стеная, иссохшая старуха умоляла нас дать ей что-нибудь, показывая руки, на которых кожа свисала с костей...», – пишет английский автор, посетивший Ирландию в 1847-м. И в то же время «огромные стада коров, овец и свиней… отправляются с каждым отливом, из каждого из 13 наших портов, курсом на Англию, и помещики получают арендную плату и отправляются тратить ее в Англию, и сотни бедняков ложатся и умирают вдоль дорог от недостатка пищи».

Правительство даже отказалось ввести ограничение на расходование картофеля для производства спирта.

17 августа 1846 года, после второго неурожая, лорд Рассел заявил в парламенте, что правительство не намерено закупать продовольствие для голодающих.

Я уверен, что во всяких старомодных энциклопедиях «Британниках» и новомодных Википедиях об этом государственном муже написан только елейный позитив. И он, между прочим, занимал пост премьер-министра в общей сложности более 7 лет. Успешный нужный для своей Англии человек.

В январе 1847-го был принят закон о суповых кухнях, согласно которому голодающим выдавали по тарелке похлебки раз в день. Но таких пунктов было мало и огромные толпы осаждали их, занимая очередь с вечера; похлебка была жидкой и малопитательной. И уже в конце лета 1847-го выдача супа была прекращена и более не возобновлялась. Хотя самый страшный голод наступил после неурожая 1848 года.

Богатейшая страна мира не нашла средств для спасения народа и страны, входящей непосредственно в метрополию Соединённого королевства.

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

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

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

В 1848-1849 число согнанных с земли составило свыше 1 млн. чел. То есть, в период колоссального бедствия правящий в Ирландии класс английских землевладельцев лишал огромное число людей единственного источника их пропитания – земли.

Число мелких ферм с размерами от 1 до 5 акров в 40-х сократилось с 444750 до 113167, то есть почти в 4 раза.

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

Между 1841 и 1851 годами Ирландию покинуло 1289 тыс. чел, из них около миллиона за океан. Но около трети из них не добралось до нового места жительства; ослабленные голодом люди легко оказывались жертвами болезней.

Попытка восстания, подготовленная весной 1848 Ирландской конфедерацией, была легко разгромлена. Голодающие на восстание не способны.

По переписи 1841 года численность населения Ирландии, включая англосаксонских колонистов-протестантов, составляла 8175,1 тыс. человек. Учитывая рост населения Ирландии за предыдущие два десятилетия, между переписями 1821 и 1841 годов, то следует предположить, что в 1851 году оно должно было составить примерно 9 миллионов человек. В действительности, по переписи 1851 года в Ирландии проживало 6552,3 тыс. человек. Население сократилось на 2,5 млн. Если вычесть число эмигрантов, среди которых, ослабленных голодом, погибли еще сотни тысяч человек при переселении, то число погибших от голода на ирландской земле составило 1,5 миллиона человек.

Бегство с острова продолжалось ещё долго и после прекращения Великого ирландского голода. К концу ХIХ века в Ирландии проживало лишь 4,46 млн. человек, включая протестантское англосаксонское меньшинство.

План по сокращению вдвое коренного ирландского населения был выполнен.

В результате Великого ирландского голода физически вымерло или бежало за океан мелкое фермерство. Зато окрепло крупное фермерство, работающее на рынок. Британский капитализм в Ирландии победил полностью.

И даже 180 лет спустя в Ирландии (в обеих ее частях, включая протестантов) живет населения на четверть меньше, чем в 1841 году.

Итак, все предпосылки к катастрофическому ирландскому голоду были созданы сознательно. В других странах, типа Германии и Бельгии, откуда собственно и пришел грибок в Ирландию, и близко не было столь катастрофической ситуации. В ходе голода британское правительство и британский правящий класс (капитал) сделали всё от них зависящее, чтобы голод убил и заставил покинуть родину максимальное количество людей. Именно по схожей схеме, создание за счет грабежа предпосылок к катастрофе и неоказание помощи людям проходили истребительные вспышки голода в той же Ирландии и неоднократно ранее, также и в горной кельтской части Шотландии, и в другой британской колонии – Индии. Это является сутью политики англосаксонского капитализма – убивать так, чтобы казалось, что жертвы убили себя сами, не вписавшись в рынок. И никаких тебе потом криков от прогрессивной общественности, что «вы ответите за геноцид», «не забудем не простим», «вы заплатите многомиллиардную компенсацию». Получается, что жертвы просто взяли и умерли сами.

Это всегда надо помнить - если мы окажемся под властью англосаксов, мы умрем «сами». Нас останется всего 50 миллионов, но для международной общественности всё будет окей – «сами» же.

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

Александр ТЮРИН

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

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