Р

Реконструкція вихідного коду вакцини BioNTech/Pfizer від ковіду

Як відомо, вакцина – це субстанція, яка тренує імунну систему реагувати на інфекцію ще до того, як організм захворів. Найновіші вакцини від коронавірусу, створені за технологією так званої матричної РНК (mRNA) містять послідовність генетичних команд, які виконують наші клітини. У статті розшифровано цю послідовність для вакцини BioNTech/Pfizer – за аналогією до того, як розшифровується код комп'ютерних програм.

Вітаю! У цій статті ми посимвольно розглянемо вихідний код вакцини від коронавірусу BioNTech/Pfizer SARS-CoV-2 mRNA.

Ремарка автора: Я хочу подякувати багатьом людям, які витратили час на попередній перегляд цієї статті на предмет її зрозумілості та правильності. Всі можливі помилки залишаються моєю відповідальністю, але я хотів би, щоб ви швидко повідомили про них на адресу bert@hubertnet.nl чи @PowerDNS_Bert.

Переклад: Сергій Лук'янчук. Оригінальний текст статті можна прочитати тут.

Заголовок може здатися некоректним: вакцина – це ж рідина, яку вводять вам у руку. Як можна говорити про неї як про вихідний програмний код?

Це гарне питання, тому почнімо з дуже маленької частини того самого вихідного коду вакцини BioNTech/Pfizer, відомої також як BNT162b2, вона ж Тозінамеран (Tozinameran), вона ж Комірнаті (Comirnaty).

code_bnt162b2.png

Перші 500 символів коду матричної РНК вакцини BNT162b2. Джерело: World Health Organization

В основі матричної РНК-вакцини лежить цифровий код. Він має довжину 4284 символи – тобто його можна було б відтворити кількадесятьма повідомленнями в Twitter. На самому початку процесу виробництва вакцини хтось завантажив цей код у ДНК-принтер (саме так), а той перетворив байти на диску в реальні молекули ДНК.

code_bnt162b2.png

ДНК-принтер Codex DNA BioXp 3200

На виході такої машини отримують крихітну кількість ДНК, з якої після багатьох біологічних та хімічних процедур з’являється РНК (про неї докладніше згодом) в ампулі з вакциною. Доза в 30 мікрограмів насправді містить 30 мікрограмів РНК. До неї додано продуману систему ліпідної (жирової) «упаковки», яка забезпечує проникнення матричної РНК у наші клітини.

РНК – це короткочасна «оперативна пам’ять» для ДНК. Останню можна порівняти з біологічною флешкою для запису інформації. Вона дуже стійка, має внутрішнє резервування інформації й вельми надійна. Але подібно до комп’ютерів, які не виконують програмний код безпосередньо на флешці, спочатку код копіюється на швидшу, більш гнучку, але менш стійку систему.

Для комп'ютерів це буде оперативна пам'ять, у біології це РНК. Схожість між ними вражає. На відміну від флешпам'яті, запис в оперативній пам'яті дуже швидко зітреться, якщо про його збереження спеціально не подбати. Причина, чому матрична РНК-вакцина Pfizer/BioNTech має зберігатися за дуже низьких температур, така сама: РНК – тендітна річ.

Кожний символ РНК важить 0.53·10⁻²¹ грамів – це означає, що в дозі масою 30 мікрограмів міститься 6·10¹⁶ символів. Якщо записати їх у байтах, вийде близько 25 петабайтів. Утім, треба зазначити, що насправді це близько двох тисяч мільйонів повторів однієї й тієї ж послідовності з 4284 символів. Реальний інформаційний розмір вакцини становить трохи більш ніж кілобайт. А сам вірус SARS-CoV-2 має розмір близько 7,5 кілобайтів.

Коротко про байти – комп’ютерні та біологічні

ДНК – це цифровий код. На відміну від комп’ютерів, де використовуються 0 та 1, життя використовує генетичні коди A, C, G та U/T (нуклеотиди, нуклеозиди чи бази). (Літерою А позначають аденін, С – цитозин, G – гуанін, U/T - урацил/тимін – прим. перекл.)

