Проблемы Эволюции

Проблемы Эволюции

Процессы самоорганизации в онтогенезе многоклеточных: опыт имитационного моделирования

Марков М. А., Марков А. В.

Обзор 27. Дополнение. Доклад на семинаре «Вопросы эволюции» 20.05.2011.

 

Процессы самоорганизации в онтогенезе многоклеточных: опыт имитационного моделирования

Доклад на семинаре «Вопросы эволюции» 20.05.2011

М.А.Марков, А.В.Марков

 

.

В качестве эпиграфа к докладу я расскажу один исторический анекдот. Однажды Джон Холдейн, эволюционист, известный своими афоризмами, читал публичную лекцию, после которой одна дама встала и сказала: «А все-таки я не могу поверить, что из одноклеточного организма само собой могло развиться такое сложное и совершенное существо, как человек, даже если у него были на это миллиарды лет». Холдейн на это ответил: «Мадам, но вы сами это проделали. И у вас ушло на это всего девять месяцев».

 

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

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

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

Основная сложность в том, что базовые принципы онтогенеза многоклеточных во многом контринтуитивны, трудны для понимания. Мозг Homo sapiens вообще плохо приспособлен для понимания процессов самоорганизации и самосборки. Наше мышление специализировано для целеполагания, мы привыкли планировать свои действия, ориентируясь на ожидаемый результат. Поэтому нам и кажется, что если чего-то не предусмотришь, не проконтролируешь, то ничего хорошего и не выйдет – только разруха и хаос.

Поэтому когда мы видим, как из чего-то простого само собой вдруг образуется что-то сложное, нам это кажется чудом, и мы начинаем подозревать воздействие какой-то особой организующей силы. Мы начинаем изобретать лишние сущности. Будь то Ламарковское «стремление к совершенству», «радиальная энергия» Тейяра де Шардена, «активность» Юрия Викторовича Чайковского, номогенез, ортогенез и так далее.

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

 

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

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

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

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

Чуть точнее будет сравнение с рецептом (или алгоритмом), на основе которого повар готовит торт. Между частями пирога или соуса и отдельными элементами рецепта (словами, предложениями), как правило, нет взаимно однозначного соответствия. По готовому изделию можно восстановить его чертеж достаточно близко к оригиналу. Восстановить по «фенотипу» пирога его рецепт принципиально труднее, а восстановить его дословно в общем случае невозможно. На это обстоятельство указывал Р. Докинз, объяснявший с его помощью, в частности, невозможность ламарковского наследования приобретенных признаков. Но метафора «рецепта» тоже несовершенна. Рецепт, как правило, содержит команды на уровне целого изделия («придать тесту такую-то форму», «тщательно перемешать»). Но в геноме зиготы нет инструкций, выполняемых на уровне целого эмбриона. Геном содержит лишь набор локальных правил поведения, выполняемых на уровне отдельных клеток. Геном можно называть рецептом или алгоритмом только с этой оговоркой.

В программировании такие алгоритмы достаточно хорошо известны. Их называют «алгоритмами самосборки».

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

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

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

У нас есть подозрение, что следствия, вытекающие из этого базового принципа онтогенеза многоклеточных, являются наиболее контринтуитивными и трудными для понимания. Какими свойствами должен обладать онтогенез многоклеточных исходя из того, что он основан на этом принципе? Мы предположили, что многие специфические, нетривиальные свойства онтогенеза могут быть на самом деле просто-напросто неизбежными следствиями этого принципа. В таком случае для них не нужны специальные объяснения.

Мы попытались при помощи моделирования определить круг свойств онтогенеза, которые могут быть следствиями этого принципа. Для  этого была разработана программа EvoDevo.

Есть такой афоризм – кстати, совершенно неправильный – что модель, это такая штука, в которую что заложишь, то и получишь. Модель – это просто усилитель для мозгов. Модель помогает просчитать и понять то, что мы не можем просчитать невооруженным мозгом. Если мозг не может создать новых знаний, то и модель не может. А если может мозг, то может и модель.

Так вот, в программу Эво-Дево изначально НИЧЕГО не заложено, кроме вот этого принципа.

Программа дает нам одну исходную клетку – зиготу. Мы, то есть экспериментаторы, можем задать любой набор правил поведения клетки. Следовать этим правилам будут все клетки нашего эмбриона. Мы не можем задать правило для всего эмбриона. Мы не можем сказать бластуле «сделай себе впячивание и превратись в гаструлу». Мы можем задать только правила для КЛЕТКИ, например: при таких-то условиях мигрируй туда, где возрастает концентрация такого-то вещества. Причем набор правил один и тот же для всех клеток. Мы пишем этот набор правил вот в этом окошке, потом нажимаем кнопку RUN, и наша зигота начинает выполнять наши правила.

Клетка может выполнять следующие действия:

1) Выделять одно или несколько сигнальных веществ («морфогенов»), которые распространяются в окружающей среде (концентрация морфогена убывает по мере удаления от выделяющей клетки).

2) Делиться, причем плоскость деления может быть ориентирована случайным образом или перпендикулярно градиенту одного из морфогенов.

3) Перемещаться (в случайном направлении или вдоль химического градиента).

4) Отмирать (претерпевать апоптоз).

5) Становиться клеткой того или иного «типа» (аналог клеточной дифференциации, см. ниже).

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

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

 

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

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

Программа Evo-Devo позволяет моделировать онтгогенез в трехмерном пространстве, однако мы пока для простоты ограничились двумерным моделированием («плоскими» организмами).

Программа EvoDevo позволяет, произвольно меняя «генотип», создавать неограниченное разнообразие онтогенезов и «организмов» (точнее, упорядоченных многоклеточных структур).

