diff --git a/src-russian/view/04b_iteration.md b/src-russian/view/04b_iteration.md
index df1caf1..f55a920 100644
--- a/src-russian/view/04b_iteration.md
+++ b/src-russian/view/04b_iteration.md
@@ -183,11 +183,11 @@ pub fn App() -> impl IntoView {
}
```
-Эта версия работает! И если вы посмотрите через DOM инспектор в вашем браузере, вы увидите, что в отличие от
-предыдущей, в этой версии только отдельные текстовые узлы обновляются. Передача сигнала напрямую в `{child.value}`
-работает, поскольку сигналы сохраняют свою реактивность если их передавать во view.
+Эта версия работает! И если вы посмотрите через DOM инспектор в вашем браузере, то увидите, что в этой версии, в отличие от
+предыдущей, лишь отдельные текстовые узлы обновляются. Передача сигнала напрямую в `{child.value}`
+работает, поскольку сигналы остаются реактивными при передаче их во view.
-Обратите внимание, я поменял `set_data.update()` на `data.with()`. `.with()` это способ получить доступ к значению сигнала,
+Обратите внимание, я заменил `set_data.update()` на `data.with()`. `.with()` это способ получить доступ к значению сигнала,
не клонируя его. В данном случае мы лишь обновляем внутренние значение, не трогая список значений: поскольку сигналы имеют собственное состояние,
нам в действительности вовсе не нужно обновлять сигнал `data`, так что иммутабельный вызов `.with()` вполне подходит.
@@ -212,7 +212,7 @@ Leptos предоставляет примитив называемый [`create
Это позволяет создать реактивные значения для суб-полей крупной структуры данных, без
необходимости оборачивать поля этой структуры в сигналы.
-Большая часть приложения может остаться неизменённой относительно первоначальной (сломанной) версии, но `` будет
+Большая часть приложения может остаться неизменной относительно первоначальной (сломанной) версии, но `` будет
выглядеть так:
```rust
@@ -231,9 +231,9 @@ Leptos предоставляет примитив называемый [`create
```
Здесь вы заметите несколько отличий:
-- мы конвертируем сигнала `data` в нумерующий итератор
-- мы используем свойство `children` явным образом, чтобы упростить выполнение некоторого кода вне `view`
-- мы создаем memo `value` и используем его и во view. Это поле `value`, на самом деле, не использует `child` передаваемое в каждый ряд.
+- мы конвертируем сигнал `data` в нумерующий итератор
+- мы используем свойство `children` явным образом, чтобы упростить выполнение кода вне `view`
+- мы создаем memo `value` и используем его и во view. Это поле `value`, на самом деле, не использует значение `child` передаваемое в каждый ряд.
Вместо этого, оно использует индекс и обращается непосредственно к `data` чтобы получить значение.
Теперь, каждый раз, когда `data` меняется, каждое memo будет пересчитано. Если его значение изменилось, оно поменяет свой текстовый узел
@@ -241,7 +241,7 @@ Leptos предоставляет примитив называемый [`create
### Преимущества
-Мы получаем такую же мелко-зернистую реактивность, что и в версии с оборачиваем в сигналы, без необходимости оборачивать данные в сигналы.
+Мы получаем ту же мелкозернистую реактивность, что и в версии с оборачиваем в сигналы, без необходимости оборачивать данные в сигналы.
### Недостатки