Нетрансльована ділянка «три штрих»

У природі A, C, G та U/T є молекулами, що зберігаються як ланцюжки в ДНК (або РНК).

У комп’ютерах ми групуємо вісім бітів у байт, і цей байт є типовою одиницею обробки даних.

Природа групує три нуклеотиди у кодон, і цей кодон є типовою одиницею обробки даних – як комп’ютерний байт. Кодон містить 6 бітів інформації (два біти на кожний символ ДНК, загалом три символи = 6 бітів). Це означає, що існує 2⁶ = 64 різних значення кодона.

Поки що все виглядає дуже по-комп’ютерному. Якщо хтось сумнівається, ось документ ВООЗ із цифровим кодом – подивіться самі.

Додатково почитати про ці речі можна тут – лінк на публікацію «Що таке життя» допоможе зрозуміти те, що написане далі. Або якщо вам більше до вподоби відео, ось воно – аж дві години.

Тож що цей код РОБИТЬ?

Ідея вакцини в навчанні нашої імунної системи: як боротися з патогеном без того, щоб попередньо захворіти. В історичному сенсі це робили завдяки ін’єкціям ослабленого чи вбитого вірусу, плюс допоміжна речовина, яка «лякає» імунну систему і спонукає її до дії. Це була точно аналогова, а не цифрова технологія, для якої використовувалися мільярди курячих яєць (або комах). Вона також потребує везіння та тривалого часу. Іноді для виробництва вакцини використовувався інший вірус, не пов’язаний з початковою хворобою.

Вакцина на основі матричної РНК досягає того ж (навчити нашу імунну систему), але робить це за «принципом лазера». До того ж в обох сенсах – дуже вузьке фокусування, але й дуже потужний вплив.

Ось як це працює. Ін’єкція містить короткоживучий генетичний матеріал, який описує сумнозвісний «шпичак» – протеїн на поверхні вірусу SARS-CoV-2. За допомогою хитрих хімічних способів вакцина спроможна передати цей генетичний матеріал у деякі з наших клітин.

Ті ж починають старанно виробляти протеїни «шпичаків» SARS-CoV-2 у достатньо великих кількостях, і на них спрацьовує наша імунна система. Зіштовхнувшись із протеїнами «шпичаків» та (що важливо) сигналами тривоги, що клітину захопив вірус, імунна система розробляє потужну відповідь як проти «шпичаків», так і проти процесу їхнього виробництва.

І саме так і з’являється вакцина з ефективністю 95%.

Вихідний код!

Почнімо з самого початку – це найкраще. Документ ВООЗ містить ось цю корисну ілюстрацію.

vaccine-toc.png

Це щось на кшталт змісту в книжці. Спочатку розгляньмо «заголовок», або «кеп» – він зображений як маленький «кашкет».

Так само як неможливо просто накидати оператори мови програмування у файл і запустити на виконання, біологічній операційній системі теж потрібні заголовки, редактори зв’язків та щось подібне на процедури виклику команд.

Код вакцини починається з цих двох нуклеотидів:

GA

Усе це дуже подібне на виконавчий файл під DOS та Windows, який починається з символів MZ, або скрипти під операційну систему UNIX, які починаються з #!. І в біологічних, і в комп’ютерних операційних системах ці символи насправді не є командами на виконання. Однак вони мають бути, бо без них нічого не станеться.

«Кеп» у матричній РНК виконує низку функцій. По-перше, він позначає генетичний код як такий, що належить до ядра клітини. У нашому випадку це, звісно ж, не так – наш код походить із вакцини. Але нам не треба повідомляти клітину про це. «Кеп» надає коду «легального» вигляду, що захищає його від руйнування.

Перші два нуклеотиди GA також дещо відрізняються за хімічним складом від решти РНК. У цьому сенсі вони є своєрідним «позасмуговим сигналом» – як у комп’ютерних мережах, де в такий спосіб службова інформація передається окремо від даних.

Нетрансльована ділянка «п’ять штрих»