Вот несколько примеров тварюшек, с которыми мы работали.

 

Ну а вот этот генотип мы рассмотрим в качестве примера поподробнее.

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

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

Онтогенез, генерируемый этим генотипом, показан на этом слайде.

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

Пояснение, как развивается червяк

В данном случае онтогенез протекает следующим образом. Сначала в результате неупорядоченных делений исходной клетки и ее потомков формируется округлое скопление клеток. Затем одна из клеток на краю скопления начинает выделять морфоген 0, который задает передне-заднюю полярность эмбриона. Эта клетка становится «организатором», маркирующим передний конец эмбриона. Когда скопление немного увеличится в размере за счет роста клеток, на его противоположном конце возникает второй «организатор» – клетка, выделяющая морфоген 1 и маркирующая задний конец эмбриона. После этого происходит дифференцировка клеток эмбриона на клетки передней и задней полусфер и «пояска»; этот процесс управляется соотношением концентраций морфогенов 0 и 1. Внешние клетки передней полусферы образуют плотный «эпителий». Клетки пояска начинают выделять морфоген 2, который ингибирует деление клеток задней полусферы. Внешние клетки задней полусферы, достаточно удаленные от заднего организатора («боковые»), превращаются в клетки типа 1 и образуют плотный эпителий, фиксируя форму растущего червя. Внешние клетки задней полусферы, достаточно удаленные от пояска и достаточно близкие к заднему организатору («хвостовые»), делятся, обеспечивая нарастание заднего конца эмбриона. Внутренние клетки задней полусферы, достаточно удаленные от заднего организатора и от источников морфогена 2, превращаются в клетки септ, разделяющих «сегменты», и начинают выделять морфоген 2 (то же самый, что и клетки пояска). Когда тело червя достигает определенной длины, концентрация морфогена 0 становится достаточно низкой, и тогда задний организатор прекращает выделение морфогена 1, что ведет к прекращению роста эмбриона и образованию плотного эпителия на его заднем конце. После этого все клетки септ однократно делятся, в результате чего часть этих клеток мигрирует («продавливается») сквозь эпителий и вступает в контакт к внешней средой, что приводит к их превращению в клетки типа 5. Последние начинают выделять морфоген 3 и делятся по градиенту морфогена 2, что ведет к росту «конечностей», который лимитируется концентрациями морфогенов 2 и 3.  

*****

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

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

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

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

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

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

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

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

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

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

На этом слайде показаны некоторые примеры. А – резко изменены ранние стадии развития, но тело с сегментами и придатками все равно сформировалось. Здесь было увеличено число делений на ранних стадиях развития, что непосредственно приводит к увеличению головы. Полученный результат можно также рассматривать как проявление 1) «плейотропности» фенотипических проявлений генов – регуляторов развития: одна мутация приводит одновременно и к увеличению головы, и сокращению числа сегментов туловища; 2) «морфогенетических корреляций»: увеличение головы автоматически приводит к олигомеризации туловища. То есть создается впечатление, что развивающийся модельный организм ведет себя как нечто целое. Это я намекаю на труды И.И.Шмальгаузена.

Многие мутации оказывают комплексное влияние на фенотип модельных организмов. По-видимому, плейотропность неизбежно вытекает из того обстоятельства, что клетки эмбриона влияют друг на друга и общаются при помощи химических сигналов. Поэтому поведение клеток оказывается взаимосвязанным, между частями организма возникают морфогенетические корреляции, а весь организм в ходе онтогенеза ведет себя в определенном смысле как единое целое. Плейотропность генов – регуляторов онтогенеза рассматривается как один из важнейших эмпирических выводов современной эволюционной биологии развития (Carroll, 2008). По-видимому, плейотропность связана не только с неизбежностью формирования морфогенетических корреляций в ходе онтогенеза, но и с тем обстоятельством, что имеющиеся морфогены являются в высшей степени удобными и перспективными «преадаптациями» для формирования новых элементов генно-регуляторных сетей. Для того, чтобы создать новую упорядоченную структуру (например, дополнительную пару конечностей или пятно на крыле), как в реальной эволюции, так и при моделировании в программе Evo-Devo, проще не создавать «с нуля» новые генно-регуляторные контуры и градиенты морфогенов, а «пристроить» программу формирования новой структуры к уже имеющимся контурам и градиентам. Отсюда неизбежно следует плейотропность.

Б, В, Г – это фенотипические результаты одной и той же мутации. В первых двух случаях она привела к появлению интересных новшеств. Появилась септа нового типа между головой и туловищем, появился один дополнительный сегмент, и редуцировался один из секторов головы. То есть некоторые мутации приводят к появлению морфологических новшеств, причем степень сложности и упорядоченности фенотипа при этом не снижается или даже увеличивается.

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

Д-Е: это другая мутация. В одном случае появился новый признак – придатки на голове, в другом – получился нормальный фенотип. Это два варианта развития при одном и том же геноме. Опять мы видим неполную пенетрантность нового признака, возникшего в результате мутации.

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

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

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

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

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

 

ЗАКЛЮЧЕНИЕ

Итак, многие свойства онтогенеза модельных организмов характерны и для онтогенеза реальных животных. На этом слайде перечислены такие свойства. Это позволяет предполагать, что заложенный в программу базовый принцип может быть достаточным объяснением этих свойств. Многочисленные частные различия между моделью и реальностью лишь повышают надежность этого заключения. Они показывают, что все те реалии, которые не были заложены в программу (например, трехмерность живых организмов), по-видимому, не влияют на выявленные общие свойства.

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

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

 


 

ДОПОЛНЕНИЕ:

Демонстрация некоторых других мутантов

 

Рекламные ссылки