Как стать автором
Обновить
63.47

Data Engineering *

Обсуждаем вопросы сбора и подготовки данных

Сначала показывать
Порог рейтинга
Карьерный код Data-инженера: ошибки и лайфхаки
Карьерный код Data-инженера: ошибки и лайфхаки

Всем привет!

Сегодня вечером приглашаем вас на вебинар с Николаем Марковым, Data Platform Lead в Altenar, и Екатериной Тхоржевской, карьерным консультантом в сфере IT.

Мы встретимся, чтобы обсудить:

→ Как искать работу дата-инженеру?
→ Как лучше показывать свой опыт и потенциал, чтобы получить оффер?
→ Hard и Soft скиллы — что действительно важно на собеседованиях?
→ И что делать, если вы практикующий специалист, но развития не хватает?

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

Одну карьерную консультацию от Екатерины мы разыграем среди участников.

🖍 23 сентября, 20:00 мск
🖍 Получить ссылку на трансляцию – в нашем боте.

P.S Запись будет.

Теги:
+3
Комментарии0

RU BIM Cluster 2024 | Битва за данные и применение LLM и ChatGPT в строительстве. Перевод с GER

Конференция BIM Cluster BW 2024. Штутгарт, 10.07.2024.

🎫 Автоматический перевод записи оригинальной презентации с немецкого языка: "BIM Culster BW 2024: Der Kampf um Daten in der Bauwirtschaft | Anwendung von LLM und ChatGPT im Bau" -   

 • BIM Culster BW 2024: Der Kampf um Dat...  

📖 Книга DataDrivenConstruction - Навигация в эпоху данных в строительной отрасли:
https://habr.com/ru/articles/801065/

В этой презентации мы рассмотрим историю и развитие BIM-технологий и, в частности, появление новых инструментов, которые вносят кардинальные изменения в то, как строительные и проектировочные компании работают с данными и процессами. Мы обсудим, почему использование открытых данных и SDK для обратного проектирования CAD-форматов (BIM) стало неотъемлемым трендом, что позволяет крупным строительным и инжиниринговым фирмам извлекать данные из проприетарных форматов САПР. Также мы обсудим интеграцию структурированных данных и инструментов с открытым кодом в бизнес-процессы и упрощение этих процессов за счет использования современных технологий LLM и ChatGPT.

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

Теги:
Всего голосов 1: ↑1 и ↓0+2
Комментарии0

Интересные кейсы использования Data Science

Data Science помогает многим компаниям принимать важные продуктовые решения на основе данных. Вот несколько крутых примеров, как разные бренды работают с Data Science:

  1. Сбербанк использует Data Science для анализа огромных объемов данных о клиентах.

    + Помогает предлагать более персонализированные продукты и услуги, а также эффективно бороться с мошенниками.

  2. Благодаря анализу данных, Яндекс.Такси может прогнозировать спрос на такси в разных районах города и даже в разное время суток.

    + Помогает оптимизировать распределение машин и сокращать время ожидания для пассажиров.

  3. Магнит — один из крупнейших ритейлеров в России — использует Data Science для управления запасами и прогнозирования спроса на товары.

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

Больше подобных кейсов мы подробно разобрали на подкасте One Two Prod с Олегом Рудаковым, Data Science Head of Analytics крупной FMCG-компании. Ну а еще спросили у Олега о разнице работы в агентстве и продукте, о трендах в аналитике, кому вообще нужен Data Science и где больше платят.

One Two Prod — это совместный подкаст AGIMA и ONY, где мы говорим о развитии диджитал-продуктов. Первый выпуск уже доступен на YouTube и Яндекс Музыке, а второй выйдет на следующей неделе — не пропустите. В нем мы обсудим стратегии и метрики продуктов вместе с Павлом Аксеновым, ex CPO «Самолет Плюс».

Теги:
Всего голосов 5: ↑5 и ↓0+7
Комментарии0

🤖 The future of CAD (BIM) data processing in Construction is already here!

Instead of working with complex closed or parametric data (the quality of which we have to check in special BIM tools), in the future we work with open structured data, which is an ideal source for RAG, LLM, ChatGPT. To work with LLM models and ChatGPT you need properly prepared data.

Dataframe data obtained from various CAD (BIM) formats is the ideal fuel for modern tools. Pandas is ideal for LLMs due to its robust data processing, efficient indexing, and flexible formatting. It cleans, tokenizes, and normalizes data, supports advanced data retrieval, and structures data in LLM-compatible formats.

