// clang-format off
/**
 * @mainpage NanitLib
 * 
 * 
 * @if English
 * ## Appointment
 *
 * The purpose of the library is to facilitate the study of the basics of 
 * `C/C++` programming for microcontrollers on `Nanit` boards.
 * @else
 * ## Призначення
 * 
 * Призначення бібліотеки полегшити вивчення основ програмування на мові  
 * `C/C++` для мікроконтролерів на платах `Nanit`.
 * @endif
 * 
 * @if English
 *
 * ## How to install
 * 
 * You can install ```NanitLib``` in several ways:
 *
 * 1. Installing the library with a zip archive.
 * 2. Installing the library using the library manager.
 * 3. Installing the library using the board manager.
 *
 * @else 
 * ## Як встановити
 * 
 * Встановити `NanitLib` можна кількома способами:
 * 
 *  1. Встановлення бібліотеки ZIP-архівом.
 *  2. Встановлення бібліотеки за допомогою менеджера бібліотек.
 *  3. Встановлення бібліотеки за допомогою менеджера плат.
 * @endif
 * 
 * @if English
 * 
 * ### ZIP archive
 *
 * We recommend using this method only if your PC has no internet connection and you have no 
 * other way to install the library. Be prepared to download the libraries, that `NanitLib`
 * depends on, in the same way, if they are not already installed on your system. This 
 * method is not capable of downloading third-party libraries independently.
 *
 * To download the `ZIP` of the library, you need to find it on the `GitHub` website
 *
 * ![GitHub](https://nanitrobot.github.io/static/pic/generic/GitHub.png)
 * GitHub.png)
 *
 * Or follow one of the links:
 * - [NanitRobot](https://github.com/NanitRobot/) -- link to GitHub profile.
 * - [NanitLib](https://github.com/NanitRobot/NanitLib) -- direct link to the repository with the library.
 *
 * ![Profile](https://nanitrobot.github.io/static/pic/generic/NanitRobot.png)
 *
 * On the repository page, press the `CODE` button and select `Download ZIP`.
 *
 * The file-saving window will open. Save the file in a place convenient for you. It doesn't have to be in the library files folder.
 * 
 * You can also download the file at [this link](https://github.com/NanitRobot/NanitLib/archive/refs/heads/main.zip)
 *
 * ![zip](https://nanitrobot.github.io/static/pic/generic/zip_file.png)
 *
 * After downloading and saving the file, you can close your Internet browser.
 *
 * If you have access to the Internet, we recommend using the methods described below.
 *
 * Open the Arduino IDE. Select the IDE version that you are using.
 * 
 * @else 
 * 
 * ### ZIP-архів
 * 
 * Ми рекомендуємо використовувати цей спосіб лище за умови повної відсутнотності інтернетз'єднання 
 * у вашого ПК, або якщо іншого способу встановити бібліотеку у вас немає. Будьте готові самостійно з
 * авантажувати бібліотеки, від яких залежить `NanitLib`, якщо вони ще не встановлені у вашій 
 * системі, оскільки цей спосіб не вміє самостійно завантажувати бібліотеки третіх сторін.
 *
 * Для завантаження `ZIP` бібліотеки потрібно її знайти на сайті `GitHub`
 * 
 * ![GitHub](https://nanitrobot.github.io/static/pic/generic/GitHub.png)
 * 
 * або перейти за одним з посилань
 *  - [NanitRobot](https://github.com/NanitRobot/) -- посилання на ГітХаб профіль.
 *  - [NanitLib](https://github.com/NanitRobot/NanitLib) -- пряме посилання на репозиторій з бібліотекою.
 * 
 * ![Profile](https://nanitrobot.github.io/static/pic/generic/NanitRobot.png)
 * 
 * На сторінці репозиторію натиснути кнопку ```CODE``` та обрати ```Download ZIP```.
 * 
 * Перед вами відкриється вікно збереження файлу. Файл потрібно зберегти у зручному для вас місці. 
 * Не обов'язково це має бути тека з бібліотечними файлами.
 * 
 * Завантажити файл можна також [за посиланням](https://github.com/NanitRobot/NanitLib/archive/refs/heads/main.zip)
 * 
 * ![zip](https://nanitrobot.github.io/static/pic/generic/zip_file.png)
 * 
 * Після завантаження та збереження файлу інтернет браузер можна закрити.
 * 
 * Якщо ви ж маєте доступ до інтернет рекомендуємо скористатись способами  які описані нижче.
 * 
 * Потрібно відкрити Arduino IDE. Оберіть версію IDE, якою ви користуєтесь.
 * 
 * Обіріть версію IDE якою ви користуєтесь.
 * @endif
 * 
 * <div class="tabbed">
 * <ul>
 *  <li> <b class="tab-title">IDE 2.x</b>
 *  @if English
 *  First you need to start the development environment.
 *  @else
 *  Для початку вам потрібно запустити середовище розробки.
 *  @endif
 * 
 *  ![IDE 2.x](https://nanitrobot.github.io/static/pic/Arduino_2.x/IDE2.png)
 * 
 *  @if English
 *  In the open environment window, select `Sketch` &rarr; `Add Library` &rarr; `Add ZIP library`.
 *  @else
 *  У відкритому вікні середовища обираємо пункт `Скетч` &rarr; `Додати бібілотеку` &rarr; `Додати ZIP-бібліотеку`.
 *  @endif
 * 
 *  ![IDE 2.x](https://nanitrobot.github.io/static/pic/Arduino_2.x/IDE2_menu.png)
 * 
 *  @if English
 *  A file selection window will appear. Select the file you downloaded from the Internet.
 *  @else
 *  Перед вами вікриється вікно вибору файлу. Потрібно обрати файл, який ви
 *  завантажили з мережі інтернет
 *  @endif
 * 
 *  ![IDE 2.x](https://nanitrobot.github.io/static/pic/Arduino_2.x/IDE2_fileSelection.png)
 * 
 *  @if English
 *  After you click the confirmation button, the contents of the archive will be automatically 
 *  extracted to the necessary directories. And you can start using the installed library.
 *  @else
 *  Після натиснення кнопки підтвердження вміст архіву буде автоматично
 *  розпаковано у необхідні каталоги. І ви вже можете почати користуватися
 *  встановленою бібліотекою.
 *  @endif
 *  </li>
 * </ul>

 * </div>
 * 
 * @if English
 * 
 * #### Known issues
 *
 * This installation method does not resolve library dependencies. During the compilation of 
 * the project, the development environment will display errors about the absence of certain 
 * libraries that ```NanitLib``` depends on. You will have to resolve these dependencies yourself 
 * when compiling the project.
 *
 * You can avoid this in advance by downloading these libraries separately. The list of 
 * third-party libraries may change, so they are listed in a 
 * [separate special file](https://raw.githubusercontent.com/NanitRobot/NanitLib/main/src/DependsLib.h).
 *
 * @else
 * 
 * #### Відомі проблеми
 *
 * Цей спосіб встановлення не розв'язує залежностей бібліотеки. Під час
 * компіляції проекту вам середовище розробки буде виводити помилки про
 * відстуність певних бібліотек від яких залежить `NanitLib`. Вам доведеться
 * самостійно розв'язувати ці залежності у процесі компіляції проекту.
 *
 * Ви можете зазделегіть цього уникнути завантаживши ці бібліотеки окремо.
 * Список сторонніх бібліотек може змінюватись тому їх прописано в Цей спосіб 
 * встановлення не розв'язує залежностей бібліотеки. Під час компіляції проекту 
 * середовище розробки буде виводити помилки про відсутність певних бібліотек, 
 * від яких залежить `NanitLib`. Вам доведеться самостійно розв'язувати ці залежності 
 * у процесі компіляції проекту.
 * 
 * Ви можете заздалегідь цього уникнути, завантаживши ці бібліотеки окремо. Список 
 * сторонніх бібліотек може змінюватись, тому їх прописано в окремому 
 * [окремому спеціальному файлі](https://raw.githubusercontent.com/NanitRobot/NanitLib/main/src/DependsLib.h).
 * 
 * @endif
 * 
 * @if English
 * 
 * ### Library manager
 *
 * Downloading through the library manager allows you to automatically download third-party 
 * libraries that NanitLib depends on, and get the latest versions of all the necessary files.
 *
 * During the library installation process, the library manager will analyze the library 
 * property file and offer to install the necessary third-party libraries. You only have to 
 * agree to install the additional files.
 *
 * The advantage of this method is that when you start the development environment (if you 
 * have an Internet connection) checks for updates to installed libraries and offers to update 
 * them.
 *
 * We recommend agreeing to the update, as you will always have the latest version of 
 * `NanitLib` with new functionality.
 *
 * @else
 * 
 * ### Менеджер бібліотек
 * 
 * Завантаження через менеджер бібліотек дозволяє автоматично завантажити бібліотеки 
 * третіх сторін, від яких залежить `NanitLib`, і отримати найновіші версії всіх необхідних файлів.
 * 
 * В процесі встановлення бібліотеки менеджер бібліотек проаналізує файл властивостей бібліотеки 
 * та запропонує встановити необхідні сторонні бібліотеки. Вам потрібно лише погодитись на 
 * встановлення додаткових файлів.
 * 
 * Перевага цього способу в тому, що при запуску середовище розробки (при наявності інтернет 
 * зв'язку) перевіряє наявність оновлень для встановлених бібліотек і пропонує їх оновити.
 * 
 * Ми рекомендуємо погоджуватись на оновлення, так як ви завжди матимете найновішу версію `NanitLib` 
 * з новим функціоналом.
 * 
 * @endif 
 *
 * @if English
 * 
 * You can install the NanitLib library in any way (download
 * archive, clone the repository or install through the library manager).
 * 
 * @else
 * 
 * Ви можете встановити бібліотеку NanitLib будь-яким способом (завантажити
 * архівом, клонувати репозиторій або встановити через менеджер бібліотек).
 * 
 * @endif
 */