Тут буде трохи професійної лексики. Послідовність молекул РНК можна читати лише в одному напрямку. Частина, де починається зчитування, називається «5’», або нетрансльована ділянка «п’ять штрих». Зчитування зупиняється на «3’», або «три штрих».

Живі організми складаються з протеїнів (або субстанцій, виготовлених протеїнами). Всі ці протеїни (вони ж білки) описані в РНК. Коли остання створює протеїни, це називається трансляція.

Ось нетрансльована ділянка «п’ять штрих», тобто цей фрагмент не утворює протеїну:

GAAΨAAACΨAGΨAΨΨCΨΨCΨGGΨCCCCACAGACΨCAGAGAGAACCCGCCACC

І тут є те, що нас має відразу здивувати. Звичайні символи на позначення молекул РНК – це A, C, G та U. U у випадку ДНК позначається як ’T’. А тут ми бачимо символ Ψ – що ж це таке?

А це – одна з надзвичайно розумних речей, втілених у цій вакцині. Наше тіло має потужну антивірусну систему – так би мовити, оригінальну. З цієї причини клітини дуже несхвально ставляться до чужих молекул РНК і ретельно намагаються зруйнувати їх до того, як вони щось зроблять.

І це становить проблему для нашої вакцини – їй треба оминути нашу імунну систему. Після багатьох років експериментів було встановлено, що заміна нуклеотиду U в РНК на злегка змінену молекулу призводить до того, що наша імунна система втрачає до неї цікавість. Це справді так.

Тож у вакцині BioNTech/Pfizer кожний нуклеотид U, урацил, був заміщений сполукою 1-метил-3’-псевдоуриділил, яка позначена символом Ψ. Хитрість тут у тому, що хоч замінник Ψ «заспокоює» нашу імунну систему, інші частини клітини сприймають його як нормальний нуклеотид U.

У комп'ютерній безпеці такий трюк теж відомий: іноді можливо передати злегка змінену версію команди, яка «обдурює» фаєрволи та антивіруси, але все одно приймається на виконання внутрішнім сервером – і той у такий спосіб можна хакнути.

Зараз ми пожинаємо плоди фундаментальних наукових досліджень, виконаних у минулому. Відкривачам Ψ-техніки довелося боротися за те, щоб їхню роботу фінансували, а потім сприйняли її результат. Нам усім слід бути дуже вдячним їм, і я впевнений, що свою Нобелівську премію вони заслужено здобудуть.

Багато людей запитували, чи можуть віруси також використовувати Ψ-техніку, щоб обходити нашу імунну систему. Коротка відповідь – це вкрай малоймовірно. Біологічне життя просто не має механізмів для утворення нуклеотидів 1-метил-3’-псевдоуриділил. Віруси використовують біологічну механіку для відтворення, а її в цьому разі не існує. Вакцини матричних РНК швидко розпадаються в людському тілі, і неможливо, щоб РНК із Ψ-модифікацією реплікувалася, маючи у своєму складі нуклеотид Ψ.

І ось ще одна варта прочитання стаття: «Ні, вакцини з матричних РНК не вплинуть на вашу ДНК».

чи можуть віруси також використовувати Ψ-техніку, щоб обходити нашу імунну систему. Це вкрай малоймовірно

Гаразд, повернімося до нетрансльованої ділянки «п'ять штрих». Що робить цей 51 символ. Як все у природі, вона не має єдиної чіткої функції.

Коли нашим клітинам потрібно транслювати РНК у протеїни, це виконує клітинна машина під назвою рибосома. Це як 3D-принтер для протеїнів. Вона поглинає ланцюжок РНК і на її основі виділяє послідовність амінокислот, які потім згортаються в білок.

Джерело: користувач Вікіпедії Bensaccount

Це ми бачимо на ілюстрації вище. Чорна смужка знизу – це РНК. Смужка в зеленій зоні – це протеїн, що формується. Те, що потрапляє всередину і назовні – це амінокислоти та адаптери, які припасовують їх до РНК.