Examples of requests for using structured CAD (BIM) data in ChatGPT:

🤖Group the data in Dataframe by "Type Name" while summarizing 
the "Volume" parameter - you can show the result in any kind of graphs and documents
🤖 “Check the values in the volume parameter for all items in "Category"
 - "OST_Walls" and output the list of IDs with null values” - native IDs 
can be displayed later in Revit
🤖 “Check if "Category" "OST_Doors" has parameters that are responsible
for width and length and output element types that do not have such parameters”

⚡️ Instead of using a whole zoo of BIM tools, we now validate and process data directly in ChatGPT.

After getting the results in ChatGPT, we copy the resulting Python code into Pipeline in any Python IDE

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

🏢 Serial Construction + 🤖 Robotisation + 🧊 Open Data + 🧊 Open Tools + 🤖 LLM + ⚡️ Pipelines is the inevitable future of the construction industry!

A multiple increase in work productivity in the construction industry will come through the automation of data processing, which will significantly impact the productivity of office processes and inevitably affect the efficiency of the construction site itself.

👨‍🏫 At this week's BIM Cluster BW Summit, it was possible to break through the wall of convoluted BIM ideology that CAD providers have been building for decades.

A mix of intricate stories, hard-to-access facts, insights, and figures on the equity of large companies — all this helped in a short time (30 minutes) to realize the necessity for change.

🌠 Whether specialists or entire concerns want it or not, but data in construction will be open, and tools for managing this data in construction will be open. The use of open data and open tools is the first key to accelerating decision-making, which today in some processes can take days and weeks! And, most likely, none of this will have anything to do with the topic of BIM.

🔗🚀 Structured data (RAG-ready) and the simplest models, starting from ChatGPT2, will allow, using simple logic and text sentences, to build automation in obtaining the necessary data. Learn more about using structured data and examples of prompts for ChatGPT:

https://datadrivenconstruction.io/index.php/chatgpt-and-llm/


Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Выкатываем лето на прод в Казани!

Наш летний ИТ-фестиваль «Сезон кода» проведем 13 июля. Будем делиться опытом, говорить про технологии, танцевать и уже по доброй традиции помогать «Семейному дому» в Казани.

Сезон кода: ИТ-фест в Казани
Сезон кода: ИТ-фест в Казани

Что по программе:

— доклады по Java, Scala, QA, Mobile и Data от инженеров Т-Банка, Сбера, VK и Магнит Маркет;
— квиз и кастомные настолки, чтобы поиграть в перерывах;
— спорт-, лаундж- и фотозоны, где можно размяться, отдохнуть и сделать пару снимков на память.

Стать участником ИТ-феста просто: нужно зарегистрироваться и внести пожертвование от 1000 ₽. Подробности на этой странице.

Лето, код, комьюнити 💛

#сезон_кода

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

In this insightful interview, Avetik Kagramanian talks to Artem Boyko, a data scientist in the construction industry. We explore the impact of open data and open tools on the construction industry.

03:25 - When we receive open data, we ourselves decide what tools to use this data in
04:08 - Converters' clients and popular data use cases in construction
05:41 - Data quality and verification process
06:27 - Usage formats and the collection of big data
07:03 - Who are the main competitors and the emergence of Pipelines in the construction industry
08:08 - Does working with data in construction differ from other industries?
10:27 - Explanation of the concept of using Pipelines in construction processes
12:01 - Creating an automatic Pipeline and using ChatGPT
13:52 - The future of data processes and analytics in construction
15:53 - Global trends in data management in the construction
17:42 - Democratization and data decentralization platforms
19:33 - How 30,000 subscribers on LinkedIn came to be
20:40 - Communicating with strategic directors of CAD vendors and gaining insights on the BOM-BIM story
21:37 - Appearance of the History of BIM map
23:39 - What were the main benefits of creating articles and writing the history of BIM
24:34 - Why not support buildingSMART
27:00 - Lobbyism in the creation of a world classifier

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Как ИИ-помощники захватывают мир.

Помните, как на прошедшем в мае Google I/O 2024 не было представлено ни одного нового устройства? Основной темой стал ИИ от Google – Gemini, мультимодальная LLM, эволюционировавшая из Bard.

И вот вышла новость: появление в сервисах от Google чат-бота на базе Gemini.

Российские сервисы не отстают от "корпорации добра".

