diff --git a/reference/executionmodel.po b/reference/executionmodel.po
index a5d272e08b..000b586018 100644
--- a/reference/executionmodel.po
+++ b/reference/executionmodel.po
@@ -11,15 +11,16 @@ msgstr ""
 "Project-Id-Version: Python 3.8\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2024-11-21 16:38-0300\n"
-"PO-Revision-Date: 2023-11-11 16:50-0300\n"
+"PO-Revision-Date: 2025-02-17 16:37-0500\n"
 "Last-Translator: Francisco Mora <fr.morac@duocuc.cl>\n"
-"Language: es\n"
 "Language-Team: python-doc-es\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Language: es\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "Generated-By: Babel 2.16.0\n"
+"X-Generator: Poedit 3.5\n"
 
 #: ../Doc/reference/executionmodel.rst:6
 msgid "Execution model"
@@ -258,7 +259,6 @@ msgstr ""
 "<faq-unboundlocalerror>` para ejemplos."
 
 #: ../Doc/reference/executionmodel.rst:136
-#, fuzzy
 msgid ""
 "If the :keyword:`global` statement occurs within a block, all uses of the "
 "names specified in the statement refer to the bindings of those names in the "
@@ -279,8 +279,10 @@ msgstr ""
 "nombres incorporado, el *namespace* del módulo :mod:`builtins`. La búsqueda "
 "se realiza primero en el espacio de nombres global. Si el nombre no se "
 "encuentra ahí, se busca en el espacio de nombres incorporado (*builtins "
-"namespace*). La declaración :keyword:`!global` debe preceder a todos los "
-"usos del nombre."
+"namespace*) próximamente. Si tampoco se encuentran los nombres en el espacio "
+"de nombres incorporado, se crean variables nuevas en el espacio de nombres "
+"global. La declaración global debe preceder a todos los usos de los nombres "
+"listados."
 
 #: ../Doc/reference/executionmodel.rst:146
 msgid ""
@@ -351,6 +353,9 @@ msgid ""
 "    a = 42\n"
 "    b = list(a + i for i in range(10))"
 msgstr ""
+"class A:\n"
+"    a = 42\n"
+"    b = list(a + i for i in range(10))"
 
 #: ../Doc/reference/executionmodel.rst:180
 msgid "However, the following will succeed::"
@@ -364,6 +369,11 @@ msgid ""
 "\n"
 "print(A.Alias.__value__)  # <type 'A.Nested'>"
 msgstr ""
+"class A:\n"
+"    type Alias = Nested\n"
+"    class Nested: pass\n"
+"\n"
+"print(A.Alias.__value__)  # <type 'A.Nested'>"
 
 #: ../Doc/reference/executionmodel.rst:191
 msgid "Annotation scopes"
@@ -416,13 +426,12 @@ msgstr ""
 "ejecutan dentro del ámbito de la anotación, pero sus decoradores no."
 
 #: ../Doc/reference/executionmodel.rst:208
-#, fuzzy
 msgid ""
 "The bounds, constraints, and default values for type parameters (:ref:"
 "`lazily evaluated <lazy-evaluation>`)."
 msgstr ""
-"Los límites y restricciones de las variables de tipo (:ref:`lazily evaluated "
-"<lazy-evaluation>`)."
+"Los límites, restricciones y valores predeterminados para los parámetros de "
+"tipo (:ref:`evaluados de forma diferida <lazy-evaluation>`)."
 
 #: ../Doc/reference/executionmodel.rst:210
 msgid "The value of type aliases (:ref:`lazily evaluated <lazy-evaluation>`)."
@@ -478,7 +487,6 @@ msgstr ""
 "aparecer dentro de ámbitos de anotación puede introducir nuevos nombres."
 
 #: ../Doc/reference/executionmodel.rst:227
-#, fuzzy
 msgid ""
 "While annotation scopes have an internal name, that name is not reflected in "
 "the :term:`qualified name` of objects defined within the scope. Instead, "
@@ -486,8 +494,8 @@ msgid ""
 "were defined in the enclosing scope."
 msgstr ""
 "Aunque los ámbitos de anotación tienen un nombre interno, ese nombre no se "
-"refleja en el :term:`__qualname__ <qualified name>` de los objetos definidos "
-"dentro del ámbito. En su lugar, el :attr:`!__qualname__` de dichos objetos "
+"refleja en el :term:`qualified name` de los objetos definidos dentro del "
+"ámbito. En su lugar, el :attr:`~definition.__qualname__` de dichos objetos "
 "es como si el objeto estuviera definido en el ámbito que lo encierra."
 
 #: ../Doc/reference/executionmodel.rst:232