Рибосома має фізично «сісти» на ланцюжок РНК, щоб почати роботу. Після цього вона формує протеїни на основі подальшої частини РНК, яку вона поглинула. З цього можна уявити, що рибосома не може зчитати ту частину, на яку вона початково «сіла». Це і є однією з функцій нетрансльованої ділянки: це зона посадки для рибосоми. І маркер початку трансляції.

На додачу до цього, нетрансльована ділянка також містить дані для опису процесу: коли має початися трансляція? Скільки вона має тривати? Для вакцини використовується варіант нетрансльованої ділянки, який дає найбільшу з відомих команд «роби негайно», отриману з гена альфа глобіну. Цей ген відомий тим, що потужно виробляє багато протеїнів. У попередні роки вчені знайшли спосіб ще більше оптимізувати не трансльовану область (як стверджує документ ВОЗ), тож це не зовсім не трансльована область альфа-глобіну. Вона краща.

Сигнальний пептид S глікопротеїн

Як вже зазначалося, мета вакцини – спонукати клітину виробляти велику кількість протеїну «шпичака» вірусу SARS-CoV-2. До цього моменту ми здебільшого розглядали аналоги допоміжних даних та процедур виклику команд у вихідному коді вакцини. А от зараз ми вступаємо на територію самого вірусного протеїну.

Утім, слід розглянути ще один рівень допоміжних даних. Щойно рибосома (та, що на чудовій анімації вище) створила протеїн, він ще має кудись надійти. І це кодує сигнальний пептид S глікопротеїн (розширена лідерна послідовність).

Це можна уявити, ніби на початку протеїну міститься щось на кшталт наліпки з адресою – закодованої як частина самого протеїну. У цьому специфічному випадку сигнальний пептид повідомляє, що цей протеїн має вийти з клітини через «ендоплазматичний ретикул». Навіть сленг у серіалі «Стар Трек» не звучить настільки пафосно, як цей термін!

Сигнальний пептид не дуже довгий, але якщо подивитися на код, помітні відмінності між послідовністю РНК у вірусі та вакцині (зверніть увагу, що для порівняння я замінив химерний символ модифікованого нуклеотиду Ψ на звичайний символ U зі складу РНК):

vir11.jpg

Що тут відбувається? Я не просто так представив РНК як групи з трьох символів. Ці символи в РНК складають кодон. І кожний кодон кодує окрему амінокислоту. Сигнальний пептид у вакцині складається з точно тих самих амінокислот, що і сам вірус.

Тож чому РНК відрізняється?

Є 4³=64 різних кодони: чотири символи РНК, і три з них складають кодон. Але при цьому існує лише двадцять різних амінокислот. Це означає, що кілька різних кодонів можуть закодовувати одну і ту саму амінокислоту.

Біологічне життя застосовує цю майже універсальну таблицю співвідношення кодонів РНК із відповідними амінокислотами.

rna-codon-table.png

Таблиця кодонів РНК (Wikipedia)

У таблиці ми бачимо, що модифікації кодонів у вакцині (UUU -> UUC) є синонімічними. Код РНК у вакцині та у вірусі відрізняється, але на виході будуть ті ж амінокислоти і той самий протеїн.

Якщо ми подивимося ретельніше, то побачимо, що більшість змін відбувається в третій позиції кодона, яку на ілюстрації позначено як ‘3’. А якщо ми звіримося з універсальною таблицею кодонів, то виявимо, що в цій третій позиції часто нема значення, яка амінокислота буде створена.

Тобто, зміни є синонімічними, але навіщо вони? Придивившись, ми бачимо, що всі вони (за винятком однієї) зводяться до появи в кодонах більшої кількості нуклеотидів C та G.

Для чого це робити? Як зазначалося вище, наша імунна система вельми несхвально ставиться до РНК «іззовні» клітини. Щоб уникнути виявлення, нуклеотид ‘U’ у РНК вакцини вже поміняли на Ψ.

Утім, виявляється, що РНК із більшою кількістю нуклеотидів G та C ефективніше транслюється в протеїни. І саме це явище знайшло застосування в РНК-вакцині, де максимально можлива кількість нуклеотидів була замінена на G та C.