У Яндекса подобный ассистент уже встроен в браузер и доступен всем желающим, зовется Нейро. Базируется на базе YaGPT2, который уже интегрирован в Алису, и скоро будет присутствовать во всех сервисах ИТ-гиганта.

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

Как все это повлияет на энтерпрайз-сегмент?

Cвязь вполне очевидная: популяризация носимых устройств и ассистентов в решении различных бытовых задач неминуемо создаст потребность в аналогичных сервисах и для решения рабочих вопросов.

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

Ряд таких решений завтрашнего дня доступны уже сегодня. Об одним из них, умном BI-ассистенте, поговорим 4 июля на вебинаре “Сокращаем путь от данных к бизнес-решениям до секунд”.

Зарегистрироваться можно тут.

Теги:
Всего голосов 6: ↑4 и ↓2+4
Комментарии0

Что изучить начинающему специалисту по Data Science? Собрали полезные ссылки для погружения.

База о профессии, чтобы присмотреться к ней

Изучение основ Python

Основы SQL

Библиотеки Python

Алгоритмы и структуры данных

Математика для анализа данных

Продуктовая аналитика

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Наш вебинар, посвященный взаимодействию между Spark и Greenplum, прошел уже 2 недели назад. Но его запись останется с вами навечно! По крайней мере, пока не отключат всё электричество на планете.

? Посмотреть запись можно по ссылке: https://youtu.be/zIYUKB5960w

Теги:
Всего голосов 2: ↑2 и ↓0+3
Комментарии0

Привет! Меня зовут Ильдар Ломов. Расскажу, чем занимаются ML-инженеры в Островке. Знаю об этом всё, я сам руководитель команды Data Science.

Сейчас портфель ML-проектов Островка —12 штук в нескольких направлениях: от продуктового ML (ранжирование, рекомендации), до больших языковых моделей

Состав команды стандартный: ML-инженер, бизнес-аналитик, проджект, продакт. Опционально тимлиды и разработчики.

Работа ML-инженера в Островке — посередине между стартапом с его моделью в jupyter-ноутбуке и корпорацией, где работа с сотнями моделей упорядочена, стандартизирована, вшита в интерфейсы. Можно поработать над серьезным проектом гибко с разнообразием инструментов.

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

Нужно уметь покрывать метриками, следить за проектом на проде, чтобы тот не потерял смысл из-за нестыковок в ТЗ. И работал так, как задумано

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

Работа оценивается с точки зрения влияния на бизнес, инженер видит, как проекты прямо и понятно воздействуют на бизнес-метрики. 

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

Теги:
Всего голосов 8: ↑4 и ↓4+4
Комментарии0

16 мая в 11:00 МСК приглашаем на вебинар «Spark-Greenplum Connector: философия взаимодействия».

На вебинаре мы разберем best practices по работе с распределенно-параллельными системами обмена данных. На примере нашей разработки Spark-Greenplum Connector расскажем, как создать собственное расширение для обмена данными между Apache Spark и внешними системами. И как правильно использовать специальный набор интерфейсов, которые коннектор должен реализовать для взаимодействия с ядром Spark.

??‍?Спикер вебинара:

Алексей Пономаревский, ведущий администратор баз данных в ITSumma

В программе:

? Что подтолкнуло нас к созданию своего собственного коннектора Spark к СУБД Greenplum.
? С какими вызовами мы столкнулись при написании коннектора и как их решили.
? Цифры и результаты: что у нас получилось в итоге.
? Дальнейшие планы и перспективы разработки.

Вебинар будет интересен администраторам баз данных, DataOps-инженерам и всем специалистам, работающим с построением ETL-процессов, хранением и обработкой больших объемов данных.

??Регистрация на вебинар доступна по ссылке зашитой в это предложение??

Теги:
Всего голосов 2: ↑2 и ↓0+3
Комментарии0

Дайджест материалов Магнус

Самой короткой рабочей неделе в году — самый короткий материал! Делимся подборкой статей за последние три месяца.

Что может быть важнее данных? То, как они хранятся, используются и воспроизводятся. Эти и другие возможности есть в инструменте ClearML: рассказываем о работе с ним.

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

Предсказывать цены могут не только крупные ритейлеры, но и розничные офлайн-магазины. Как? Рассказали здесь.

Как тимлиду ML-команды выстроить качественные продуктивные отношения с коллегами? Узнали у senior-разработчика, советы собрали тут.

