vault backup: 2026-05-29 07:44:14
This commit is contained in:
Vendored
+31
-14
File diff suppressed because one or more lines are too long
@@ -0,0 +1,82 @@
|
|||||||
|
---
|
||||||
|
status: seed
|
||||||
|
type: concept
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- mephi
|
||||||
|
- decision-making
|
||||||
|
created: 2026-05-29
|
||||||
|
updated: 2026-05-29
|
||||||
|
title: Метод анализа иерархий
|
||||||
|
source: "[[МИАД_Л4_иерархии.pdf]]"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Метод анализа иерархий
|
||||||
|
|
||||||
|
Метод анализа иерархий (МАИ) используется для выбора лучшей альтернативы при нескольких критериях, в том числе разнородных и качественных.
|
||||||
|
|
||||||
|
## Идея
|
||||||
|
|
||||||
|
Задача выбора раскладывается на иерархию:
|
||||||
|
- цель;
|
||||||
|
- критерии и подцели;
|
||||||
|
- альтернативы.
|
||||||
|
|
||||||
|
Затем элементы каждого уровня попарно сравниваются по влиянию на элемент верхнего уровня.
|
||||||
|
|
||||||
|
## Шкала Саати
|
||||||
|
|
||||||
|
Попарные сравнения обычно задаются 9-балльной шкалой:
|
||||||
|
- `1` — нет преимущества;
|
||||||
|
- `3` — слабое преимущество;
|
||||||
|
- `5` — существенное преимущество;
|
||||||
|
- `7` — явное преимущество;
|
||||||
|
- `9` — абсолютное преимущество;
|
||||||
|
- `2`, `4`, `6`, `8` — промежуточные оценки;
|
||||||
|
- обратные значения — преимущество в обратную сторону.
|
||||||
|
|
||||||
|
Матрица сравнений обратно-симметрична:
|
||||||
|
|
||||||
|
$$a_{ij} = \frac{1}{a_{ji}}$$
|
||||||
|
|
||||||
|
## Этапы
|
||||||
|
|
||||||
|
1. Описать проблему и цель.
|
||||||
|
2. Построить иерархию критериев и альтернатив.
|
||||||
|
3. Построить матрицы попарных сравнений.
|
||||||
|
4. Вычислить локальные приоритеты.
|
||||||
|
5. Проверить согласованность матриц.
|
||||||
|
6. Повторить сравнения для всех уровней.
|
||||||
|
7. Синтезировать глобальные приоритеты альтернатив.
|
||||||
|
8. Оценить согласованность всей иерархии.
|
||||||
|
|
||||||
|
## Локальные приоритеты
|
||||||
|
|
||||||
|
Для матрицы попарных сравнений веса можно приближённо вычислить как среднее геометрическое строк:
|
||||||
|
|
||||||
|
$$w_j = \sqrt[n]{\prod_{l=1}^{n} a_{jl}}$$
|
||||||
|
|
||||||
|
После этого веса нормируются, чтобы получить вектор приоритетов.
|
||||||
|
|
||||||
|
## Согласованность
|
||||||
|
|
||||||
|
Полностью согласованная матрица обладает транзитивностью:
|
||||||
|
|
||||||
|
$$a_{ij} = a_{ik}a_{kj}$$
|
||||||
|
|
||||||
|
На практике экспертные суждения обычно не полностью согласованы, поэтому считают индекс согласованности:
|
||||||
|
|
||||||
|
$$CI = \frac{\lambda_{max} - n}{n - 1}$$
|
||||||
|
|
||||||
|
И отношение согласованности:
|
||||||
|
|
||||||
|
$$CR = \frac{CI}{RI}$$
|
||||||
|
|
||||||
|
Обычно приемлемым считают $CR \le 10\%$.
|
||||||
|
|
||||||
|
## Результат
|
||||||
|
|
||||||
|
Итог МАИ — глобальные приоритеты альтернатив. Чем выше приоритет, тем предпочтительнее альтернатива в рамках построенной иерархической модели.
|
||||||
|
|
||||||
|
## Связанные заметки
|
||||||
|
- [[Функция принадлежности]]
|
||||||
+58
-3
@@ -1,12 +1,14 @@
|
|||||||
---
|
---
|
||||||
status: seed
|
status: processing
|
||||||
type: concept
|
type: concept
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
|
- mephi
|
||||||
- fuzzy-sets
|
- fuzzy-sets
|
||||||
created: 2025-12-17
|
created: 2025-12-17
|
||||||
updated: 2026-05-07
|
updated: 2026-05-29
|
||||||
title: Логические операции над нечеткими множествами
|
title: Логические операции над нечеткими множествами
|
||||||
|
source: "[[МИАД_Л1.pdf]]"
|
||||||
---
|
---
|
||||||
|
|
||||||
# Логические операции над нечеткими множествами
|
# Логические операции над нечеткими множествами
|
||||||
@@ -37,7 +39,60 @@ title: Логические операции над нечеткими множ
|
|||||||
## Разность
|
## Разность
|
||||||
Разностью двух множеств называется множество $A - B = A \cap \overline{B}$ с функцией принадлежности: $$\mu_{A-B}(u)=\mu_{A \cap \overline{B}}(u) = \min(\mu_{A}(u),\mu_{\overline{B}}(u)) = \min(\mu_{A}(u), 1-\mu_{B}(u))$$
|
Разностью двух множеств называется множество $A - B = A \cap \overline{B}$ с функцией принадлежности: $$\mu_{A-B}(u)=\mu_{A \cap \overline{B}}(u) = \min(\mu_{A}(u),\mu_{\overline{B}}(u)) = \min(\mu_{A}(u), 1-\mu_{B}(u))$$
|
||||||
|
|
||||||
|
## Дизъюнктивная сумма
|
||||||
|
|
||||||
|
Дизъюнктивная сумма:
|
||||||
|
|
||||||
|
$$A \oplus B = (A \cap \overline{B}) \cup (\overline{A} \cap B)$$
|
||||||
|
|
||||||
|
$$\mu_{A \oplus B}(u) = \max(\min(\mu_A(u), 1 - \mu_B(u)), \min(1 - \mu_A(u), \mu_B(u)))$$
|
||||||
|
|
||||||
|
## Свойства
|
||||||
|
|
||||||
|
Для конъюнкции и дизъюнкции выполняются:
|
||||||
|
- коммутативность;
|
||||||
|
- ассоциативность;
|
||||||
|
- идемпотентность;
|
||||||
|
- дистрибутивность;
|
||||||
|
- инволюция;
|
||||||
|
- законы де Моргана.
|
||||||
|
|
||||||
|
Не выполняются классические свойства дополнения:
|
||||||
|
|
||||||
|
$$A \cup \overline{A} \ne U$$
|
||||||
|
|
||||||
|
$$A \cap \overline{A} \ne \varnothing$$
|
||||||
|
|
||||||
|
## Алгебраические операции
|
||||||
|
|
||||||
|
Алгебраическое произведение:
|
||||||
|
|
||||||
|
$$\mu_{A \cdot B}(u) = \mu_A(u)\mu_B(u)$$
|
||||||
|
|
||||||
|
Алгебраическая сумма:
|
||||||
|
|
||||||
|
$$\mu_{A + B}(u) = \mu_A(u) + \mu_B(u) - \mu_A(u)\mu_B(u)$$
|
||||||
|
|
||||||
|
Степень нечеткого множества:
|
||||||
|
|
||||||
|
$$\mu_{A^\alpha}(u) = \mu_A^\alpha(u)$$
|
||||||
|
|
||||||
|
При $\alpha = 2$ получается концентрирование, при $\alpha = 0.5$ — растяжение.
|
||||||
|
|
||||||
|
## Нечеткие операторы
|
||||||
|
|
||||||
|
Операции объединения, пересечения и отрицания можно обобщать разными способами.
|
||||||
|
|
||||||
|
Треугольная норма — обобщение конъюнкции. Примеры: минимум, алгебраическое произведение, t-норма Лукасевича.
|
||||||
|
|
||||||
|
Треугольная конорма — обобщение дизъюнкции. Примеры: максимум, алгебраическая сумма, t-конорма Лукасевича.
|
||||||
|
|
||||||
|
Основные пары операций:
|
||||||
|
- логика Заде — `min` и `max`;
|
||||||
|
- вероятностная логика — алгебраическое произведение и алгебраическая сумма;
|
||||||
|
- логика Лукасевича — t-норма и t-конорма Лукасевича.
|
||||||
|
|
||||||
## Связанные заметки
|
## Связанные заметки
|
||||||
- [[Линейные модели]] — линейная разделимость в ML (жёсткая граница) vs нечёткие операции (мягкая граница); оба решают задачу разделения классов
|
- [[Линейные модели]] — линейная разделимость в ML (жёсткая граница) vs нечёткие операции (мягкая граница); оба решают задачу разделения классов
|
||||||
- [[Функция принадлежности]] — операции определены через μ
|
- [[Функция принадлежности]] — операции определены через μ
|
||||||
|
- [[Нечеткий вывод]] — разные импликации используют разные операции над функциями принадлежности
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
---
|
||||||
|
status: seed
|
||||||
|
type: concept
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- mephi
|
||||||
|
- fuzzy-sets
|
||||||
|
created: 2026-05-29
|
||||||
|
updated: 2026-05-29
|
||||||
|
title: Нечеткие отношения
|
||||||
|
source: "[[МИАД_Л2.pdf]]"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Нечеткие отношения
|
||||||
|
|
||||||
|
Нечеткое отношение $R$ на универсальном множестве $U = U_1 \times U_2$ — это нечеткое подмножество декартова произведения с функцией принадлежности:
|
||||||
|
|
||||||
|
$$\mu_R(x, y): U_1 \times U_2 \to [0, 1]$$
|
||||||
|
|
||||||
|
Значение $\mu_R(x, y)$ трактуется как субъективная мера выполнения отношения $xRy$.
|
||||||
|
|
||||||
|
## Отличие от четкого отношения
|
||||||
|
|
||||||
|
Четкое бинарное отношение отвечает на вопрос «связаны элементы или нет». Нечеткое отношение показывает силу связи: например, вес дуги во взвешенном графе.
|
||||||
|
|
||||||
|
Примеры:
|
||||||
|
- «$x$ и $y$ близкие числа»;
|
||||||
|
- «$x$ намного больше $y$»;
|
||||||
|
- качественные связи между объектами системы, где простое да/нет теряет информацию.
|
||||||
|
|
||||||
|
## Способы задания
|
||||||
|
|
||||||
|
Для конечных универсумов отношение удобно задавать матрицей: строки соответствуют элементам $U_1$, столбцы — элементам $U_2$, значения ячеек — степеням принадлежности.
|
||||||
|
|
||||||
|
Для счетных или конечных множеств отношение также можно интерпретировать как взвешенный граф.
|
||||||
|
|
||||||
|
## Операции
|
||||||
|
|
||||||
|
На нечеткие отношения переносятся операции для [[Логические операции над нечеткими множествами|нечетких множеств]]:
|
||||||
|
- носитель: пары, для которых $\mu_R(x, y) > 0$;
|
||||||
|
- объединение;
|
||||||
|
- пересечение;
|
||||||
|
- отрицание;
|
||||||
|
- отношение уровня $\alpha$: пары, для которых $\mu_R(x, y) \ge \alpha$.
|
||||||
|
|
||||||
|
## Композиции отношений
|
||||||
|
|
||||||
|
Основные композиции:
|
||||||
|
|
||||||
|
$$\mu_{AB}(x, z) = \max_y \min(\mu_A(x, y), \mu_B(y, z))$$
|
||||||
|
|
||||||
|
$$\mu_{A \circ B}(x, z) = \min_y \max(\mu_A(x, y), \mu_B(y, z))$$
|
||||||
|
|
||||||
|
$$\mu_{A * B}(x, z) = \sup_y \mu_A(x, y)\mu_B(y, z)$$
|
||||||
|
|
||||||
|
Максиминная композиция особенно важна для [[Нечеткий вывод|нечеткого вывода]].
|
||||||
|
|
||||||
|
## Связанные заметки
|
||||||
|
- [[Теория нечетких множеств]]
|
||||||
|
- [[Функция принадлежности]]
|
||||||
|
- [[Нечеткий вывод]]
|
||||||
@@ -0,0 +1,69 @@
|
|||||||
|
---
|
||||||
|
status: seed
|
||||||
|
type: concept
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- mephi
|
||||||
|
- fuzzy-sets
|
||||||
|
created: 2026-05-29
|
||||||
|
updated: 2026-05-29
|
||||||
|
title: Нечеткий вывод
|
||||||
|
source: "[[МИАД_Л3_нечеткий_вывод.pdf]]"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Нечеткий вывод
|
||||||
|
|
||||||
|
Нечеткий логический вывод — это аппроксимация зависимости выходной лингвистической переменной от входных переменных через базу знаний и операции над нечеткими множествами.
|
||||||
|
|
||||||
|
## Нечеткая и лингвистическая переменная
|
||||||
|
|
||||||
|
Нечеткая переменная задаётся кортежем $\langle X, U, \tilde{X} \rangle$, где:
|
||||||
|
- $X$ — имя переменной;
|
||||||
|
- $U$ — универсум;
|
||||||
|
- $\tilde{X}$ — нечеткое множество, ограничивающее значения переменной.
|
||||||
|
|
||||||
|
Лингвистическая переменная задаётся кортежем $\langle \beta, T, U, G, M \rangle$, где:
|
||||||
|
- $\beta$ — имя переменной;
|
||||||
|
- $T$ — терм-множество;
|
||||||
|
- $U$ — универсум;
|
||||||
|
- $G$ — синтаксическая процедура образования новых значений;
|
||||||
|
- $M$ — семантическая процедура, сопоставляющая значениям нечеткие переменные.
|
||||||
|
|
||||||
|
Например, значения лингвистической переменной «возраст»: «молодой», «среднего возраста», «пожилой».
|
||||||
|
|
||||||
|
## Импликация
|
||||||
|
|
||||||
|
В нечеткой логике импликация может задаваться разными способами. В лекции используются:
|
||||||
|
- импликация Мамдани — минимум функций принадлежности;
|
||||||
|
- импликация Ларсена — произведение функций принадлежности.
|
||||||
|
|
||||||
|
## Композиционное правило вывода
|
||||||
|
|
||||||
|
Если $A$ — нечеткое подмножество универсума $U$, а $F$ — нечеткое подмножество $U \times V$, то результат вывода:
|
||||||
|
|
||||||
|
$$B = A \circ F$$
|
||||||
|
|
||||||
|
При импликации Мамдани обычно используется максиминная композиция:
|
||||||
|
|
||||||
|
$$\mu_B(v) = \max_u \min(\mu_A(u), \mu_F(u, v))$$
|
||||||
|
|
||||||
|
## Этапы нечеткого вывода
|
||||||
|
|
||||||
|
1. Фаззификация — вычисление степени истинности предпосылок правил для конкретных входных значений.
|
||||||
|
2. Импликация — применение степени истинности предпосылки к заключению правила.
|
||||||
|
3. Композиция — объединение результатов правил в одно нечеткое множество для выходной переменной.
|
||||||
|
4. Дефаззификация — необязательное преобразование нечеткого результата в четкое значение.
|
||||||
|
|
||||||
|
## Алгоритмы
|
||||||
|
|
||||||
|
**Мамдани:** заключение правила отсекается минимумом, результаты правил объединяются максимумом.
|
||||||
|
|
||||||
|
**Ларсен:** заключение масштабируется произведением, композиция может выполняться максимумом или суммированием.
|
||||||
|
|
||||||
|
**Цукамото:** заключения должны иметь монотонные функции принадлежности; для каждого правила получается четкое значение, итог считается как взвешенное среднее.
|
||||||
|
|
||||||
|
## Связанные заметки
|
||||||
|
- [[Теория нечетких множеств]]
|
||||||
|
- [[Нечеткие отношения]]
|
||||||
|
- [[Функция принадлежности]]
|
||||||
|
- [[Логические операции над нечеткими множествами]]
|
||||||
@@ -1,12 +1,14 @@
|
|||||||
---
|
---
|
||||||
status: seed
|
status: processing
|
||||||
type: concept
|
type: concept
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
|
- mephi
|
||||||
- fuzzy-sets
|
- fuzzy-sets
|
||||||
created: 2026-02-17
|
created: 2026-02-17
|
||||||
updated: 2026-05-07
|
updated: 2026-05-29
|
||||||
title: Определение Нечеткого Множества
|
title: Определение Нечеткого Множества
|
||||||
|
source: "[[МИАД_Л1.pdf]]"
|
||||||
---
|
---
|
||||||
|
|
||||||
# Определение Нечеткого Множества
|
# Определение Нечеткого Множества
|
||||||
@@ -21,6 +23,10 @@ title: Определение Нечеткого Множества
|
|||||||
|
|
||||||
<u>Нечеткое множество $A$ на универсуме ($U$)</u> - это совокупность пар вида $u,\mu_{A}(u)$, где $\mu_{A}(u)$ - [[Функция принадлежности|функция принадлежности]] нечеткого множества $A:U \to [0,1]$.
|
<u>Нечеткое множество $A$ на универсуме ($U$)</u> - это совокупность пар вида $u,\mu_{A}(u)$, где $\mu_{A}(u)$ - [[Функция принадлежности|функция принадлежности]] нечеткого множества $A:U \to [0,1]$.
|
||||||
|
|
||||||
|
Нечеткая логика удобна, когда нужно формализовать качественные понятия естественного языка: «большой», «молодой», «популярный». Такое понятие сначала задаётся функцией принадлежности, а затем используется как математический объект.
|
||||||
|
|
||||||
|
Плюс подхода — описание задачи языком, близким к естественному. Минус — зависимость модели от ЛПР или экспертов: вид и параметры функции принадлежности выбираются субъективно.
|
||||||
|
|
||||||
Примеры:
|
Примеры:
|
||||||
1) $U = (a,b,c,d,e,f)$, то $A = (\frac{0}{a},\frac{1}{b}, \frac{0.5}{c}, \dots)$
|
1) $U = (a,b,c,d,e,f)$, то $A = (\frac{0}{a},\frac{1}{b}, \frac{0.5}{c}, \dots)$
|
||||||
2) $U=\{a,b,c,d,e\};\ A=\{\{a,0\}, \{b,0.1\},\{c,0.5\},\{d,0.9\},\{e,1\}\};$
|
2) $U=\{a,b,c,d,e\};\ A=\{\{a,0\}, \{b,0.1\},\{c,0.5\},\{d,0.9\},\{e,1\}\};$
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
---
|
---
|
||||||
status: stable
|
status: processing
|
||||||
type: moc
|
type: moc
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
- mephi
|
- mephi
|
||||||
- fuzzy-sets
|
- fuzzy-sets
|
||||||
created: 2026-05-02
|
created: 2026-05-02
|
||||||
updated: 2026-05-07
|
updated: 2026-05-29
|
||||||
title: Теория Нечетких Множеств
|
title: Теория Нечетких Множеств
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -16,6 +16,8 @@ title: Теория Нечетких Множеств
|
|||||||
- [[Доказательство законов Де Моргана]]
|
- [[Доказательство законов Де Моргана]]
|
||||||
- [[Коэффициенты функций принадлежности]]
|
- [[Коэффициенты функций принадлежности]]
|
||||||
- [[Логические операции над нечеткими множествами]]
|
- [[Логические операции над нечеткими множествами]]
|
||||||
|
- [[Нечеткие отношения]]
|
||||||
|
- [[Нечеткий вывод]]
|
||||||
- [[Определение нечеткого множества]]
|
- [[Определение нечеткого множества]]
|
||||||
- [[Функция принадлежности]]
|
- [[Функция принадлежности]]
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,16 @@
|
|||||||
---
|
---
|
||||||
status: stable
|
status: processing
|
||||||
type: concept
|
type: concept
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
- mephi
|
- mephi
|
||||||
- fuzzy-sets
|
- fuzzy-sets
|
||||||
created: 2026-02-17
|
created: 2026-02-17
|
||||||
updated: 2026-05-07
|
updated: 2026-05-29
|
||||||
title: Функция принадлежности
|
title: Функция принадлежности
|
||||||
|
source:
|
||||||
|
- "[[МИАД_Л1.pdf]]"
|
||||||
|
- "[[МИАД_Л2.pdf]]"
|
||||||
---
|
---
|
||||||
|
|
||||||
# Функция принадлежности
|
# Функция принадлежности
|
||||||
@@ -17,6 +20,15 @@ title: Функция принадлежности
|
|||||||
- **Прямые** - эксперт самостоятельно задает функцию. (исп. для измеримых понятий - рост, время, скорость и т.д.)
|
- **Прямые** - эксперт самостоятельно задает функцию. (исп. для измеримых понятий - рост, время, скорость и т.д.)
|
||||||
- **Косвенные** - характеристики выделяются исходя из попарных сравнений объектов.
|
- **Косвенные** - характеристики выделяются исходя из попарных сравнений объектов.
|
||||||
|
|
||||||
|
Перед построением функции принадлежности важно понять шкалу измерения признака:
|
||||||
|
- номинальная — категории без порядка;
|
||||||
|
- порядковая — категории упорядочены, но расстояния между ними не интерпретируются;
|
||||||
|
- интервальная — имеют смысл разности значений;
|
||||||
|
- относительная — имеют смысл и разности, и отношения;
|
||||||
|
- дихотомическая — частный случай номинальной шкалы с двумя значениями.
|
||||||
|
|
||||||
|
Прямые методы обычно применяются для признаков в относительной шкале. Косвенные методы применяются, когда данные качественные или категориальные; распространённый вариант — парные сравнения по шкале Саати.
|
||||||
|
|
||||||
## Типовые формы кривых
|
## Типовые формы кривых
|
||||||
|
|
||||||
### Треугольная (trimf)
|
### Треугольная (trimf)
|
||||||
@@ -42,4 +54,3 @@ title: Функция принадлежности
|
|||||||
## Связанные заметки
|
## Связанные заметки
|
||||||
- [[Метрические алгоритмы]] — $\hat{P}_c(x)$ в kNN возвращает значение в [0,1], аналогично μ_A; оба представляют "мягкую" принадлежность классу
|
- [[Метрические алгоритмы]] — $\hat{P}_c(x)$ в kNN возвращает значение в [0,1], аналогично μ_A; оба представляют "мягкую" принадлежность классу
|
||||||
- [[Линейные модели]] — сигмоидальная функция принадлежности = та же сигмоида в логистической регрессии
|
- [[Линейные модели]] — сигмоидальная функция принадлежности = та же сигмоида в логистической регрессии
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
---
|
||||||
|
status: seed
|
||||||
|
type: guide
|
||||||
|
tags:
|
||||||
|
- programming
|
||||||
|
- ruby-on-rails
|
||||||
|
- deploy
|
||||||
|
created: 2026-05-29
|
||||||
|
updated: 2026-05-29
|
||||||
|
title: Capistrano deploy через systemd
|
||||||
|
source: "[[Команды для деплоя с помощью Capistrano]]"
|
||||||
|
---
|
||||||
|
|
||||||
|
# Capistrano deploy через systemd
|
||||||
|
|
||||||
|
Заметка про выдачу минимальных `sudo`-прав для деплоя Rails-приложения через Capistrano, когда сервисы управляются через `systemd`.
|
||||||
|
|
||||||
|
## Sudoers
|
||||||
|
|
||||||
|
В `/etc/sudoers` задаётся alias для команд, которые Capistrano может выполнять без пароля:
|
||||||
|
|
||||||
|
```sudoers
|
||||||
|
Cmnd_Alias PUMA_CONTROL = /usr/bin/mv /tmp/navigation_backend_puma_production.service /etc/systemd/system/, /usr/bin/mv /tmp/navigation_backend_puma_production.socket /etc/systemd/system/, /bin/systemctl daemon-reload, /bin/systemctl enable navigation_backend_puma_production, /bin/systemctl start navigation_backend_puma_production, /bin/systemctl stop navigation_backend_puma_production, /bin/systemctl restart navigation_backend_puma_production, /bin/systemctl enable navigation_backend_puma_production.socket, /bin/systemctl restart navigation_backend_sidekiq_production.service, /bin/systemctl restart navigation_backend_solid_queue_production.service, /bin/systemctl restart solid_queue
|
||||||
|
deploy ALL = NOPASSWD: PUMA_CONTROL
|
||||||
|
```
|
||||||
|
|
||||||
|
Где:
|
||||||
|
- `deploy` — пользователь, от имени которого выполняется деплой;
|
||||||
|
- `navigation_backend` — имя приложения в service/socket unit-файлах.
|
||||||
|
|
||||||
|
## Команды деплоя
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cap production puma:install
|
||||||
|
cap production deploy
|
||||||
|
```
|
||||||
|
|
||||||
|
`puma:install` кладёт `systemd` unit-файлы, после чего `deploy` перезапускает Puma и фоновые сервисы без интерактивного ввода пароля.
|
||||||
|
|
||||||
|
## Связанные заметки
|
||||||
|
- [[Ruby On Rails]]
|
||||||
|
- [[Sidekiq - основа работы]]
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
---
|
---
|
||||||
status: stable
|
status: processing
|
||||||
type: moc
|
type: moc
|
||||||
tags:
|
tags:
|
||||||
- programming
|
- programming
|
||||||
- ruby-on-rails
|
- ruby-on-rails
|
||||||
created: 2025-12-17
|
created: 2025-12-17
|
||||||
updated: 2026-05-07
|
updated: 2026-05-29
|
||||||
title: Ruby On Rails
|
title: Ruby On Rails
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -14,6 +14,7 @@ title: Ruby On Rails
|
|||||||
%% Begin Waypoint %%
|
%% Begin Waypoint %%
|
||||||
- [[Active Storage]]
|
- [[Active Storage]]
|
||||||
- [[API импорт в Rails через runner]]
|
- [[API импорт в Rails через runner]]
|
||||||
|
- [[Capistrano deploy через systemd]]
|
||||||
- [[Rails credentials edit не открывает редактор]]
|
- [[Rails credentials edit не открывает редактор]]
|
||||||
- [[Sidekiq - основа работы]]
|
- [[Sidekiq - основа работы]]
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
generated: 2026-05-26
|
generated: 2026-05-29
|
||||||
total: 456
|
total: 461
|
||||||
---
|
---
|
||||||
|
|
||||||
# Vault Index
|
# Vault Index
|
||||||
@@ -11,10 +11,10 @@ total: 456
|
|||||||
|
|
||||||
| Параметр | Значение |
|
| Параметр | Значение |
|
||||||
|----------|----------|
|
|----------|----------|
|
||||||
| Всего заметок | 456 |
|
| Всего заметок | 461 |
|
||||||
| status: processing | 34 |
|
| status: processing | 39 |
|
||||||
| status: seed | 217 |
|
| status: seed | 220 |
|
||||||
| status: stable | 112 |
|
| status: stable | 109 |
|
||||||
| status: — | 93 |
|
| status: — | 93 |
|
||||||
|
|
||||||
## Заметки
|
## Заметки
|
||||||
@@ -197,7 +197,7 @@ total: 456
|
|||||||
| `04 Tools/StudyTracker/StudyTracker.md` | 🎓 Трекер Обучения | stable | database | tracker, education |
|
| `04 Tools/StudyTracker/StudyTracker.md` | 🎓 Трекер Обучения | stable | database | tracker, education |
|
||||||
| `04 Tools/🛠️ Неоконченные заметки.md` | 🛠️ Неоконченные заметки | stable | database | dashboard |
|
| `04 Tools/🛠️ Неоконченные заметки.md` | 🛠️ Неоконченные заметки | stable | database | dashboard |
|
||||||
|
|
||||||
### 90 Library (229)
|
### 90 Library (233)
|
||||||
|
|
||||||
| `90 Library/Containers/Apache Mesos.md` | Apache Mesos | stable | concept | devops, containerization |
|
| `90 Library/Containers/Apache Mesos.md` | Apache Mesos | stable | concept | devops, containerization |
|
||||||
| `90 Library/Containers/Docker Swarm.md` | Docker Swarm | stable | concept | devops, containerization, docker |
|
| `90 Library/Containers/Docker Swarm.md` | Docker Swarm | stable | concept | devops, containerization, docker |
|
||||||
@@ -255,8 +255,8 @@ total: 456
|
|||||||
| `90 Library/Finance/Налоги/Методы признания доходов и расходов.md` | Методы Признания Доходов И Расходов | seed | concept | finance, taxes |
|
| `90 Library/Finance/Налоги/Методы признания доходов и расходов.md` | Методы Признания Доходов И Расходов | seed | concept | finance, taxes |
|
||||||
| `90 Library/Finance/Налоги/Налог на добавленную стоимость.md` | Налог На Добавленную Стоимость | seed | concept | mephi, finance, taxes |
|
| `90 Library/Finance/Налоги/Налог на добавленную стоимость.md` | Налог На Добавленную Стоимость | seed | concept | mephi, finance, taxes |
|
||||||
| `90 Library/Finance/Налоги/Налог на доходы физических лиц (НДФЛ).md` | Налог На Доходы Физических Лиц (НДФЛ) | processing | concept | mephi, tax, finance, taxes, ndfl |
|
| `90 Library/Finance/Налоги/Налог на доходы физических лиц (НДФЛ).md` | Налог На Доходы Физических Лиц (НДФЛ) | processing | concept | mephi, tax, finance, taxes, ndfl |
|
||||||
| `90 Library/Finance/Налоги/Налог на имущество ФЛ.md` | Налог На Имущество ФЛ | seed | concept | finance, taxes |
|
|
||||||
| `90 Library/Finance/Налоги/Налог на имущество организаций.md` | Налог На Имущество Организаций | seed | concept | finance, taxes |
|
| `90 Library/Finance/Налоги/Налог на имущество организаций.md` | Налог На Имущество Организаций | seed | concept | finance, taxes |
|
||||||
|
| `90 Library/Finance/Налоги/Налог на имущество ФЛ.md` | Налог На Имущество ФЛ | seed | concept | finance, taxes |
|
||||||
| `90 Library/Finance/Налоги/Налог на прибыль.md` | Налог На Прибыль | seed | concept | finance, taxes, profit-tax |
|
| `90 Library/Finance/Налоги/Налог на прибыль.md` | Налог На Прибыль | seed | concept | finance, taxes, profit-tax |
|
||||||
| `90 Library/Finance/Налоги/Налоговая декларация.md` | Налоговая Декларация | processing | concept | mephi, tax, finance, taxes |
|
| `90 Library/Finance/Налоги/Налоговая декларация.md` | Налоговая Декларация | processing | concept | mephi, tax, finance, taxes |
|
||||||
| `90 Library/Finance/Налоги/Налоговая нагрузка.md` | Налоговая Нагрузка | seed | concept | finance, taxes |
|
| `90 Library/Finance/Налоги/Налоговая нагрузка.md` | Налоговая Нагрузка | seed | concept | finance, taxes |
|
||||||
@@ -302,6 +302,7 @@ total: 456
|
|||||||
| `90 Library/Machine Learning/Предобработка данных для нейронных сетей.md` | Предобработка данных для нейронных сетей | seed | concept | machine-learning, neural-networks, preprocessing, normalization |
|
| `90 Library/Machine Learning/Предобработка данных для нейронных сетей.md` | Предобработка данных для нейронных сетей | seed | concept | machine-learning, neural-networks, preprocessing, normalization |
|
||||||
| `90 Library/Machine Learning/Сеть Хопфилда.md` | Сеть Хопфилда | seed | concept | machine-learning, neural-networks, associative-memory |
|
| `90 Library/Machine Learning/Сеть Хопфилда.md` | Сеть Хопфилда | seed | concept | machine-learning, neural-networks, associative-memory |
|
||||||
| `90 Library/Machine Learning/Сеть Хэмминга.md` | Сеть Хэмминга | seed | concept | machine-learning, neural-networks, associative-memory |
|
| `90 Library/Machine Learning/Сеть Хэмминга.md` | Сеть Хэмминга | seed | concept | machine-learning, neural-networks, associative-memory |
|
||||||
|
| `90 Library/Math/Метод анализа иерархий.md` | Метод анализа иерархий | seed | concept | math, mephi, decision-making |
|
||||||
| `90 Library/Math/Статистика/Временные ряды/TS и DS ряды.md` | TS И DS Ряды | stable | concept | math, mephi, ml, statistics, time-series |
|
| `90 Library/Math/Статистика/Временные ряды/TS и DS ряды.md` | TS И DS Ряды | stable | concept | math, mephi, ml, statistics, time-series |
|
||||||
| `90 Library/Math/Статистика/Временные ряды/Автокорреляционная (ACF) и частная автокорреляционная (PACF) функции.md` | Автокорреляционная (ACF) И Частная Автокорреляционная (PACF) Функции | processing | concept | math, mephi, statistics, time-series, autocorrelation |
|
| `90 Library/Math/Статистика/Временные ряды/Автокорреляционная (ACF) и частная автокорреляционная (PACF) функции.md` | Автокорреляционная (ACF) И Частная Автокорреляционная (PACF) Функции | processing | concept | math, mephi, statistics, time-series, autocorrelation |
|
||||||
| `90 Library/Math/Статистика/Временные ряды/Автокорреляционная функция (АКФ).md` | Автокорреляционная Функция (АКФ) | stable | concept | math, ml, mephi, statistics, time-series, autocorrelation |
|
| `90 Library/Math/Статистика/Временные ряды/Автокорреляционная функция (АКФ).md` | Автокорреляционная Функция (АКФ) | stable | concept | math, ml, mephi, statistics, time-series, autocorrelation |
|
||||||
@@ -369,10 +370,12 @@ total: 456
|
|||||||
| `90 Library/Math/Статистика/Факторный анализ/Этапы ФА. Выделение факторов.md` | Этапы ФА. Выделение Факторов | seed | concept | math, mephi, statistics, factor-analysis |
|
| `90 Library/Math/Статистика/Факторный анализ/Этапы ФА. Выделение факторов.md` | Этапы ФА. Выделение Факторов | seed | concept | math, mephi, statistics, factor-analysis |
|
||||||
| `90 Library/Math/Теория нечетких множеств/Доказательство законов Де Моргана.md` | Доказательство законов Де Моргана | seed | concept | math, fuzzy-sets |
|
| `90 Library/Math/Теория нечетких множеств/Доказательство законов Де Моргана.md` | Доказательство законов Де Моргана | seed | concept | math, fuzzy-sets |
|
||||||
| `90 Library/Math/Теория нечетких множеств/Коэффициенты функций принадлежности.md` | Коэффициенты функций принадлежности | seed | concept | math, mephi, fuzzy-sets |
|
| `90 Library/Math/Теория нечетких множеств/Коэффициенты функций принадлежности.md` | Коэффициенты функций принадлежности | seed | concept | math, mephi, fuzzy-sets |
|
||||||
| `90 Library/Math/Теория нечетких множеств/Логические операции над нечеткими множествами.md` | Логические операции над нечеткими множествами | seed | concept | math, fuzzy-sets |
|
| `90 Library/Math/Теория нечетких множеств/Логические операции над нечеткими множествами.md` | Логические операции над нечеткими множествами | processing | concept | math, mephi, fuzzy-sets |
|
||||||
| `90 Library/Math/Теория нечетких множеств/Определение нечеткого множества.md` | Определение Нечеткого Множества | seed | concept | math, fuzzy-sets |
|
| `90 Library/Math/Теория нечетких множеств/Нечеткие отношения.md` | Нечеткие отношения | seed | concept | math, mephi, fuzzy-sets |
|
||||||
| `90 Library/Math/Теория нечетких множеств/Теория нечетких множеств.md` | Теория Нечетких Множеств | stable | moc | math, mephi, fuzzy-sets |
|
| `90 Library/Math/Теория нечетких множеств/Нечеткий вывод.md` | Нечеткий вывод | seed | concept | math, mephi, fuzzy-sets |
|
||||||
| `90 Library/Math/Теория нечетких множеств/Функция принадлежности.md` | Функция принадлежности | stable | concept | math, mephi, fuzzy-sets |
|
| `90 Library/Math/Теория нечетких множеств/Определение нечеткого множества.md` | Определение Нечеткого Множества | processing | concept | math, mephi, fuzzy-sets |
|
||||||
|
| `90 Library/Math/Теория нечетких множеств/Теория нечетких множеств.md` | Теория Нечетких Множеств | processing | moc | math, mephi, fuzzy-sets |
|
||||||
|
| `90 Library/Math/Теория нечетких множеств/Функция принадлежности.md` | Функция принадлежности | processing | concept | math, mephi, fuzzy-sets |
|
||||||
| `90 Library/Networking/Ethernet.md` | Ethernet | stable | concept | network, networking, ethernet |
|
| `90 Library/Networking/Ethernet.md` | Ethernet | stable | concept | network, networking, ethernet |
|
||||||
| `90 Library/Networking/LAN vs WAN.md` | LAN Vs WAN | stable | concept | network, networking |
|
| `90 Library/Networking/LAN vs WAN.md` | LAN Vs WAN | stable | concept | network, networking |
|
||||||
| `90 Library/Networking/MAC-адрес.md` | MAC-адрес | stable | concept | networking |
|
| `90 Library/Networking/MAC-адрес.md` | MAC-адрес | stable | concept | networking |
|
||||||
@@ -421,15 +424,16 @@ total: 456
|
|||||||
| `90 Library/Other/Сканер отпечатка пальцев.md` | Сканер Отпечатка Пальцев | processing | knowledge | other |
|
| `90 Library/Other/Сканер отпечатка пальцев.md` | Сканер Отпечатка Пальцев | processing | knowledge | other |
|
||||||
| `90 Library/Programming/Ruby - массивы.md` | Ruby - массивы | processing | knowledge | programming, ruby |
|
| `90 Library/Programming/Ruby - массивы.md` | Ruby - массивы | processing | knowledge | programming, ruby |
|
||||||
| `90 Library/Programming/Ruby - основы языка.md` | Ruby - основы языка | processing | knowledge | programming, ruby |
|
| `90 Library/Programming/Ruby - основы языка.md` | Ruby - основы языка | processing | knowledge | programming, ruby |
|
||||||
| `90 Library/Programming/Ruby On Rails/API импорт в Rails через runner.md` | API импорт в Rails через runner | seed | guide | programming, ruby-on-rails, api |
|
|
||||||
| `90 Library/Programming/Ruby On Rails/Active Storage.md` | Active Storage | processing | concept | programming, ruby-on-rails |
|
| `90 Library/Programming/Ruby On Rails/Active Storage.md` | Active Storage | processing | concept | programming, ruby-on-rails |
|
||||||
|
| `90 Library/Programming/Ruby On Rails/API импорт в Rails через runner.md` | API импорт в Rails через runner | seed | guide | programming, ruby-on-rails, api |
|
||||||
|
| `90 Library/Programming/Ruby On Rails/Capistrano deploy через systemd.md` | Capistrano deploy через systemd | seed | guide | programming, ruby-on-rails, deploy |
|
||||||
| `90 Library/Programming/Ruby On Rails/Rails credentials edit не открывает редактор.md` | Rails credentials edit не открывает редактор | seed | guide | programming, ruby-on-rails, debug |
|
| `90 Library/Programming/Ruby On Rails/Rails credentials edit не открывает редактор.md` | Rails credentials edit не открывает редактор | seed | guide | programming, ruby-on-rails, debug |
|
||||||
| `90 Library/Programming/Ruby On Rails/Ruby On Rails.md` | Ruby On Rails | stable | moc | programming, ruby-on-rails |
|
| `90 Library/Programming/Ruby On Rails/Ruby On Rails.md` | Ruby On Rails | processing | moc | programming, ruby-on-rails |
|
||||||
| `90 Library/Programming/Ruby On Rails/Sidekiq - основа работы.md` | Sidekiq - Основа Работы | processing | concept | programming, ruby-on-rails |
|
| `90 Library/Programming/Ruby On Rails/Sidekiq - основа работы.md` | Sidekiq - Основа Работы | processing | concept | programming, ruby-on-rails |
|
||||||
| `90 Library/Sport/L-карнитин.md` | L-карнитин | seed | concept | gym, БАД, sport, supplements |
|
| `90 Library/Sport/L-карнитин.md` | L-карнитин | seed | concept | gym, БАД, sport, supplements |
|
||||||
| `90 Library/Sport/Креатин.md` | Креатин | seed | concept | gym, БАД, sport |
|
| `90 Library/Sport/Креатин.md` | Креатин | seed | concept | gym, БАД, sport |
|
||||||
|
|
||||||
### 99 System (59)
|
### 99 System (60)
|
||||||
|
|
||||||
| `99 System/Archive/31, 32 - Налоги 1.md` | 31, 32 - Налоги | seed | knowledge | study, taxes |
|
| `99 System/Archive/31, 32 - Налоги 1.md` | 31, 32 - Налоги | seed | knowledge | study, taxes |
|
||||||
| `99 System/Archive/31, 32 - Налоги.md` | 31, 32 - Налоги | seed | knowledge | study, taxes |
|
| `99 System/Archive/31, 32 - Налоги.md` | 31, 32 - Налоги | seed | knowledge | study, taxes |
|
||||||
@@ -441,21 +445,22 @@ total: 456
|
|||||||
| `99 System/Archive/Infrastructure.md` | Infrastructure | seed | concept | — |
|
| `99 System/Archive/Infrastructure.md` | Infrastructure | seed | concept | — |
|
||||||
| `99 System/Archive/OSINT - Зачет.md` | OSINT - Зачет | processing | knowledge | mephi, study, osi |
|
| `99 System/Archive/OSINT - Зачет.md` | OSINT - Зачет | processing | knowledge | mephi, study, osi |
|
||||||
| `99 System/Archive/Rails credentials edit не открывает редактор.md` | Rails credentials edit не открывает редактор | seed | concept | — |
|
| `99 System/Archive/Rails credentials edit не открывает редактор.md` | Rails credentials edit не открывает редактор | seed | concept | — |
|
||||||
|
| `99 System/Archive/reader.md` | — | seed | concept | — |
|
||||||
| `99 System/Archive/Ruby - массивы.md` | Ruby - массивы | seed | concept | — |
|
| `99 System/Archive/Ruby - массивы.md` | Ruby - массивы | seed | concept | — |
|
||||||
| `99 System/Archive/Ruby - основы языка.md` | Ruby - основы языка | seed | concept | — |
|
| `99 System/Archive/Ruby - основы языка.md` | Ruby - основы языка | seed | concept | — |
|
||||||
| `99 System/Archive/Upgrade Homelab.md` | Upgrade Homelab | processing | project | homelab, hardware |
|
| `99 System/Archive/Upgrade Homelab.md` | Upgrade Homelab | processing | project | homelab, hardware |
|
||||||
| `99 System/Archive/reader.md` | — | seed | concept | — |
|
|
||||||
| `99 System/Archive/Алгоритм обратного распространения ошибки для произвольного числа слоев НС.md` | Алгоритм обратного распространения ошибки для произвольного числа слоев НС | seed | concept | — |
|
| `99 System/Archive/Алгоритм обратного распространения ошибки для произвольного числа слоев НС.md` | Алгоритм обратного распространения ошибки для произвольного числа слоев НС | seed | concept | — |
|
||||||
| `99 System/Archive/Алгоритм обучения сети Кохонена.md` | Алгоритм обучения сети Кохонена | seed | concept | — |
|
| `99 System/Archive/Алгоритм обучения сети Кохонена.md` | Алгоритм обучения сети Кохонена | seed | concept | — |
|
||||||
| `99 System/Archive/Анализ типа фин. устойчивости.md` | Анализ типа фин. устойчивости | seed | concept | — |
|
| `99 System/Archive/Анализ типа фин. устойчивости.md` | Анализ типа фин. устойчивости | seed | concept | — |
|
||||||
| `99 System/Archive/В случае ошибок на принтере Kyocera FS-1020MFP.md` | В случае ошибок на принтере Kyocera FS-1020MFP | seed | concept | — |
|
| `99 System/Archive/В случае ошибок на принтере Kyocera FS-1020MFP.md` | В случае ошибок на принтере Kyocera FS-1020MFP | seed | concept | — |
|
||||||
| `99 System/Archive/ВДО no кредитам.md` | — | seed | concept | — |
|
|
||||||
| `99 System/Archive/Введение в сетевую безопасность.md` | Введение в сетевую безопасность | processing | concept | — |
|
| `99 System/Archive/Введение в сетевую безопасность.md` | Введение в сетевую безопасность | processing | concept | — |
|
||||||
|
| `99 System/Archive/ВДО no кредитам.md` | — | seed | concept | — |
|
||||||
| `99 System/Archive/Знания Ruby.md` | Знания Ruby | seed | concept | — |
|
| `99 System/Archive/Знания Ruby.md` | Знания Ruby | seed | concept | — |
|
||||||
| `99 System/Archive/Идеи для статьи.md` | Идеи Для Статьи | — | — | — |
|
| `99 System/Archive/Идеи для статьи.md` | Идеи Для Статьи | — | — | — |
|
||||||
| `99 System/Archive/Идея сети кохонена.md` | Идея сети кохонена | seed | concept | — |
|
| `99 System/Archive/Идея сети кохонена.md` | Идея сети кохонена | seed | concept | — |
|
||||||
| `99 System/Archive/Идея.md` | — | seed | concept | — |
|
| `99 System/Archive/Идея.md` | — | seed | concept | — |
|
||||||
| `99 System/Archive/Итераторы для обработки массивов Ruby.md` | Итераторы для обработки массивов Ruby | seed | concept | — |
|
| `99 System/Archive/Итераторы для обработки массивов Ruby.md` | Итераторы для обработки массивов Ruby | seed | concept | — |
|
||||||
|
| `99 System/Archive/Команды для деплоя с помощью Capistrano.md` | — | seed | concept | — |
|
||||||
| `99 System/Archive/КР - Кохонен.md` | КР - Кохонен | seed | concept | — |
|
| `99 System/Archive/КР - Кохонен.md` | КР - Кохонен | seed | concept | — |
|
||||||
| `99 System/Archive/КР - Персептрон.md` | КР - Персептрон | seed | concept | — |
|
| `99 System/Archive/КР - Персептрон.md` | КР - Персептрон | seed | concept | — |
|
||||||
| `99 System/Archive/КР - Хопфилд.md` | КР - Хопфилд | seed | concept | — |
|
| `99 System/Archive/КР - Хопфилд.md` | КР - Хопфилд | seed | concept | — |
|
||||||
@@ -469,8 +474,8 @@ total: 456
|
|||||||
| `99 System/Archive/Подготовка Speaking.md` | Подготовка Speaking | seed | concept | — |
|
| `99 System/Archive/Подготовка Speaking.md` | Подготовка Speaking | seed | concept | — |
|
||||||
| `99 System/Archive/Подготовка к защите ЛР2.md` | Подготовка к защите ЛР2 | processing | lab | mephi |
|
| `99 System/Archive/Подготовка к защите ЛР2.md` | Подготовка к защите ЛР2 | processing | lab | mephi |
|
||||||
| `99 System/Archive/Поздравления с НГ.md` | — | processing | lab | — |
|
| `99 System/Archive/Поздравления с НГ.md` | — | processing | lab | — |
|
||||||
| `99 System/Archive/РИАС - база.md` | РИАС - База | seed | knowledge | mephi, study |
|
|
||||||
| `99 System/Archive/Работа с API для проекта Attendance Mephi.md` | — | seed | concept | — |
|
| `99 System/Archive/Работа с API для проекта Attendance Mephi.md` | — | seed | concept | — |
|
||||||
|
| `99 System/Archive/РИАС - база.md` | РИАС - База | seed | knowledge | mephi, study |
|
||||||
| `99 System/Archive/Сети Хопфилда и Хэмминга.md` | Сети Хопфилда и Хэмминга | seed | concept | — |
|
| `99 System/Archive/Сети Хопфилда и Хэмминга.md` | Сети Хопфилда и Хэмминга | seed | concept | — |
|
||||||
| `99 System/Archive/Сравнение хранилищ секретов.md` | Сравнение Хранилищ Секретов | seed | knowledge | il |
|
| `99 System/Archive/Сравнение хранилищ секретов.md` | Сравнение Хранилищ Секретов | seed | knowledge | il |
|
||||||
| `99 System/Archive/УИР.md` | УИР | seed | concept | — |
|
| `99 System/Archive/УИР.md` | УИР | seed | concept | — |
|
||||||
|
|||||||
Reference in New Issue
Block a user