Я певною мірою зачарований єдиною зміною в коді, яка не веде до появи додаткового C чи G: модифікацією CCA -> CCU. Якщо хтось знає причину, будь ласка, повідомте мене! Зважте, що я знаю, що деякі кодони в людському геномі трапляються частіше, ніж інші, але я також читав, що це не впливає суттєво на швидкість трансляції.

Власне протеїн «шпичака»

Наступні 3377 символів у РНК вакцини є аналогічно «оптимізовані за кодонами», щоб додати побільше нуклеотидів C та G. Заради економії тексту я не публікуватиму тут весь код, але ми зосередимося на одному вкрай специфічному фрагменті. Саме він забезпечує роботу вакцини і саме завдяки йому ми повернемося до нормального життя.

vir21.jpg

Тут ми бачимо вже звичні нам синонімічні заміни РНК. Наприклад, у першому кодоні CUU замінена на CUG. Це додає у вакцину ще один нуклеотид G, а це, як ми знаємо, посилює виробництво протеїну. Але і CUU, і CUG кодують амінокислоту L (лейцин), тобто в протеїні нічого не змінилося.

Якщо порівняти всю послідовність протеїну вірусного «шпичака» у вакцині, всі зміни будуть синонімічними – за винятком двох, які ми бачимо тут.