Как учиться, чтобы время и усилия были слиты не зря? Подготовили 10 советов для тех, кто хочет получить от курсов всё.

Получили интересное мнение из первых рук: Роман Резников, senior-разработчик и DL-engineer, рассказал про промт-инжиниринг в работе и личной жизни.

Теги:
Всего голосов 2: ↑2 и ↓0+3
Комментарии0

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
10 – 11 октября
HR IT & Team Lead конференция «Битва за IT-таланты»
МоскваОнлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн

С чего начать управление метаданными в облаке?

Конвейеры данных — тренд, уже обросший подходами вроде Data Mesh или Data Streaming. Метаданные в них играют особую роль: повышают качество и доступность данных, например, при поиске. Но вне зависимости от подхода, в работе с метаданными важно учесть два запроса: прозрачность/демократизация данных и безопасность.

Для управления этим балансом в Yandex Cloud появился MetaData Hub — сервис для работы с метаданными. Он позволяет реализовать в облаке популярные сценарии:

  • Безопасное подключение к БД. Для защиты подключения важно позаботиться о хранении секретов и настройке прав доступа.

    С этим помогает Connection Manager: пользователи могут делиться подключением к СУБД по ссылке, без необходимости вручную указывать логины и пароли. Все секреты хранятся в секретнице Yandex Lockbox. А управление доступами реализовано на основе RBAC и обеспечивает гранулярность прав.

Сервис встраивается в систему управления на основе ролей на уровне облака
  • Гибридная инфраструктура. В сложных сценариях клиенты могут создавать подключения из облака к сторонней базе, например, on premise, — но в этом случае вопрос безопасности ложится на администратора базы. Облегчить настройку доступа к такой БД также можно через Connection Manager, создав on‑premise‑подключение.

В ближайшее время пользователям MetaData Hub будут доступны функции Schema Registry для упрощения структурирования и управления схемами данных, а также Data Catalog — для описания данных и зависимостей между ними. Сервис бесплатен и находится в стадии Preview.

Теги:
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Когда строишь потоки обработки в Apache Nifi в основном требуется результат записать в базу данных. Бывают случаи, когда запись в целевую таблицу не проходит по причине несоответствия данных в записи и полей в таблице. Это возникает в случае, если на источнике размер поля увеличился, либо изменился порядок знаков после занятой, либо вы ожидаете "uniqueidentifier" а приходит пустая строка.

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

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

results = []

fields = record.getRawFieldNames()
schema = record.getSchema()
fields.each{key -> {
    log.debug("Got key: ${key}")
    nMap = new java.util.HashMap<String, Object>()
    log.debug("create map")
    nMap.put(key,record.getValue(key))
    log.debug("Put to map value")
    newrecord = new org.apache.nifi.serialization.record.MapRecord(schema, nMap)
    log.debug("Сreate new record with field ${key}")
    results.add(newrecord)
}}

results

Полезные ссылки:

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Хабр, привет!

Хотим напомнить, что сегодня в 11:00 МСК у нас пройдет вебинар «Управление базами данных в Greenplum: мониторинг и удаление мусора». Расскажем, как правильно собирать и удалять мусор в реляционных СУБД вообще и в Greenplum в частности.

?‍? Спикеры:

Алексей Пономаревский, ведущий администратор БД ITSumma
Иван Хозяинов, руководитель направления больших данных ITSumma

? О чём:

Вакуумирование данных и для чего оно нужно
Инструменты и специфика вакуумирования в Greenplum
Мониторинг раздутых таблиц и стратегии вакуумирования
Решения и практики, которые минимизируют возможные проблемы

Регистрация: https://clck.ru/38NWH7

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Переварил и делюсь ключевыми идеями Tristan Handy (CEO dbtLabs) о новом опыте работы с dbt

(выпуск My first week with the new dbt, рассылка Analytics Engineering Roundup)

Старт разработки без головной боли

Это замечательно и то, что нужно. Фокус аналитика - на создании аналитических приложений, а не на борьбу с зависимостями, version upgrades и поиск error codes на stackoverflow. Чем больше чистого времени у аналитика, тем больше результатов можно получить.

Я уже давно использую devcontainers и даже писал об этом для тех же целей - это бесплатно и не требует иметь лицензию dbtCloud.

Auto-deferral

Я давно использую defer в рамках CI tests (= прогон и тесты только изменяемых graph nodes). Теперь, в рамках dev это ускоряет процессы разрабтки на порядок.

