<commit_before>TRIKStudio 3.1.0:
- Продукт теперь распространяется по лицензии Apache License 2.0 вместо GNU General Public License 3.0.
- Упрощен интерфейс. Теперь вместо нескольких групп кнопок запуска и остановки исполнения в режиме генерации или 2D-моделирования доступно явное переключение между режимами, кнопки запуска и остановки, соответственно, выполняют различные действия для различных режимов. Также с панели инструментов убраны некоторые нерелевантыные пункты (создание новой диаграммы, печать), теперь они доступны только из меню.
- Добавлены блоки продвинутой работы с потоками -- теперь возможен обмен сообщениями и слияние потоков.
- Добавлена эмуляция видеокамеры в режиме сенсора линии в 2D модели.
- Реализован механизм проверки ограничений на 2D модели. Теперь можно накладывать различные требования на поведение робота (пока что в текстовом виде на специальном языке).
- Добавлена поддержка регионов в 2D модели. Регионы могут использоваться как для декорирования модели мира (например, для задания зон старта/финиша), так и для задания ограничений на расположение робота (например, что робот не имеет права выезжать из заданной зоны).
- Добавлено сохрание проекта в виде упражнения. Это позволяет отключать редактируемость тех или иных частей 2D модели для честного прохождения того или иного задания. 
- Добавлены примеры выхода из лабиринта (в папке examples/trik/stepic).
- Добавлена возможность явного задания стартовой позиции робота. Она отображается в виде красного крестика, который можно перемещать и задавать его направление.
- 2D модель теперь общая для всех вкладок: теперь элементы 2D модели не пропадают при переключении на подпрограмму.
- Множество мелких исправлений и улучшений. 


TRIKStudio 3.0.2:
- Исправлено неверное сообщение о несовместимости версии ПО ТРИК.<commit_msg>Changelog for 3.1.0 appended with new features<commit_after>TRIKStudio 3.1.0:
- Продукт теперь распространяется по лицензии Apache License 2.0 вместо GNU General Public License 3.0.
- Значительно переработан интерфейс:
	- Введено два режима работы: режим разработки и режим отладки. В каждом из режимов ненужные панели автоматически скрываются. Например, палитра блоков не нужна при отладке программы на 2D модели и в режиме написания кода. Переключение между режимами происходит по нажатию Ctrl+1 - Ctrl+2 или по клику на панель внизу окна.
	- Существенно улучшен интерфейс 2D модели: теперь он более минималистичен и интуитивен, 2D модель по умолчанию "встроена" в окно среды. Её можно по-прежнему "вытянуть" в оконный режим.
	- Теперь вместо нескольких групп кнопок запуска и остановки исполнения в режиме генерации или 2D-моделирования доступно явное переключение между режимами, кнопки запуска и остановки, соответственно, выполняют различные действия для различных режимов.
	- С панели инструментов убраны некоторые нерелевантыные пункты (создание новой диаграммы, печать), теперь они доступны только из меню.
	- Большие кнопки управления палитрой убраны (ввиду их нерелевантности), вместо них добавлен поиск по палитре.
- Добавлено множество новых блоков:
	- Блоки продвинутой работы с потоками -- теперь возможен обмен сообщениями, слияние потоков и прекращение работы потоков.
	- Блок "Конец условия"
	- Блоки работы с файлами
	- Блок "Положить код кнопки в переменную"
	- Блок "Случайное число" - раньше такая функция была доступна только в текстовой форме (функция random).
- Добавлена эмуляция видеокамеры в режиме сенсора линии в 2D модели.
- Реализован механизм проверки ограничений на 2D модели. Теперь можно накладывать различные требования на поведение робота (пока что в текстовом виде на специальном языке).
- Добавлена поддержка регионов в 2D модели. Регионы могут использоваться как для декорирования модели мира (например, для задания зон старта/финиша), так и для задания ограничений на расположение робота (например, что робот не имеет права выезжать из заданной зоны).
- Добавлено сохрание проекта в виде упражнения. Это позволяет отключать редактируемость тех или иных частей 2D модели для честного прохождения того или иного задания. 
- Добавлены примеры выхода из лабиринта (в папке examples/trik/stepic).
- Добавлена возможность явного задания стартовой позиции робота. Она отображается в виде красного крестика, который можно перемещать и задавать его направление.
- 2D модель теперь общая для всех вкладок: теперь элементы 2D модели не пропадают при переключении на подпрограмму.
- Добавлен генератор в F# для ТРИК.
- Расширен текстовый язык TRIK Studio:
	- Добавлена поддержка двумерных массивов в интерпретаторе.
	- Добавлена функция sensor(), позволяющая получить значение сенсора на указанном порту. В отличие от сенсорных переменных, эта функция позволяет писать более гибкий код.
	- Добавлена поддержка функций min и max
	- Добавлена функция print, позволяющая напечатать строку, число или массив в консоль робота. Вывод отображается на панели в нижней части окна. Данные с консоли ТРИК теперь перенаправляются в среду в режиме интерпретации.
- Добавлена возможность отключать жесты мышью в настройках.
- Множество мелких исправлений, самые значимые:
	- Исправлена работа авто-обновлений.
	- Исправлено случайное перецепление некоторых стрелочек к портам, к которым они не были прицеплены в последний раз.
	- Исправлено "наезжание" текста под пиктограммой при увеличении шрифта (в рамках одного блока).
	- Маркер "итерация" переименован в "тело цикла".


TRIKStudio 3.0.2:
- Исправлено неверное сообщение о несовместимости версии ПО ТРИК.
{'fraction_non_alphanumeric': 0.040415073730202075, 'fraction_numerical': 0.007646095030038231, 'mean_word_length': 5.017524644030668, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4027923', 'n_tokens_mistral': 2233, 'n_tokens_neox': 2740, 'n_words': 710}