@@ -501,13 +509,14 @@ msgid ""
 "Annotation scopes are also used for type parameter defaults, as introduced "
 "by :pep:`696`."
 msgstr ""
+"También se usan ámbitos de anotación para parámetros de tipo "
+"predeterminados, introducido por :pep:`696`."
 
 #: ../Doc/reference/executionmodel.rst:242
 msgid "Lazy evaluation"
 msgstr "Evaluación perezosa"
 
 #: ../Doc/reference/executionmodel.rst:244
-#, fuzzy
 msgid ""
 "The values of type aliases created through the :keyword:`type` statement are "
 "*lazily evaluated*. The same applies to the bounds, constraints, and default "
@@ -516,12 +525,13 @@ msgid ""
 "or type variable is created. Instead, they are only evaluated when doing so "
 "is necessary to resolve an attribute access."
 msgstr ""
-"Los valores de los alias de tipo creados mediante la sentencia :keyword:"
-"`type` se *evalúan rápidamente*. Lo mismo se aplica a los límites y "
-"restricciones de las variables de tipo creadas mediante la sintaxis de "
-"parámetros :ref:`type <type-params>`. Esto significa que no se evalúan "
-"cuando se crea el alias de tipo o la variable de tipo. En su lugar, sólo se "
-"evalúan cuando es necesario para resolver el acceso a un atributo."
+"Los valores de los alias de tipo creados mediante la declaración :keyword:"
+"`type` *se evalúan de forma diferida*. Lo mismo se aplica a los límites, "
+"restricciones y valores predeterminados de las variables de tipo creadas "
+"mediante la :ref:`sintaxis de parámetros de tipo <type-params>`. Esto "
+"significa que no se evalúan cuando se crea el alias de tipo o la variable de "
+"tipo. En su lugar, sólo se evalúan cuando es necesario para resolver el "
+"acceso a un atributo."
 
 #: ../Doc/reference/executionmodel.rst:251
 msgid "Example:"
@@ -541,6 +551,17 @@ msgid ""
 "  ...\n"
 "ZeroDivisionError: division by zero"
 msgstr ""
+">>> type Alias = 1/0\n"
+">>> Alias.__value__\n"
+"Traceback (most recent call last):\n"
+"  ...\n"
+"ZeroDivisionError: division by zero\n"
+">>> def func[T: 1/0](): pass\n"
+">>> T = func.__type_params__[0]\n"
+">>> T.__bound__\n"
+"Traceback (most recent call last):\n"
+"  ...\n"
+"ZeroDivisionError: division by zero"
 
 #: ../Doc/reference/executionmodel.rst:267
 msgid ""
@@ -569,6 +590,11 @@ msgid ""
 "type Parenthesized = tuple[Literal[\"(\"], Expr, Literal[\")\"]]\n"
 "type Expr = SimpleExpr | tuple[SimpleExpr, Literal[\"+\", \"-\"], Expr]"
 msgstr ""
+"from typing import Literal\n"
+"\n"
+"type SimpleExpr = int | Parenthesized\n"
+"type Parenthesized = tuple[Literal[\"(\"], Expr, Literal[\")\"]]\n"
+"type Expr = SimpleExpr | tuple[SimpleExpr, Literal[\"+\", \"-\"], Expr]"
 
 #: ../Doc/reference/executionmodel.rst:281
 msgid ""
@@ -637,6 +663,11 @@ msgid ""
 "i = 42\n"
 "f()"
 msgstr ""
+"i = 10\n"
+"def f():\n"
+"    print(i)\n"
+"i = 42\n"
+"f()"
 
 #: ../Doc/reference/executionmodel.rst:326
 msgid ""
@@ -703,8 +734,8 @@ msgid ""
 "but it cannot repair the cause of the error and retry the failing operation "
 "(except by re-entering the offending piece of code from the top)."
 msgstr ""
-"Python usa el modelo de gestión de errores de \"terminación\" "
-"(\"*termination*\"): un gestor de excepción puede descubrir qué sucedió y "
+"Python usa el modelo de gestión de errores de \"terminación"
+"\" (\"*termination*\"): un gestor de excepción puede descubrir qué sucedió y "
 "continuar la ejecución en un nivel exterior, pero no puede reparar la causa "
 "del error y reintentar la operación que ha fallado (excepto que se reingrese "
 "al trozo de código fallido desde su inicio)."