diff --git a/mod_oop/3.9_10_stack_iter.py b/mod_oop/3.9_10_stack_iter.py
index 98df3c9..0a9c719 100644
--- a/mod_oop/3.9_10_stack_iter.py
+++ b/mod_oop/3.9_10_stack_iter.py
@@ -150,10 +150,10 @@ class Stack:
 
         prev = self.top
         for i, v in enumerate(self):
-            prev = v
             if idx == i:
                 old = v
                 break
+            prev = v
 
         value = StackObj.wrap(value)
         value.next = old.next
@@ -190,6 +190,12 @@ def tests():
         + b"Y7+nfY83sve2;5yU@PTfzga0(74fo(7MpO(T>rF(6!LL(74dGAW3dyWq3t$a&K}X"
     )
     exec(__import__("base64").b85decode(code))
+    # +
+    st = Stack("123")
+    st[1] = "x"
+    assert "1x3" == "".join(
+        map(str, st)
+    ), "неверно отработали операторы присвоения данных по индексу и/или получение данных по индексу"
 
 
 if __name__ == "__main__":