Жаль, что удобно использовать это можно пока только в dbtCloud.

Из связанного, на ум сразу приходит фича Snowflake zero-copy clone.

Data Mesh

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

Называйте это Microservices в Data.

Задействованы и технические аспекты (как это реализовать) и организационные (кто владеет ownership).

Это скорее релевантно крупным компаниям, в которых как минимум несколько отделов-ветвей заинтересованы в data services, у них есть свои ресурсы на разработку и устоявшиеся правила. По моим оценкам, доля таких компаний среди пользователей dbt пока не очень велика. Но это тренд!

Теги:
Рейтинг0
Комментарии0

❓100 Вопросов по Машинному обучению (Machine Learning) - Вопрос_10

?Вопрос_10: Что такок Tarantool и как он устроен ? (Часть_2)

  1. Replication: Tarantool предлагает механизм репликации, который позволяет создавать реплики базы данных для обеспечения отказоустойчивости и масштабируемости. Репликация Tarantool основана на механизме репликации мастер-слейв (master-slave) и поддерживает асинхронное и синхронное реплицирование.

  2. Sharding: Tarantool поддерживает горизонтальное масштабирование с помощью шардинга данных. Шардинг позволяет распределить данные по нескольким узлам-серверам, что позволяет обрабатывать большие объемы данных и повышает производительность.

  3. Индексы: Tarantool предоставляет различные типы индексов для оптимизации запросов и обеспечения быстрого доступа к данным. Включая хеш-индексы, деревья и индексы, основанные на отсортированных списках.

    t.me/DenoiseLAB (Еесли вы хотите быть в курсе всех последних новостей и знаний в области анализа данных);

Теги:
Рейтинг0
Комментарии0

❓100 Вопросов по Машинному обучению (Machine Learning) - Вопрос_3

?Вопрос_3: Что такое преобразование Бокса-Кокса?

Преобразование Бокса-Кокса (Box-Cox transformation) - это преобразование, которое преобразует "ненормальные" зависимые переменные в нормальные переменные, так как нормальность является наиболее распространенным предположением при использовании многих статистических методов. Оно было предложено Георгом Боксом и Дэвидом Коксом в 1964 году.

Преображование Бокса-Кокса (Общий вид)
Преображование Бокса-Кокса (Общий вид)

Оно имеет параметр лямбда, который при значении "0" означает, что это преобразование эквивалентно лог-трансформации. Оно используется для стабилизации дисперсии, а также для нормализации распределения. Выбор оптимального значения параметра (лямбда) при использовании преобразования Бокса-Кокса может быть выполнен с использованием различных методов:

  1. Метод максимального правдоподобия: В этом подходе подбирается значение (лямбда), которое максимизирует правдоподобие модели. Это можно сделать с помощью численных методов оптимизации, таких как метод Ньютона-Рафсона или метод Брента;

  2. Критерии информационного критерия: можно использовать информационные критерии, такие как критерий Акаике (AIC) или критерий Шварца (BIC);

  3. Кросс-валидация: При этом данные разбиваются на обучающую и проверочную выборки, и производится оценка преобразования Бокса-Кокса для различных значений (лямбда) на обучающей выборке. Затем оцениваются результаты на проверочной выборке и выбирается лучшее значение.

    https://t.me/DenoiseLAB

Теги:
Рейтинг0
Комментарии0

❓100 Вопросов по Машинному обучению (Machine Learning) - Вопрос_2

?Вопрос_2: Объясните, что такое One-hot encoding и Label Encoding. Как они влияют на размерность заданного набора данных ?

✔️Ответ:

One-hot encoding - это представление категориальных переменных в виде двоичных векторов, при котором каждая уникальная категория переменной преобразуется в новый бинарный столбец, называемый "фиктивной переменной". В этом новом столбце значение 1 указывает на принадлежность к соответствующей категории, а значение 0 - на принадлежность к другим категориям. Таким образом, каждая уникальная категория представлена отдельным столбцом. Это позволяет алгоритмам машинного обучения интерпретировать категориальные значения и использовать их в расчетах. Не создает ложного упорядочения или отношения между значениями категориальных переменных и помогает избежать проблемы ложной корреляции между категориями переменных. Однако, использование one-hot encoding увеличивает размерность набора данных ("проклятие размерности").

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

#work #coding #testing #optimization #ml #learning

Телеграмм: https://t.me/DenoiseLAB

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0
1