();
+
+// generar un AccountId arbitrario
+AccountId::from([0x01; 32]);
+
+// generar un Hash arbitrario
+Hash::from([0x01; 32])
+
+// macro para tests que se espera que entren en panic.
+#[should_panic]
+```
\ No newline at end of file
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/intro/polkadot.md b/i18n/es/docusaurus-plugin-content-docs/current/intro/polkadot.md
index c51f55a46c..d0a78eccec 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/intro/polkadot.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/intro/polkadot.md
@@ -1,28 +1,26 @@
----
-title: Smart Contracts in Polkadot
-hide_title: true
-slug: /smart-contracts-polkadot
----
-
-
-
-
-# Smart Contracts in Polkadot
-
-One of the first questions we typically get when somebody learns about Substrate, Polkadot, or Kusama is when to develop a parachain vs. when to develop a smart contract.
-
-The distinction here is that in the context of Polkadot and Kusama a parachain leases a slot for a couple of months for up to two years. The deal with a lease is that the parachain gets a fixed slot for executing its business logic (typically referred to as its _state transition function_) and can persist its modified state in a block. In Substrate terminology this state transition function is called the chain's _runtime_.
-
-The distinction to other ecosystems here is that, in the context of Polkadot, parachains and smart contracts exist at different layers of the stack: _smart contracts sit on top of parachains_. Parachains would usually be described as layer-1 blockchains ‒ except for that they don't have to build their own security, are upgradable, and interoperable.
-
-It's noteworthy that a parachain's state transition function doesn't get further validated ‒ it's up to the parachain how it utilizes its slot time. The parachain already pre-paid for its slot when it won the slot auction on Polkadot or Kusama. This means the parachain can build its own (blockchain) world! For example, it can decide on how transaction fees are charged ‒ or even if transaction fees are charged at all. These options are crucial when building new or more user-friendly business models. Other distinguishing factors between parachains that we observe in the wild are differences in how governance works or the crypto-economics. There are some constraints on how the parachain can build its world though. Like physics in the real world it has to adhere to certain ground rules. For Polkadot and Kusama that's for example the consensus algorithm for the Relay Chain to communicate with the parachain. From those ground rules the advantages of Polkadot and Kusama emerge. Advantages like the aforementioned shared security, cross-chain communication, or guaranteed execution slot time.
-
-For smart contracts, on the other hand, an existing parachain has to include the `pallet-contracts` for users to deploy smart contracts. The deployed smart contract is always untrusted code. Anyone (or any program) that has tokens of the chain can upload a smart contract without requiring permission. Smart contracts allow _permissionless_ deployment of _untrusted_ programs on a blockchain. The `pallet-contracts` has to assume that these programs are adversarial, it has to put a number of safety pillars in place to ensure that the contract can not e.g. stall the chain or cause state corruption of other contracts. For `pallet-contracts` those safety pillars include mechanisms like gas metering or deposits for storing data on-chain.
-
-_To restate this important distinction: developing a parachain runtime is different from developing a smart contract ‒ a smart contract sits on top of a parachain_.
-
-The trade-off is that with a parachain one has the freedom to decide on (nearly) all the rules that make up the parachain. With a smart contract one is constrained by what the chain allows and the safety pillars that necessarily have to be in place. A smart contract can never be as fast as a native pallet built in the parachain runtime ‒ there is too much logic in between.
-A smart contract on the other hand has less friction for developing and deploying it. Developers don't have to take care of governance, crypto-economics, etc. One just needs a few tokens and can go on its merry way deploying a smart contract. It's as simple as that.
-
-![](/img/smart-contract-vs-parachain.png)
-
\ No newline at end of file
+---
+title: Smart Contracts en Polkadot
+hide_title: true
+slug: /smart-contracts-polkadot
+---
+
+
+
+# Smart Contracts en Polkadot
+
+Una de las primeras preguntas que normalmente recibimos cuando alguien aprende sobre Substrate, Polkadot, o Kusama es cuándo desarrollar una parachain vs. cuándo desarrollar un smart contract.
+
+La diferencia aquí es que en el contexto de Polkadot y Kusama una parachain alquila un espacio que abarca desde un par de meses hasta dos años. El acuerdo con un alquiler es que la parachain obtiene un slot fijo para ejecutar su lógica de negocio (normalmente conocida como su _función de transición de estado_) y puede persistir su estado modificado en un bloque. En terminología de Substrate esta función de transición de estado se denomina _runtime_.
+
+La diferencia con otros ecosistemas aquí es que, en el contexto de Polkadot, parachains y smart contracts existen en diferentes niveles del stack: _los smart contracts se ubican por encima de las parachains_. Las parachains serían generalmente descriptas como blockchains de nivel 1 - excepto por el hecho de que no tienen que construir su propia seguridad, son actualizables e interoperables.
+
+Vale la pena destacar que una función de transición de estado de una parachain no se valida más - depende de la parachain cómo utiliza su tiempo de slot. La parachain ya pagó por adelantado por su slot cuando ganó la subasta en Polkadot o Kusama. Eso significa que la parachain puede construir su propio mundo (de blockchain)! Por ejemplo, puede decidir cómo se cobran las comisiones por transacción - incluso si dichas comisiones se cobran o no. Estas opciones son cruciales cuando se construyen modelos de negocio nuevos o más accesibles para el usuario. Otros factores distintivos entre parachains que observamos en estado natural son diferencias en cómo funciona la gobernanza o la cripto economía. Sin embargo hay algunas limitaciones en cómo la parachain puede construir su mundo. Como la física en el mundo real, tiene que adherir a ciertas reglas básicas. Para Polkadot y Kusama eso es por ejemplo el algoritmo de consenso para que la Relay Chain se comunique con la parachain. Desde esas reglas básicas emergen las ventajas para Polkadot y Kusama. Ventajas como la seguridad compartida, comunicación cross-chain o ejecución de tiempo de slot garantizada.
+
+Para los smart contracts, por otro lado, una parachain existente tiene que incluir el `pallet-contracts` para que los usuarios deployen smart contracts. El smart contract deployado siempre es un código untrusted (de no confianza). Cualquiera (o cualquier programa) que tiene tokens de la chain puede subir un smart contract sin requerir permiso. Los smart contracts permiten deployar de manera _permissionless_ programas _untrusted_ en una blockchain. El `pallet-contracts` debe asumir que estos programas son contradictorios, debe ubicar un número de pilares de seguridad en su lugar para asegurar que el contrato no puede, por ejemplo, paralizar la chain o causar la corrupción del estado de otros contratos. Para el `pallet-contracts` esos pilares de seguridad incluyen mecanismos como la medición de gas o depósitos para almacenar datos on-chain.
+
+ _Para reafirmar esta distinción importante: desarrollar un runtime de parachain es diferente a desarrollar un smart contract ‒ un smart contract se sitúa por encima de una parachain_.
+
+La contrapartida es que con una parachain uno tiene la libertad de decidir sobre (casi) todas las reglas que constituyen la parachain. Con un smart contract uno está limitado por lo que la chain permite y los pilares de seguridad que necesariamente deben estar en su lugar. Un smart contract nunca puede ser tan rápido como un pallet nativo incluido en el runtime de la parachain - hay demasiada lógica involucrada.
+Un smart contract, por otro lado, tiene menos fricción para desarrollarlo y deployarlo. Los desarrolladores no tienen que ocuparse de la gobernanza, crypto economía, etc. Uno sólo necesita unos pocos tokens y puede simplemente seguir adelante deployando un smart contract. Es tan simple como eso.
+
+![](/img/smart-contract-vs-parachain.png)
\ No newline at end of file