Третій та четвертий кодони репрезентують цю зміну. Амінокислоти K та V замінені на P, тобто амінокислоту пролін. Для «К» заради цього знадобилися три зміни (позначені на ілюстрації як «!!!», а для V – лише дві (позначені як «!!»).

Виявляється, ці дві зміни надзвичайно посилюють ефективність вакцини.

Тож що саме тут відбувається? Якщо подивитися на реальну вірусну частку SARS-CoV-2, то можна побачити, що протеїн «шпичака» – це є, власне, група шпичаків. Вони містяться на тілі вірусу (нуклеокапсидний протеїн). Але річ у тому, що наша вакцина генерує лише шпичаки, і вони не прикріплені до певного вірусного тіла.

Як виявилося, цей «відокремлений» протеїн «шпичака» згортається в іншу структуру. Якщо його ввести в тіло з вакциною, він справді створить імунітет… але тільки до «згорнутого» протеїну «шпичака». А справжній вірус SARS-CoV-2 має «розгорнуті шпичаки». І в цьому випадку вакцина добре не спрацює.

sars-em.jpg

Вірусна частинка SARS (Wikipedia)

Тож що робити? У 2017 році науковці описали, як подвійна заміна на амінокислоту пролін у потрібному місці змусить протеїни SARS-CoV-1 та MERS S набути «початкової» конфігурації, навіть якщо вони не є частиною цілого вірусу. Це відбувається тому, що пролін – дуже непластична амінокислота. І вона діє як своєрідна шина, фіксуючи протеїн у формі, яку нам треба показати імунній системі.

Люди, які здійснили це відкриття, мали б ходити вулицею і безупинно показувати одне одному великий палець. І випромінювати нестерпну кількість самозадоволення. І все це було б цілком заслужено.

(Доповнення! Зі мною зв’язалися з лабораторії McLellan – однієї з груп, що зробила відкриття проліну. Ці люди кажуть, що з вітальними жестами не дуже виходить через пандемію, але їм приємно зробити свій внесок у розробку вакцин. Вони також наголошують на важливій ролі інших дослідницьких груп, співробітників та волонтерів).

Кінець протеїну, наступні етапи

Якщо проглянути решту вихідного коду, то побачимо незначні модифікації наприкінці протеїну «шпичака»:

vir31.jpg

Наприкінці протеїну ми виявимо кодон «стоп», позначений тут як маленька ’s’. Це чемний спосіб заявити, що протеїну слід тут закінчитися. Оригінальний вірус використовує стоп-кодон UAA, вакцина застосовує два кодони UGA, можливо просто для запасу.

Так само як рибосома потребує стартової позначки 5’, де ми знаходимо нетрансльовану ділянку «5 штрих», наприкінці ділянки з кодом протеїну ми знаходимо подібний конструкт, який називається нетрансльована ділянка «3 штрих» (НТД).

Про останню можна багато написати, але я лише процитую Вікіпедію: "нетрансльована діялнка 3 штрих грає критичну роль у експресії гену, впливаючи на локалізацію, стабільність, експорт та ефективність трансляції матричної РНК… попри те, що ми наразі знаємо про 3’ НТД, вони переважно залишаються загадкою".

Але що ми знаємо достеменно, так це те, що певні нетрансльовані ділянки «3 штрих» дуже успішно забезпечують експресію протеїну. Як повідомляє документ ВООЗ, 3’ НТД у вакцині BioNTech/Pfizer була отримана з «аміно-термінального підсилювача розподілу (AES) матричної РНК та мітохондріально закодованої рибосомної РНК 12S, і забезпечує стабільність РНК та високу загальну експресію протеїну». На що я можу сказати – гарна робота.

vaccine.jpg

І насамкінець – AAAAAAAAAAAAAAAAAAAAAA

Закінчення матричної РНК є поліаденилатним. Це хитромудра назва на позначення того, що вона завершується багатьма нуклеотидами AAAAAAAAAAAAAAAAAAA. Схоже, що навіть матричній РНК хочеться покричати у повній відповідності з емоціями від 2020 року.

Матричну РНК можна використати кілька разів, але щоразу вона буде втрачати кілька нуклеотидів А на своєму кінці. Щойно вони вичерпаються, матрична РНК перестане бути функціональною, і її забракують. У цьому сенсі хвіст із багатьох нуклеотидів А – це захист від деградації.

Були проведені дослідження, щоб встановити, яку оптимальну кількість А слід мати наприкінці вакцин із матричних РНК. Я читав у відкритих джерелах, що максимум = це 120 або десь так.

Вакцина BNT162b2 завершується так:

****** ****

UAGCAAAAAA AAAAAAAAAA AAAAAAAAAA AAAAGCAUAU GACUAAAAAA AAAAAAAAAA

AAAAAAAAAA AAAAAAAAAA AAAAAAAAAA AAAAAAAAAA AAAAAAAAAA AAAA

Це 30 нуклеотидів А, потім «нуклеотидний компонувальник» із 10 нуклеотидів (GCAUAUGACU), а за ним ще 70 нуклеотидів А.

Я підозрюю, що тут ми бачимо результат подальшої пропрієтарної оптимізації, спрямованої на ще більше покращення експресії протеїну.

Підсумки

Отже, ми знаємо точний склад матричної РНК-вакцини BNT162b2, і щодо більшості частин розуміємо, навіщо вони там є:

Оптимізація за кодонами додає багато нуклеотидів G та C у матричну РНК. Крім цього, використання нуклеотиду Ψ (1-метил-3’-псевдоуриділил) замість нуклеотиду U дає змогу оминати нашу імунну систему, тобто матрична РНК проіснує достатньо довго, щоб допомогти у тренуванні імунної системи.

Додаткові матеріали для читання/перегляду

У 2017 році я провів двогодинну презентацію на тему ДНК, яку можна подивитися тут. Як і стаття, вона орієнтована на комп’ютерників.

На додачу, я з 2001 року веду сторінку «ДНК для програмістів»

Ви можете також насолодитися цим вступним матеріалом про нашу дивовижну імунну систему.

І насамкінець – ось список моїх записів у блозі з матеріалами, пов’язаними із DNA, SARS-CoV-2 та COVID.

Звернення редакції:

Базу псевдосоціологів і прихованих піарників ми прискіпливо наповнювали і постійно оновлювали з 2015 року. Та з наступного року ця робота може бути заморожена. Причина проста і банальна: немає грошей. Звертаємося до Вас із проханням перерахувати кількасот гривень через Спільнокошт та закликати це зробити ваших друзів і знайомих.

ІТ ковід вакцина програмування технології біотехнології інший бік

Знак гривні
Знак гривні