From 58bc3120d66706f9779867385ef2b399240efb0a Mon Sep 17 00:00:00 2001 From: codingsh Date: Mon, 29 Jan 2024 14:51:15 +0000 Subject: [PATCH] chore(editor): fixed build types --- components/Editor/index.tsx | 7 -- components/KBar/Results.tsx | 28 ++--- docs/opcodes/01.mdx | 11 +- docs/opcodes/02.mdx | 17 +-- docs/opcodes/03.mdx | 11 +- docs/opcodes/04.mdx | 11 +- docs/opcodes/05.mdx | 11 +- docs/opcodes/06.mdx | 11 +- docs/opcodes/07.mdx | 17 +-- docs/opcodes/08.mdx | 13 +-- docs/opcodes/09.mdx | 13 +-- docs/opcodes/0A.mdx | 11 +- docs/opcodes/0B.mdx | 11 +- docs/opcodes/10.mdx | 11 +- docs/opcodes/11.mdx | 11 +- docs/opcodes/12.mdx | 11 +- docs/opcodes/13.mdx | 11 +- docs/opcodes/14.mdx | 11 +- docs/opcodes/15.mdx | 9 +- docs/opcodes/16.mdx | 11 +- docs/opcodes/17.mdx | 11 +- docs/opcodes/18.mdx | 11 +- docs/opcodes/19.mdx | 9 +- docs/opcodes/1A.mdx | 11 +- docs/opcodes/1B.mdx | 19 ++-- docs/opcodes/1C.mdx | 11 +- docs/opcodes/1D.mdx | 19 ++-- docs/opcodes/20.mdx | 17 +-- docs/opcodes/30.mdx | 9 +- docs/opcodes/31.mdx | 7 +- docs/opcodes/32.mdx | 9 +- docs/opcodes/33.mdx | 9 +- docs/opcodes/34.mdx | 9 +- docs/opcodes/35.mdx | 19 ++-- docs/opcodes/36.mdx | 13 +-- docs/opcodes/37.mdx | 29 ++--- docs/opcodes/38.mdx | 9 +- docs/opcodes/39.mdx | 29 ++--- docs/opcodes/3A.mdx | 9 +- docs/opcodes/3B.mdx | 9 +- docs/opcodes/3C.mdx | 33 +++--- docs/opcodes/3D.mdx | 9 +- docs/opcodes/3E.mdx | 29 ++--- docs/opcodes/3F.mdx | 7 +- docs/opcodes/40.mdx | 7 +- docs/opcodes/41.mdx | 9 +- docs/opcodes/42.mdx | 9 +- docs/opcodes/43.mdx | 9 +- docs/opcodes/44.mdx | 9 +- docs/opcodes/44_merge.mdx | 11 +- docs/opcodes/45.mdx | 9 +- docs/opcodes/46.mdx | 19 ++-- docs/opcodes/47.mdx | 9 +- docs/opcodes/48.mdx | 9 +- docs/opcodes/50.mdx | 9 +- docs/opcodes/51.mdx | 13 +-- docs/opcodes/52.mdx | 23 ++-- docs/opcodes/53.mdx | 23 ++-- docs/opcodes/54.mdx | 15 +-- docs/opcodes/55.mdx | 27 ++--- docs/opcodes/55/berlin.mdx | 30 +++--- docs/opcodes/55/constantinople.mdx | 22 ++-- docs/opcodes/55/istanbul.mdx | 22 ++-- docs/opcodes/55/petersburg.mdx | 2 +- docs/opcodes/56.mdx | 3 +- docs/opcodes/57.mdx | 3 +- docs/opcodes/58.mdx | 3 +- docs/opcodes/59.mdx | 3 +- docs/opcodes/5A.mdx | 3 +- docs/opcodes/5F.mdx | 15 +-- docs/opcodes/60.mdx | 17 +-- docs/opcodes/61.mdx | 17 +-- docs/opcodes/62.mdx | 17 +-- docs/opcodes/63.mdx | 17 +-- docs/opcodes/64.mdx | 17 +-- docs/opcodes/65.mdx | 17 +-- docs/opcodes/66.mdx | 17 +-- docs/opcodes/67.mdx | 17 +-- docs/opcodes/68.mdx | 17 +-- docs/opcodes/69.mdx | 17 +-- docs/opcodes/6A.mdx | 17 +-- docs/opcodes/6B.mdx | 17 +-- docs/opcodes/6C.mdx | 17 +-- docs/opcodes/6D.mdx | 17 +-- docs/opcodes/6E.mdx | 17 +-- docs/opcodes/6F.mdx | 17 +-- docs/opcodes/70.mdx | 17 +-- docs/opcodes/71.mdx | 17 +-- docs/opcodes/72.mdx | 17 +-- docs/opcodes/73.mdx | 17 +-- docs/opcodes/74.mdx | 17 +-- docs/opcodes/75.mdx | 17 +-- docs/opcodes/76.mdx | 17 +-- docs/opcodes/77.mdx | 17 +-- docs/opcodes/78.mdx | 17 +-- docs/opcodes/79.mdx | 17 +-- docs/opcodes/7A.mdx | 17 +-- docs/opcodes/7B.mdx | 17 +-- docs/opcodes/7C.mdx | 17 +-- docs/opcodes/7D.mdx | 17 +-- docs/opcodes/7E.mdx | 17 +-- docs/opcodes/7F.mdx | 17 +-- docs/opcodes/80.mdx | 11 +- docs/opcodes/81.mdx | 13 +-- docs/opcodes/82.mdx | 15 +-- docs/opcodes/83.mdx | 17 +-- docs/opcodes/84.mdx | 19 ++-- docs/opcodes/85.mdx | 21 ++-- docs/opcodes/86.mdx | 23 ++-- docs/opcodes/87.mdx | 25 ++--- docs/opcodes/88.mdx | 27 ++--- docs/opcodes/89.mdx | 29 ++--- docs/opcodes/8A.mdx | 31 +++--- docs/opcodes/8B.mdx | 33 +++--- docs/opcodes/8C.mdx | 35 ++++--- docs/opcodes/8D.mdx | 37 +++---- docs/opcodes/8E.mdx | 39 +++---- docs/opcodes/8F.mdx | 41 ++++---- docs/opcodes/90.mdx | 11 +- docs/opcodes/91.mdx | 13 +-- docs/opcodes/92.mdx | 15 +-- docs/opcodes/93.mdx | 17 +-- docs/opcodes/94.mdx | 19 ++-- docs/opcodes/95.mdx | 21 ++-- docs/opcodes/96.mdx | 23 ++-- docs/opcodes/97.mdx | 25 ++--- docs/opcodes/98.mdx | 27 ++--- docs/opcodes/99.mdx | 29 ++--- docs/opcodes/9A.mdx | 31 +++--- docs/opcodes/9B.mdx | 33 +++--- docs/opcodes/9C.mdx | 35 ++++--- docs/opcodes/9D.mdx | 37 +++---- docs/opcodes/9E.mdx | 39 +++---- docs/opcodes/9F.mdx | 41 ++++---- docs/opcodes/A0.mdx | 3 +- docs/opcodes/A1.mdx | 3 +- docs/opcodes/A2.mdx | 3 +- docs/opcodes/A3.mdx | 3 +- docs/opcodes/A4.mdx | 3 +- docs/opcodes/F0.mdx | 2 +- docs/opcodes/F1.mdx | 3 +- docs/opcodes/F1/berlin.mdx | 9 +- docs/opcodes/F1/homestead.mdx | 7 +- docs/opcodes/F1/spuriousDragon.mdx | 7 +- docs/opcodes/F2.mdx | 3 +- docs/opcodes/F2/berlin.mdx | 7 +- docs/opcodes/F2/homestead.mdx | 5 +- docs/opcodes/F3.mdx | 19 ++-- docs/opcodes/F4.mdx | 3 +- docs/opcodes/F4/berlin.mdx | 5 +- docs/opcodes/F4/homestead.mdx | 3 +- docs/opcodes/F5.mdx | 6 +- docs/opcodes/FA.mdx | 3 +- docs/opcodes/FA/berlin.mdx | 5 +- docs/opcodes/FA/homestead.mdx | 3 +- docs/opcodes/FD.mdx | 19 ++-- docs/opcodes/FF.mdx | 3 +- docs/precompiled/0x01.mdx | 26 ++--- docs/precompiled/0x02.mdx | 14 +-- docs/precompiled/0x03.mdx | 14 +-- docs/precompiled/0x04.mdx | 14 +-- docs/precompiled/0x05.mdx | 36 +++---- docs/precompiled/0x06.mdx | 32 +++--- docs/precompiled/0x07.mdx | 28 ++--- docs/precompiled/0x08.mdx | 52 ++++----- docs/precompiled/0x09.mdx | 34 +++--- docs/transactions/T0/T0.mdx | 2 - lib/solcWorker.js | 4 +- lib/useActions.tsx | 2 +- styles/globals.css | 2 +- transactions.json | 163 ++++++++++++++--------------- tsconfig.json | 16 +-- 172 files changed, 1486 insertions(+), 1365 deletions(-) diff --git a/components/Editor/index.tsx b/components/Editor/index.tsx index 94753726..7cbc3ad2 100644 --- a/components/Editor/index.tsx +++ b/components/Editor/index.tsx @@ -252,13 +252,6 @@ const Editor = ({ readOnly = false }: Props) => { // eslint-disable-next-line react-hooks/exhaustive-deps }, []) - useEffect(() => { - if (solcWorkerRef && solcWorkerRef.current) { - // @ts-ignore change the worker message, when value and args changed. - solcWorkerRef.current?.onmessage = handleWorkerMessage - } - }, [solcWorkerRef, handleWorkerMessage]) - useEffect(() => { if (deployedContractAddress) { log(`Contract deployed at address: ${deployedContractAddress}`) diff --git a/components/KBar/Results.tsx b/components/KBar/Results.tsx index 1fb705c5..2fab0edd 100644 --- a/components/KBar/Results.tsx +++ b/components/KBar/Results.tsx @@ -1,39 +1,29 @@ import { useMemo } from 'react' import { KBarResults, useMatches } from 'kbar' -import type { ActionImpl } from 'kbar' import ResultItem from './ResultItem' const NO_GROUP = 'none' const Results = () => { - const { results } = useMatches() + const groups = useMatches() const flattened = useMemo(() => { - const flattenActions = (actions: (string | ActionImpl)[]) => { - return actions.reduce((acc: any[], curr: string | ActionImpl) => { - if (typeof curr === 'string') { - acc.push(curr) - } else { - acc.push(curr) - - if (curr.children && curr.children.length > 0) { - acc.push(...flattenActions(curr.children)) - } - } + if (groups && Array.isArray(groups)) { + return groups.reduce((acc: any, curr: any) => { + acc.push(curr.name) + acc.push(...curr.actions) return acc }, []) + } else { + return [] } - - return flattenActions(results) - }, [results]) + }, [groups]) return ( typeof i !== 'string' || i !== NO_GROUP, - )} + items={flattened.filter((i: string) => i !== NO_GROUP)} onRender={({ item, active }) => typeof item === 'string' ? (
diff --git a/docs/opcodes/01.mdx b/docs/opcodes/01.mdx index 08cddab2..03e2bd94 100644 --- a/docs/opcodes/01.mdx +++ b/docs/opcodes/01.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `20` | * | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `0` | -| `2` | `10` | | * | `2` | `1` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | -------------------------------------------------------------------: | -----: | +| `1` | `10` | `20` | \* | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `0` | +| `2` | `10` | | \* | `2` | `1` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1z0z0twwy2v32%200xsssszt'~uuuuzv1%201y%2F%2F%20Example%20w%5CnvwPUSHuFFtwADDs~~%01stuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/02.mdx b/docs/opcodes/02.mdx index 6edc192b..6192e807 100644 --- a/docs/opcodes/02.mdx +++ b/docs/opcodes/02.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,20 +16,21 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | -|--:|------:|-------:| -| `1` | `10` | `100` | -| `2` | `10` | | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `10` | `100` | +| `2` | `10` | | -| * | Input | Output | -|--:|------:|-------:| +| \* | Input | Output | +| --: | -------------------------------------------------------------------: | -------------------------------------------------------------------: | | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE` | -| `2` | `2` | | +| `2` | `2` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1z10z10twwy2v32%200xssssz2t'~uuuuzv1%20y%2F%2F%20Example%20w%5CnvwPUSHuFFtwMULs~~%01stuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/03.mdx b/docs/opcodes/03.mdx index 65c44127..8b1bd197 100644 --- a/docs/opcodes/03.mdx +++ b/docs/opcodes/03.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `0` | * | `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| `2` | `10` | | * | `2` | `1` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -------------------------------------------------------------------: | +| `1` | `10` | `0` | \* | `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| `2` | `10` | | \* | `2` | `1` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~10~1wyyz2~1~w'~yPUSH1%20z%2F%2F%20Example%20y%5Cnw0ySUB%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/04.mdx b/docs/opcodes/04.mdx index 3a658ab2..fa5fd8e7 100644 --- a/docs/opcodes/04.mdx +++ b/docs/opcodes/04.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `1` | * | `1` | `1` | `0` | -| `2` | `10` | | * | `2` | `2` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `10` | `1` | \* | `1` | `1` | `0` | +| `2` | `10` | | \* | `2` | `2` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~10~10wyyz2~2~1w'~yPUSH1%20z%2F%2F%20Example%20y%5CnwyDIV%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/05.mdx b/docs/opcodes/05.mdx index c4f48023..ea8abbe5 100644 --- a/docs/opcodes/05.mdx +++ b/docs/opcodes/05.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,15 +20,16 @@ All values are treated as two’s complement signed 256-bit integers. Note the o ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `1` | * | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE` | `2` | -| `2` | `10` | | * | `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | -------------------------------------------------------------------: | -----: | +| `1` | `10` | `1` | \* | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE` | `2` | +| `2` | `10` | | \* | `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1vvszzy2wrFwrEs'~uuuz%5Cny%2F%2F%20Example%20wt32%200xr~vt1%2010uFFFtzPUSHszSDIVr~~~%01rstuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/06.mdx b/docs/opcodes/06.mdx index 921af2a3..1d9a315b 100644 --- a/docs/opcodes/06.mdx +++ b/docs/opcodes/06.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `1` | * | `1` | `17` | `2` | -| `2` | `3` | | * | `2` | `5` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `10` | `1` | \* | `1` | `17` | `2` | +| `2` | `3` | | \* | `2` | `5` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~3~10wyyz2~5~17w'~yPUSH1%20z%2F%2F%20Example%20y%5CnwyMOD%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/07.mdx b/docs/opcodes/07.mdx index 9f6977c0..a6b5b76f 100644 --- a/docs/opcodes/07.mdx +++ b/docs/opcodes/07.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,20 +20,21 @@ All values are treated as two’s complement signed 256-bit integers. Note the o ## Examples -| * | Input | Output | -|--:|------:|-------:| -| `1` | `10` | `1` | -| `2` | `3` | | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `10` | `1` | +| `2` | `3` | | -| * | Input | Output | -|--:|------:|-------:| +| \* | Input | Output | +| --: | -------------------------------------------------------------------: | -------------------------------------------------------------------: | | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE` | -| `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD` | | +| `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1s3s10tzzy2wrDwr8t'~uuuz%5Cny%2F%2F%20Example%20wv32%200xr~vzPUSHuFFFtzSMODsv1%20r~~~%01rstuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/08.mdx b/docs/opcodes/08.mdx index 4f82f6e3..4341ca30 100644 --- a/docs/opcodes/08.mdx +++ b/docs/opcodes/08.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -21,16 +21,17 @@ All intermediate calculations of this operation are not subject to the 2256 ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `4` | * | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `1` | -| `2` | `10` | | * | `2` | `2` | | -| `3` | `8` | | * | `2` | `2` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | -------------------------------------------------------------------: | -----: | +| `1` | `10` | `4` | \* | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `1` | +| `2` | `10` | | \* | `2` | `2` | | +| `3` | `8` | | \* | `2` | `2` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1z8z10z10vwwy2z2z2u32%200xssssv'~ttttzu1%20y%2F%2F%20Example%20w%5CnvwADDMODuwPUSHtFFs~~%01stuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/09.mdx b/docs/opcodes/09.mdx index ad2c66e6..3f553557 100644 --- a/docs/opcodes/09.mdx +++ b/docs/opcodes/09.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -21,16 +21,17 @@ All intermediate calculations of this operation are not subject to the 2256 ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `4` | * | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `9` | -| `2` | `10` | | * | `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | | -| `3` | `8` | | * | `3` | `12` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | -------------------------------------------------------------------: | -----: | +| `1` | `10` | `4` | \* | `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `9` | +| `2` | `10` | | \* | `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | | +| `3` | `8` | | \* | `3` | `12` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1v8v10v10twwy2v12usust'~rrrrzwPUSHy%2F%2F%20Example%20w%5Cnvz1%20uz32%200xstwMULMODs~~~~rFF%01rstuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/0A.mdx b/docs/opcodes/0A.mdx index 0f18a64d..cfa7d29d 100644 --- a/docs/opcodes/0A.mdx +++ b/docs/opcodes/0A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `100` | * | `1` | `2` | `4` | -| `2` | `2` | | * | `2` | `2` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `10` | `100` | \* | `1` | `2` | `4` | +| `2` | `2` | | \* | `2` | `2` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~2~10wyyz2~2~2w'~yPUSH1%20z%2F%2F%20Example%20y%5CnwyEXP%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/0B.mdx b/docs/opcodes/0B.mdx index b5e474bb..93b8fa69 100644 --- a/docs/opcodes/0B.mdx +++ b/docs/opcodes/0B.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stop and Arithmetic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Stop and Arithmetic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | * | `1` | `0` | `0x7F` | -| `2` | `0xFF` | | * | `2` | `0x7F` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | -----: | -------------------------------------------------------------------: | --: | --: | -----: | -----: | +| `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | \* | `1` | `0` | `0x7F` | +| `2` | `0xFF` | | \* | `2` | `0x7F` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~xFywwz2~x7y'~wPUSH1%200z%2F%2F%20Example%20yF~wSIGNEXTENDw%5Cn%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/10.mdx b/docs/opcodes/10.mdx index fde2dfa4..14124f21 100644 --- a/docs/opcodes/10.mdx +++ b/docs/opcodes/10.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `9` | `1` | * | `1` | `10` | `0` | -| `2` | `10` | | * | `2` | `10` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `9` | `1` | \* | `1` | `10` | `0` | +| `2` | `10` | | \* | `2` | `10` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1w~9yLTyyz2wwyLT'~yPUSH1%20z%2F%2F%20Example%20y%5Cnw~10%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/11.mdx b/docs/opcodes/11.mdx index 75b0fd3c..9072c472 100644 --- a/docs/opcodes/11.mdx +++ b/docs/opcodes/11.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `1` | * | `1` | `10` | `0` | -| `2` | `9` | | * | `2` | `10` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `10` | `1` | \* | `1` | `10` | `0` | +| `2` | `9` | | \* | `2` | `10` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~9wyyz2~10w'~yPUSH1%20z%2F%2F%20Example%20y%5Cnw~10yGT%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/12.mdx b/docs/opcodes/12.mdx index 5e535bf9..07f745dd 100644 --- a/docs/opcodes/12.mdx +++ b/docs/opcodes/12.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,15 +20,16 @@ All values are treated as two’s complement signed 256-bit integers. ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `1` | * | `1` | `10` | `0` | -| `2` | `0` | | * | `2` | `10` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | -------------------------------------------------------------------: | -----: | --: | --: | ----: | -----: | +| `1` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | `1` | \* | `1` | `10` | `0` | +| `2` | `0` | | \* | `2` | `10` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1z9v32%200xsssstwwy2z10z10t'~uuuuzv1%20y%2F%2F%20Example%20w%5CnvwPUSHuFFtwSLTs~~%01stuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/13.mdx b/docs/opcodes/13.mdx index 1590bfac..a2481298 100644 --- a/docs/opcodes/13.mdx +++ b/docs/opcodes/13.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,15 +20,16 @@ All values are treated as two’s complement signed 256-bit integers. ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0` | `1` | * | `1` | `10` | `0` | -| `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | | * | `2` | `10` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | -------------------------------------------------------------------: | -----: | --: | --: | ----: | -----: | +| `1` | `0` | `1` | \* | `1` | `10` | `0` | +| `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | | \* | `2` | `10` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1v32%200xssssz9twwy2z10z10t'~uuuuzv1%20y%2F%2F%20Example%20w%5CnvwPUSHuFFtwSGTs~~%01stuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/14.mdx b/docs/opcodes/14.mdx index adea33f0..ba2cac97 100644 --- a/docs/opcodes/14.mdx +++ b/docs/opcodes/14.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `1` | * | `1` | `10` | `0` | -| `2` | `10` | | * | `2` | `5` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `10` | `1` | \* | `1` | `10` | `0` | +| `2` | `10` | | \* | `2` | `5` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~10wyyz2~5w'~yPUSH1%20z%2F%2F%20Example%20y%5Cnw~10yEQ%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/15.mdx b/docs/opcodes/15.mdx index ac351f99..a6f18ecf 100644 --- a/docs/opcodes/15.mdx +++ b/docs/opcodes/15.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,14 +15,15 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `10` | `0` | * | `1` | `0` | `1` | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `10` | `0` | \* | `1` | `0` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~1y1wzz~2yw'~%2F%2F%20Example%20z%5CnyzPUSH1%20w0zISZERO%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/16.mdx b/docs/opcodes/16.mdx index 55a0b1dc..d60e253b 100644 --- a/docs/opcodes/16.mdx +++ b/docs/opcodes/16.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0xF` | `0xF` | * | `1` | `0xFF` | `0` | -| `2` | `0xF` | | * | `2` | `0` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | -----: | -----: | +| `1` | `0xF` | `0xF` | \* | `1` | `0xFF` | `0` | +| `2` | `0xF` | | \* | `2` | `0` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~xF~xwyyz2~~xFw'~yPUSH1%200z%2F%2F%20Example%20y%5CnwFyAND%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/17.mdx b/docs/opcodes/17.mdx index b6751d4d..b52c3408 100644 --- a/docs/opcodes/17.mdx +++ b/docs/opcodes/17.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0xF0` | `0xFF` | * | `1` | `0xFF` | `0xFF` | -| `2` | `0xF` | | * | `2` | `0xFF` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | -----: | -----: | --: | --: | -----: | -----: | +| `1` | `0xF0` | `0xFF` | \* | `1` | `0xFF` | `0xFF` | +| `2` | `0xF` | | \* | `2` | `0xFF` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~~0yORyyz2~F~FyOR'~yPUSH1%200xFz%2F%2F%20Example%20y%5Cn%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/18.mdx b/docs/opcodes/18.mdx index 6b6f2460..6a2a9b7a 100644 --- a/docs/opcodes/18.mdx +++ b/docs/opcodes/18.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0xF0` | `0xFF` | * | `1` | `0xFF` | `0` | -| `2` | `0xF` | | * | `2` | `0xFF` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | -----: | -----: | --: | --: | -----: | -----: | +| `1` | `0xF0` | `0xFF` | \* | `1` | `0xFF` | `0` | +| `2` | `0xF` | | \* | `2` | `0xFF` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~~0wyyz2~F~Fw'~yPUSH1%200xFz%2F%2F%20Example%20y%5CnwyXOR%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/19.mdx b/docs/opcodes/19.mdx index 906f37fa..cbe2ce44 100644 --- a/docs/opcodes/19.mdx +++ b/docs/opcodes/19.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,14 +15,15 @@ group: Comparison & Bitwise Logic Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------------: | +| `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='PUSH1%200%5CnNOT'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/1A.mdx b/docs/opcodes/1A.mdx index 955beea7..8627d667 100644 --- a/docs/opcodes/1A.mdx +++ b/docs/opcodes/1A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,15 +16,16 @@ group: Comparison & Bitwise Logic Operations ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `31` | `0xFF` | * | `1` | `30` | `0xFF` | -| `2` | `0xFF` | | * | `2` | `0xFF00` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | -----: | -----: | --: | --: | -------: | -----: | +| `1` | `31` | `0xFF` | \* | `1` | `30` | `0xFF` | +| `2` | `0xFF` | | \* | `2` | `0xFF00` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~0xFF~31vyyz2w2%200xFF00~30v'~w1%20z%2F%2F%20Example%20y%5CnwyPUSHvyBYTE%01vwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/1B.mdx b/docs/opcodes/1B.mdx index 681e5d2b..26e139dc 100644 --- a/docs/opcodes/1B.mdx +++ b/docs/opcodes/1B.mdx @@ -3,7 +3,7 @@ fork: Constantinople group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,20 +20,21 @@ Shift the bits towards the most significant one. The bits moved after the 256th ## Examples -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `1` | | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `1` | | -| * | Input | Output | -|--:|------:|-------:| -| `1` | `4` | `0xF000000000000000000000000000000000000000000000000000000000000000` | -| `2` | `0xFF00000000000000000000000000000000000000000000000000000000000000` | | +| \* | Input | Output | +| --: | -------------------------------------------------------------------: | -------------------------------------------------------------------: | +| `1` | `4` | `0xF000000000000000000000000000000000000000000000000000000000000000` | +| `2` | `0xFF00000000000000000000000000000000000000000000000000000000000000` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1z1z1swwy2v32%200xFFuuuuutz4s'~tttzv1%20y%2F%2F%20Example%20w%5CnvwPUSHu~~t00swSHL%01stuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/1C.mdx b/docs/opcodes/1C.mdx index ea8d307d..6130ba7b 100644 --- a/docs/opcodes/1C.mdx +++ b/docs/opcodes/1C.mdx @@ -3,7 +3,7 @@ fork: Constantinople group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,15 +20,16 @@ Shift the bits towards the least significant one. The bits moved before the firs ## Examples -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `1` | `1` | * | `1` | `4` | `0xF` | -| `2` | `2` | | * | `2` | `0xFF` | | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | -----: | -----: | +| `1` | `1` | `1` | \* | `1` | `4` | `0xF` | +| `2` | `2` | | \* | `2` | `0xFF` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1~2~1wyyz2~0xFF~4w'~yPUSH1%20z%2F%2F%20Example%20y%5CnwySHR%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/1D.mdx b/docs/opcodes/1D.mdx index 95200d20..81f30509 100644 --- a/docs/opcodes/1D.mdx +++ b/docs/opcodes/1D.mdx @@ -3,7 +3,7 @@ fork: Constantinople group: Comparison & Bitwise Logic Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,20 +20,21 @@ Shift the bits towards the least significant one. The bits moved before the firs ## Examples -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `1` | -| `2` | `2` | | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `1` | +| `2` | `2` | | -| * | Input | Output | -|--:|------:|-------:| -| `1` | `4` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0` | | +| \* | Input | Output | +| --: | -------------------------------------------------------------------: | -------------------------------------------------------------------: | +| `1` | `4` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| `2` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='y1z2z1twwy2v32%200xuuu0z4t'~FFFFFFFzv1%20y%2F%2F%20Example%20w%5CnvwPUSHu~~~twSAR%01tuvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/20.mdx b/docs/opcodes/20.mdx index 3222795b..1a575cf5 100644 --- a/docs/opcodes/20.mdx +++ b/docs/opcodes/20.mdx @@ -3,7 +3,7 @@ fork: Frontier group: SHA3 --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,19 +16,20 @@ group: SHA3 ## Example -| Memory | -|-------:| -| `0xFFFFFFFF`| +| Memory | +| -----------: | +| `0xFFFFFFFF` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `0x29045A592007D0C246EF02C2223570DA9522D0CF0F73282C79A1BC8F0BB2C238` | -| `2` | `4` | | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------------: | +| `1` | `0` | `0x29045A592007D0C246EF02C2223570DA9522D0CF0F73282C79A1BC8F0BB2C238` | +| `2` | `4` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='sPutkrequired%20valugin%20memoryj32%200xFFFFFFFFffffz0wMSTOREwwsCallkopcodez4z0wSHA3'~0000000zj1%20w%5Cns%2F%2F%20k%20thgjwPUSHge%20f~~%01fgjkswz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/30.mdx b/docs/opcodes/30.mdx index 3b4c26f6..a8617618 100644 --- a/docs/opcodes/30.mdx +++ b/docs/opcodes/30.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x9bbfed6889322e016e0a02ee459d306fc19545d8` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------: | +| `1` | | `0x9bbfed6889322e016e0a02ee459d306fc19545d8` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ADDRESS'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/31.mdx b/docs/opcodes/31.mdx index 59e5f183..62eed2ec 100644 --- a/docs/opcodes/31.mdx +++ b/docs/opcodes/31.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,8 +15,8 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| +| \* | Input | Output | +| --: | -------------------------------------------: | -------: | | `1` | `0x9bbfed6889322e016e0a02ee459d306fc19545d8` | `125985` | [Reproduce in playground](/playground?callValue=125985&unit=Wei&codeType=Mnemonic&code='%2F%2F%20Read%20current%20contract%20balance%5CnADDRESS%5CnBALANCE'_). @@ -24,5 +24,6 @@ group: Environmental Information ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/32.mdx b/docs/opcodes/32.mdx index 2f690980..ddec2518 100644 --- a/docs/opcodes/32.mdx +++ b/docs/opcodes/32.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0xbe862ad9abfe6f22bcb087716c7d89a26051f74c` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------: | +| `1` | | `0xbe862ad9abfe6f22bcb087716c7d89a26051f74c` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ORIGIN'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/33.mdx b/docs/opcodes/33.mdx index 9ae9ea33..feb1ab39 100644 --- a/docs/opcodes/33.mdx +++ b/docs/opcodes/33.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0xbe862ad9abfe6f22bcb087716c7d89a26051f74c` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------: | +| `1` | | `0xbe862ad9abfe6f22bcb087716c7d89a26051f74c` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='CALLER'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/34.mdx b/docs/opcodes/34.mdx index 24fe3c1e..517d467d 100644 --- a/docs/opcodes/34.mdx +++ b/docs/opcodes/34.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `123456789` | +| \* | Input | Output | +| --: | ----: | ----------: | +| `1` | | `123456789` | [Reproduce in playground](/playground?callValue=123456789&unit=Wei&codeType=Mnemonic&code='CALLVALUE'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/35.mdx b/docs/opcodes/35.mdx index f95c85d2..c415cdb2 100644 --- a/docs/opcodes/35.mdx +++ b/docs/opcodes/35.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,22 +15,23 @@ group: Environmental Information ## Examples -| Calldata | -|---------| +| Calldata | +| -------------------------------------------------------------------- | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------------: | +| `1` | `0` | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | `31` | `0xFF00000000000000000000000000000000000000000000000000000000000000` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------------: | +| `1` | `31` | `0xFF00000000000000000000000000000000000000000000000000000000000000` | [Reproduce in playground](/playground?unit=Wei&callData=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF&codeType=Mnemonic&code='~1w0yzz~2w31y'~%2F%2F%20Example%20z%5CnyzCALLDATALOADwzPUSH1%20%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/36.mdx b/docs/opcodes/36.mdx index 6711ffe2..388809f9 100644 --- a/docs/opcodes/36.mdx +++ b/docs/opcodes/36.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -12,17 +12,18 @@ group: Environmental Information ## Example | Calldata | -|---------| -| `0xFF` | +| -------- | +| `0xFF` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `1` | [Reproduce in playground](/playground?unit=Wei&callData=0xFF&codeType=Mnemonic&code='CALLDATASIZE'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/37.mdx b/docs/opcodes/37.mdx index de439d80..f64066df 100644 --- a/docs/opcodes/37.mdx +++ b/docs/opcodes/37.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -17,26 +17,26 @@ For out of bound bytes, 0s will be copied. ## Examples -| Calldata | -|---------:| +| Calldata | +| -------------------------------------------------------------------: | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0` | * | `1` | `0` | -| `2` | `0` | * | `2` | `31` | -| `3` | `32` | * | `3` | `8` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | ------: | --: | --: | ------: | +| `1` | `0` | \* | `1` | `0` | +| `2` | `0` | \* | `2` | `31` | +| `3` | `32` | \* | `3` | `8` | | Memory before | -|-------------:| -| `0` | +| ------------: | +| `0` | -| Memory after input 1 | -|---------------------:| +| Memory after input 1 | +| -------------------------------------------------------------------: | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| Memory after input 1 then 2 | -|----------------------------:| +| Memory after input 1 then 2 | +| -------------------------------------------------------------------: | | `0xFF00000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&callData=0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF&codeType=Mnemonic&code='z1~32~0ywwz2~8~31y'~wPUSH1%20z%2F%2F%20Example%20y~0wCALLDATACOPYw%5Cn%01wyz~_). @@ -44,5 +44,6 @@ For out of bound bytes, 0s will be copied. ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/38.mdx b/docs/opcodes/38.mdx index 521e1709..84a40e80 100644 --- a/docs/opcodes/38.mdx +++ b/docs/opcodes/38.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -15,14 +15,15 @@ Each instruction occupies one byte. In the case of a [PUSH](/#60) instruction, t ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `32` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `32` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='%2F%2F%20Add%20som~instructions%20to%20increas~th~cod~sizeyPUSH29%200yPOPyyCODESIZE'~e%20y%5Cn%01y~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/39.mdx b/docs/opcodes/39.mdx index 421d2da9..207a3973 100644 --- a/docs/opcodes/39.mdx +++ b/docs/opcodes/39.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -17,26 +17,26 @@ For out of bound bytes, 0s will be copied. ## Examples -| Code | -|-----:| +| Code | +| -------------------------------------------------------------------: | | `0x7DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F` | -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0` | * | `1` | `0` | -| `2` | `0` | * | `2` | `31` | -| `3` | `32` | * | `3` | `8` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | ------: | --: | --: | ------: | +| `1` | `0` | \* | `1` | `0` | +| `2` | `0` | \* | `2` | `31` | +| `3` | `32` | \* | `3` | `8` | | Memory before | -|--------------:| -| `0` | +| ------------: | +| `0` | -| Memory after input 1 | -|---------------------:| +| Memory after input 1 | +| -------------------------------------------------------------------: | | `0x7DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F` | -| Memory after input 1 then 2 | -|----------------------------:| +| Memory after input 1 then 2 | +| -------------------------------------------------------------------: | | `0x7F00000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='qPutwbeginning%20ofwcodXtowexpected%20valueZ30VxWWWWWZ32VyyqRemovewvalues%20fromwstackTTj1~32~0_j2~8~31_'~Z1%20zFFFFFFy%5Cnw%20thXq%2F%2F%20jyyqExamplX_~0yCODECOPYZyPUSHXe%20WzzV%200TyPOP%01TVWXZ_jqwyz~_). @@ -44,5 +44,6 @@ For out of bound bytes, 0s will be copied. ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/3A.mdx b/docs/opcodes/3A.mdx index 6dd8ad79..cc213eb4 100644 --- a/docs/opcodes/3A.mdx +++ b/docs/opcodes/3A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `10` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `10` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='GASPRICE'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/3B.mdx b/docs/opcodes/3B.mdx index 9ded649a..6a299cbb 100644 --- a/docs/opcodes/3B.mdx +++ b/docs/opcodes/3B.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,9 +15,9 @@ group: Environmental Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | `32` | +| \* | Input | Output | +| --: | -------------------------------------------: | -----: | +| `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | `32` | [Reproduce in playground][1]. @@ -26,5 +26,6 @@ group: Environmental Information ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/3C.mdx b/docs/opcodes/3C.mdx index f7880f44..2bc26f25 100644 --- a/docs/opcodes/3C.mdx +++ b/docs/opcodes/3C.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -18,27 +18,27 @@ For out of bound bytes, 0s will be copied. ## Examples -| Code | -|-----:| -|`0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| Code | +| -------------------------------------------------------------------: | +| `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | * | `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | -| `2` | `0` | * | `2` | `0` | -| `3` | `0` | * | `3` | `31` | -| `4` | `32` | * | `4` | `8` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | -------------------------------------------: | --: | --: | -------------------------------------------: | +| `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | \* | `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | +| `2` | `0` | \* | `2` | `0` | +| `3` | `0` | \* | `3` | `31` | +| `4` | `32` | \* | `4` | `8` | | Memory before | -|--------------:| -| `0` | +| ------------: | +| `0` | -| Memory after input 1 | -|---------------------:| +| Memory after input 1 | +| -------------------------------------------------------------------: | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| Memory after input 1 then 2 | -|----------------------------:| +| Memory after input 1 then 2 | +| -------------------------------------------------------------------: | | `0xFF00000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground][1] @@ -48,5 +48,6 @@ For out of bound bytes, 0s will be copied. ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/3D.mdx b/docs/opcodes/3D.mdx index 00706006..702ffd9d 100644 --- a/docs/opcodes/3D.mdx +++ b/docs/opcodes/3D.mdx @@ -3,7 +3,7 @@ fork: Byzantium group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -15,9 +15,9 @@ A sub context can be created with [CALL](/#F1), [CALLCODE](/#F2), [DELEGATECALL] ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `32` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `32` | [Reproduce in playground][1] @@ -26,5 +26,6 @@ A sub context can be created with [CALL](/#F1), [CALLCODE](/#F2), [DELEGATECALL] ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/3E.mdx b/docs/opcodes/3E.mdx index c574f85c..b376f24d 100644 --- a/docs/opcodes/3E.mdx +++ b/docs/opcodes/3E.mdx @@ -3,7 +3,7 @@ fork: Byzantium group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -17,26 +17,26 @@ A sub context can be created with [CALL](/#F1), [CALLCODE](/#F2), [DELEGATECALL] ## Examples -| Return data | -|------------:| +| Return data | +| -------------------------------------------------------------------: | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0` | * | `1` | `32` | -| `2` | `0` | * | `2` | `31` | -| `3` | `32` | * | `3` | `1` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | ------: | --: | --: | ------: | +| `1` | `0` | \* | `1` | `32` | +| `2` | `0` | \* | `2` | `31` | +| `3` | `32` | \* | `3` | `1` | | Memory before | -|--------------:| -| `0` | +| ------------: | +| `0` | -| Memory after input 1 | -|---------------------:| +| Memory after input 1 | +| -------------------------------------------------------------------: | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | -| Memory after input 1 then 2 | -|----------------------------:| +| Memory after input 1 then 2 | +| ---------------------------------------------------------------------: | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground][1] @@ -46,6 +46,7 @@ A sub context can be created with [CALL](/#F1), [CALLCODE](/#F2), [DELEGATECALL] ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The addition `offset` + `size` overflows. diff --git a/docs/opcodes/3F.mdx b/docs/opcodes/3F.mdx index 78f5a507..6a6d40d5 100644 --- a/docs/opcodes/3F.mdx +++ b/docs/opcodes/3F.mdx @@ -3,7 +3,7 @@ fork: Constantinople group: Environmental Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,8 +15,8 @@ group: Environmental Information ## Examples -| * | Input | Output | -|--:|------:|-------:| +| \* | Input | Output | +| --: | -------------------------------------------: | -------------------------------------------------------------------: | | `1` | `0x43a61f3f4c73ea0d444c5c1c1a8544067a86219b` | `0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470` | [Reproduce in playground][1] @@ -26,5 +26,6 @@ group: Environmental Information ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/40.mdx b/docs/opcodes/40.mdx index 74489d10..f3bd43ff 100644 --- a/docs/opcodes/40.mdx +++ b/docs/opcodes/40.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,12 +15,13 @@ group: Block Information ## Examples -| * | Input | Output | -|--:|------:|-------:| +| \* | Input | Output | +| --: | ----------: | -------------------------------------------------------------------: | | `1` | `599423545` | `0x29045A592007D0C246EF02C2223570DA9522D0CF0F73282C79A1BC8F0BB2C238` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/41.mdx b/docs/opcodes/41.mdx index 41784275..aa03cebc 100644 --- a/docs/opcodes/41.mdx +++ b/docs/opcodes/41.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,12 +11,13 @@ group: Block Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x5B38Da6a701c568545dCfcB03FcB875f56beddC4` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------: | +| `1` | | `0x5B38Da6a701c568545dCfcB03FcB875f56beddC4` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/42.mdx b/docs/opcodes/42.mdx index be27aa55..8bc362b1 100644 --- a/docs/opcodes/42.mdx +++ b/docs/opcodes/42.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,12 +11,13 @@ group: Block Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `1636704767` | +| \* | Input | Output | +| --: | ----: | -----------: | +| `1` | | `1636704767` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/43.mdx b/docs/opcodes/43.mdx index 4e462593..38a72240 100644 --- a/docs/opcodes/43.mdx +++ b/docs/opcodes/43.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,12 +11,13 @@ group: Block Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `1636704767` | +| \* | Input | Output | +| --: | ----: | -----------: | +| `1` | | `1636704767` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/44.mdx b/docs/opcodes/44.mdx index 33f6fba9..4ed782c7 100644 --- a/docs/opcodes/44.mdx +++ b/docs/opcodes/44.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,12 +11,13 @@ group: Block Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `10995000000000000` | +| \* | Input | Output | +| --: | ----: | ------------------: | +| `1` | | `10995000000000000` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/44_merge.mdx b/docs/opcodes/44_merge.mdx index 99cf3441..5dcdc8b9 100644 --- a/docs/opcodes/44_merge.mdx +++ b/docs/opcodes/44_merge.mdx @@ -3,20 +3,21 @@ fork: Merge group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output -0. `prevRandao`: previous block's [RANDAO mix](https://eips.ethereum.org/EIPS/eip-4399). +0. `prevRandao`: previous block's [RANDAO mix](https://eips.ethereum.org/EIPS/eip-4399). ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0xce124dee50136f3f93f19667fb4198c6b94eecbacfa300469e5280012757be94` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------------: | +| `1` | | `0xce124dee50136f3f93f19667fb4198c6b94eecbacfa300469e5280012757be94` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/45.mdx b/docs/opcodes/45.mdx index 6a3b92cb..624fb2b6 100644 --- a/docs/opcodes/45.mdx +++ b/docs/opcodes/45.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Block Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0xffffffffffff` | +| \* | Input | Output | +| --: | ----: | ---------------: | +| `1` | | `0xffffffffffff` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='GASLIMIT'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/46.mdx b/docs/opcodes/46.mdx index 66a848f1..33130b6e 100644 --- a/docs/opcodes/46.mdx +++ b/docs/opcodes/46.mdx @@ -3,18 +3,18 @@ fork: Istanbul group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes Here are some chain ids: -| Id | Chain | -|---:|------:| -| 1 | Mainnet | -| 5 | Goerli | +| Id | Chain | +| -------: | ------: | +| 1 | Mainnet | +| 5 | Goerli | | 11155111 | Sepolia | -| 17000 | Holešky | +| 17000 | Holešky | ## Stack output @@ -22,14 +22,15 @@ Here are some chain ids: ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='CHAINID'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/47.mdx b/docs/opcodes/47.mdx index 9566b767..5076af75 100644 --- a/docs/opcodes/47.mdx +++ b/docs/opcodes/47.mdx @@ -3,7 +3,7 @@ fork: Istanbul group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -15,14 +15,15 @@ Semantically equivalent of calling [BALANCE](/#31) with [ADDRESS](/#30) as param ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `9` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `9` | [Reproduce in playground](/playground?callValue=9&unit=Wei&codeType=Mnemonic&code='SELFBALANCE'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/48.mdx b/docs/opcodes/48.mdx index f133c06b..43a1fe78 100644 --- a/docs/opcodes/48.mdx +++ b/docs/opcodes/48.mdx @@ -3,7 +3,7 @@ fork: London group: Block Information --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -11,14 +11,15 @@ group: Block Information ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `10` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `10` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='BASEFEE'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/50.mdx b/docs/opcodes/50.mdx index 36f065bc..ce4c0fc7 100644 --- a/docs/opcodes/50.mdx +++ b/docs/opcodes/50.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -11,14 +11,15 @@ group: Stack Memory Storage and Flow Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `125985` | | +| \* | Input | Output | +| --: | -------: | -----: | +| `1` | `125985` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='PUSH3%20125985%5CnPOP'_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/51.mdx b/docs/opcodes/51.mdx index f7287d04..ec84df2c 100644 --- a/docs/opcodes/51.mdx +++ b/docs/opcodes/51.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -19,18 +19,19 @@ Pop from the stack a word as `offset` to locate and read a word from the memory ## Examples -| Memory | -|-------:| +| Memory | +| -------------------------------------------------------------------: | | `0x00000000000000000000000000000000000000000000000000000000000000FF` | -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0` | `0xFF` | * | `1` | `1` | `0xFF00` | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -------: | +| `1` | `0` | `0xFF` | \* | `1` | `1` | `0xFF00` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='qPut%20thkstatkin%20memoryg32%200xfffffdFFv0zMSTOREw1v0jw2v1jz'~dddz%5CnwzzqExamplkvg1%20q%2F%2F%20ke%20jzMLOADgzPUSHf~~d00%01dfgjkqvwz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/52.mdx b/docs/opcodes/52.mdx index b0c9c24f..6e7958f9 100644 --- a/docs/opcodes/52.mdx +++ b/docs/opcodes/52.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -12,21 +12,21 @@ group: Stack Memory Storage and Flow Operations ## Examples -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0` | * | `1` | `1` | -| `2` | `0xFF` | * | `2` | `0xFF` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | ------: | --: | --: | ------: | +| `1` | `0` | \* | `1` | `1` | +| `2` | `0xFF` | \* | `2` | `0xFF` | | Memory before | -|--------------:| -| `0` | +| ------------: | +| `0` | -| Memory after input 1 | -|---------------------:| +| Memory after input 1 | +| -------------------------------------------------------------------: | | `0x00000000000000000000000000000000000000000000000000000000000000FF` | -| Memory after input 1 then 2 | -|----------------------------:| +| Memory after input 1 then 2 | +| ---------------------------------------------------------------------: | | `0x0000000000000000000000000000000000000000000000000000000000000000FF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1v0wyz2v1w'~yPUSH1%20z%2F%2F%20Example%20y%5CnwyMSTOREyv~0xFF~%01vwyz~_). @@ -34,5 +34,6 @@ group: Stack Memory Storage and Flow Operations ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/53.mdx b/docs/opcodes/53.mdx index 44f93873..97be2de9 100644 --- a/docs/opcodes/53.mdx +++ b/docs/opcodes/53.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -12,27 +12,28 @@ group: Stack Memory Storage and Flow Operations ## Examples -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0` | * | `1` | `1` | -| `2` | `0xFFFF` | * | `2` | `0xFF` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | -------: | --: | --: | ------: | +| `1` | `0` | \* | `1` | `1` | +| `2` | `0xFFFF` | \* | `2` | `0xFF` | | Memory before | -|--------------:| -| `0` | +| ------------: | +| `0` | | Memory after input 1 | -|---------------------:| -| `0xFF` | +| -------------------: | +| `0xFF` | | Memory after input 1 then 2 | -|----------------------------:| -| `0xFFFF` | +| --------------------------: | +| `0xFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1v2%200xFFFFy0w~z2y0xFFy1w'~%5Cnz%2F%2F%20Example%20yv1%20w~MSTORE8~v~PUSH%01vwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/54.mdx b/docs/opcodes/54.mdx index e2c28c74..585e549d 100644 --- a/docs/opcodes/54.mdx +++ b/docs/opcodes/54.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -15,18 +15,19 @@ group: Stack Memory Storage and Flow Operations ## Examples -|Storage key | Storage value | -|-----------:|--------------:| -| `0` | `46` | +| Storage key | Storage value | +| ----------: | ------------: | +| `0` | `46` | -| * | Input | Output | * | * | Input | Output | -|--:|------:|-------:|--:|--:|------:|-------:| -| `1` | `0` | `46` | * | `1` | `1` | `0` | +| \* | Input | Output | \* | \* | Input | Output | +| --: | ----: | -----: | --: | --: | ----: | -----: | +| `1` | `0` | `46` | \* | `1` | `1` | `0` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wSet%20up%20thrstatez46z0~SSTOREy1z0vy2z1v~'~%5Cnz~PUSH1%20y~~wExamplrw%2F%2F%20v~SLOADre%20%01rvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/55.mdx b/docs/opcodes/55.mdx index 9053763a..d7b7b648 100644 --- a/docs/opcodes/55.mdx +++ b/docs/opcodes/55.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -12,30 +12,31 @@ group: Stack Memory Storage and Flow Operations ## Examples -| * | Input 1 | * | * | Input 2 | -|--:|--------:|--:|--:|--------:| -| `1` | `0` | * | `1` | `8965` | -| `2` | `0xFFFF` | * | `2` | `0xFF` | +| \* | Input 1 | \* | \* | Input 2 | +| --: | -------: | --: | --: | ------: | +| `1` | `0` | \* | `1` | `8965` | +| `2` | `0xFFFF` | \* | `2` | `0xFF` | | Storage key before | Storage value | -|-------------------:|--------------:| -| | | +| -----------------: | ------------: | +| | | | Storage key after input 1 | Storage value | -|--------------------------:|--------------:| -| `0` | `0xFFFF` | +| ------------------------: | ------------: | +| `0` | `0xFFFF` | | Storage key after input 1 then 2 | Storage value | -|---------------------------------:|--------------:| -| `0` | `0xFFFF` | -| `8965` | `0xFF` | +| -------------------------------: | ------------: | +| `0` | `0xFFFF` | +| `8965` | `0xFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='z1uFFv1%200w~z2uy8965w'~%5Cnz%2F%2F%20Example%20yv2%20w~SSTORE~v~PUSHuy0xFF%01uvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). -- When the amount of gas left to the transaction is less than or equal 2300 (since Istanbul fork). \ No newline at end of file +- When the amount of gas left to the transaction is less than or equal 2300 (since Istanbul fork). diff --git a/docs/opcodes/55/berlin.mdx b/docs/opcodes/55/berlin.mdx index 3a8f2cd7..3490a2bd 100644 --- a/docs/opcodes/55/berlin.mdx +++ b/docs/opcodes/55/berlin.mdx @@ -1,25 +1,25 @@ ## Gas ### Definitions: + - **value**: value from the stack input. - **current_value**: current value of the storage slot. - **original_value**: value of the storage slot before the current transaction. - - static_gas = {gasPrices|sstore} - - if value == current_value - if key is warm - base_dynamic_gas = {gasPrices|warmstorageread} - else - base_dynamic_gas = {gasPrices|sstoreNoopGasEIP2200} - else if current_value == original_value - if original_value == 0 - base_dynamic_gas = {gasPrices|sstoreInitGasEIP2200} - else - base_dynamic_gas = {gasPrices|sstoreCleanGasEIP2200} - else - base_dynamic_gas = {gasPrices|sstoreDirtyGasEIP2200} + static_gas = {gasPrices|sstore} + + if value == current_value + if key is warm + base_dynamic_gas = {gasPrices|warmstorageread} + else + base_dynamic_gas = {gasPrices|sstoreNoopGasEIP2200} + else if current_value == original_value + if original_value == 0 + base_dynamic_gas = {gasPrices|sstoreInitGasEIP2200} + else + base_dynamic_gas = {gasPrices|sstoreCleanGasEIP2200} + else + base_dynamic_gas = {gasPrices|sstoreDirtyGasEIP2200} On top of the cost above, {gasPrices|coldsload} is added to `base_dynamic_gas` if the slot is cold. See section [access sets](/about). diff --git a/docs/opcodes/55/constantinople.mdx b/docs/opcodes/55/constantinople.mdx index 23e6e02d..79310780 100644 --- a/docs/opcodes/55/constantinople.mdx +++ b/docs/opcodes/55/constantinople.mdx @@ -1,22 +1,22 @@ ## Gas ### Definitions: + - **value**: value from the stack input. - **current_value**: current value of the storage slot. - **original_value**: value of the storage slot before the current transaction. + static_gas = {gasPrices|sstore} - static_gas = {gasPrices|sstore} - - if value == current_value - dynamic_gas = {gasPrices|netSstoreNoopGas} - else if current_value == original_value - if original_value == 0 - dynamic_gas = {gasPrices|netSstoreInitGas} - else - dynamic_gas = {gasPrices|netSstoreCleanGas} - else - dynamic_gas = {gasPrices|netSstoreDirtyGas} + if value == current_value + dynamic_gas = {gasPrices|netSstoreNoopGas} + else if current_value == original_value + if original_value == 0 + dynamic_gas = {gasPrices|netSstoreInitGas} + else + dynamic_gas = {gasPrices|netSstoreCleanGas} + else + dynamic_gas = {gasPrices|netSstoreDirtyGas} ## Gas refunds diff --git a/docs/opcodes/55/istanbul.mdx b/docs/opcodes/55/istanbul.mdx index 67cc809d..0ae4d1b6 100644 --- a/docs/opcodes/55/istanbul.mdx +++ b/docs/opcodes/55/istanbul.mdx @@ -1,22 +1,22 @@ ## Gas ### Definitions: + - **value**: value from the stack input. - **current_value**: current value of the storage slot. - **original_value**: value of the storage slot before the current transaction. + static_gas = {gasPrices|sstore} - static_gas = {gasPrices|sstore} - - if value == current_value - dynamic_gas = {gasPrices|sstoreNoopGasEIP2200} - else if current_value == original_value - if original_value == 0 - dynamic_gas = {gasPrices|sstoreInitGasEIP2200} - else - dynamic_gas = {gasPrices|sstoreCleanGasEIP2200} - else - dynamic_gas = {gasPrices|sstoreDirtyGasEIP2200} + if value == current_value + dynamic_gas = {gasPrices|sstoreNoopGasEIP2200} + else if current_value == original_value + if original_value == 0 + dynamic_gas = {gasPrices|sstoreInitGasEIP2200} + else + dynamic_gas = {gasPrices|sstoreCleanGasEIP2200} + else + dynamic_gas = {gasPrices|sstoreDirtyGasEIP2200} ## Gas refunds diff --git a/docs/opcodes/55/petersburg.mdx b/docs/opcodes/55/petersburg.mdx index 4bcd44c8..d11d9aa9 100644 --- a/docs/opcodes/55/petersburg.mdx +++ b/docs/opcodes/55/petersburg.mdx @@ -1,6 +1,6 @@ ## Gas -The static cost is {gasPrices|sstore}. If the value is changed from zero to non-zero, then the dynamic gas is {gasPrices|sstoreSet}. Otherwise the dynamic gas is {gasPrices|sstoreReset}. +The static cost is {gasPrices|sstore}. If the value is changed from zero to non-zero, then the dynamic gas is {gasPrices|sstoreSet}. Otherwise the dynamic gas is {gasPrices|sstoreReset}. ## Gas refunds diff --git a/docs/opcodes/56.mdx b/docs/opcodes/56.mdx index 45a6db50..7eb371ef 100644 --- a/docs/opcodes/56.mdx +++ b/docs/opcodes/56.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -22,6 +22,7 @@ The **JUMP** instruction alters the program counter, thus breaking the linear pa ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - `Counter` offset is not a [JUMPDEST](/#5B). The error is generated even if the JUMP would not have been done. diff --git a/docs/opcodes/57.mdx b/docs/opcodes/57.mdx index 5bdc17cc..455c8b8d 100644 --- a/docs/opcodes/57.mdx +++ b/docs/opcodes/57.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -23,6 +23,7 @@ The **JUMPI** instruction may alter the program counter, thus breaking the linea ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - `Counter` offset is not a [JUMPDEST](/#5B). The error is generated only if the JUMP would have been done. diff --git a/docs/opcodes/58.mdx b/docs/opcodes/58.mdx index 56f8fceb..c7574ba2 100644 --- a/docs/opcodes/58.mdx +++ b/docs/opcodes/58.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,5 +20,6 @@ The program counter (PC) is a byte offset in the deployed [code](/about). It ind ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/59.mdx b/docs/opcodes/59.mdx index ae516d5f..1d48d7c1 100644 --- a/docs/opcodes/59.mdx +++ b/docs/opcodes/59.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,5 +20,6 @@ The [memory](/about) is always fully accessible. What this instruction tracks is ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/5A.mdx b/docs/opcodes/5A.mdx index 46408cac..fbc5191b 100644 --- a/docs/opcodes/5A.mdx +++ b/docs/opcodes/5A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Stack Memory Storage and Flow Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack output @@ -16,5 +16,6 @@ group: Stack Memory Storage and Flow Operations ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/5F.mdx b/docs/opcodes/5F.mdx index 1cc768c2..a3dbcf44 100644 --- a/docs/opcodes/5F.mdx +++ b/docs/opcodes/5F.mdx @@ -3,7 +3,7 @@ fork: Shanghai group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,17 +15,18 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x5F` | +| \* | \* | +| -------- | ------- | +| **Code** | `0x5F` | | **Text** | `PUSH0` | -| * | Input | Output | -|--:|------:|-------:| -| 1 | | `0x00` | +| \* | Input | Output | +| --: | ----: | -----: | +| 1 | | `0x00` | ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/60.mdx b/docs/opcodes/60.mdx index 5a5798b2..0fcee838 100644 --- a/docs/opcodes/60.mdx +++ b/docs/opcodes/60.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x60FF6000` | +| \* | \* | +| -------- | ------------------- | +| **Code** | `0x60FF6000` | | **Text** | `PUSH1 FF PUSH1 00` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00` | -| `2` | | `0xFF` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | | `0x00` | +| `2` | | `0xFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xFF%5Cn~'~PUSH1%200%01~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/61.mdx b/docs/opcodes/61.mdx index f8a92d82..a534dc31 100644 --- a/docs/opcodes/61.mdx +++ b/docs/opcodes/61.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x61FFFF610000` | +| \* | \* | +| -------- | ----------------------- | +| **Code** | `0x61FFFF610000` | | **Text** | `PUSH2 FFFF PUSH2 0000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000` | -| `2` | | `0xFFFF` | +| \* | Input | Output | +| --: | ----: | -------: | +| `1` | | `0x0000` | +| `2` | | `0xFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xFFFF%5Cn~'~PUSH2%200%01~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/62.mdx b/docs/opcodes/62.mdx index c71d5042..a4024d12 100644 --- a/docs/opcodes/62.mdx +++ b/docs/opcodes/62.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x62FFFFFF62000000` | +| \* | \* | +| -------- | --------------------------- | +| **Code** | `0x62FFFFFF62000000` | | **Text** | `PUSH3 FFFFFF PUSH3 000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000` | -| `2` | | `0xFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------: | +| `1` | | `0x000000` | +| `2` | | `0xFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xFFFFFF%5Cn~'~PUSH3%200%01~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/63.mdx b/docs/opcodes/63.mdx index 5094b3b1..9fd15382 100644 --- a/docs/opcodes/63.mdx +++ b/docs/opcodes/63.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x63FFFFFFFF6300000000` | +| \* | \* | +| -------- | ------------------------------- | +| **Code** | `0x63FFFFFFFF6300000000` | | **Text** | `PUSH4 FFFFFFFF PUSH4 00000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000` | -| `2` | | `0xFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------: | +| `1` | | `0x00000000` | +| `2` | | `0xFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xFFFFFFFF%5Cn~'~PUSH4%200%01~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/64.mdx b/docs/opcodes/64.mdx index 7dee8c84..f4c3f639 100644 --- a/docs/opcodes/64.mdx +++ b/docs/opcodes/64.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x64FFFFFFFFFF640000000000` | +| \* | \* | +| -------- | ----------------------------------- | +| **Code** | `0x64FFFFFFFFFF640000000000` | | **Text** | `PUSH5 FFFFFFFFFF PUSH5 0000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000` | -| `2` | | `0xFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------: | +| `1` | | `0x0000000000` | +| `2` | | `0xFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xFFFFFFFFFF%5Cn~'~PUSH5%200%01~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/65.mdx b/docs/opcodes/65.mdx index de7ca497..77bda5c8 100644 --- a/docs/opcodes/65.mdx +++ b/docs/opcodes/65.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x65FFFFFFFFFFFF65000000000000` | +| \* | \* | +| -------- | --------------------------------------- | +| **Code** | `0x65FFFFFFFFFFFF65000000000000` | | **Text** | `PUSH6 FFFFFFFFFFFF PUSH6 000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000` | -| `2` | | `0xFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------: | +| `1` | | `0x000000000000` | +| `2` | | `0xFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xzzzz%5Cn~'~PUSH6%200zFFF%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/66.mdx b/docs/opcodes/66.mdx index 157d5920..edcb1412 100644 --- a/docs/opcodes/66.mdx +++ b/docs/opcodes/66.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x66FFFFFFFFFFFFFF6600000000000000` | +| \* | \* | +| -------- | ------------------------------------------- | +| **Code** | `0x66FFFFFFFFFFFFFF6600000000000000` | | **Text** | `PUSH7 FFFFFFFFFFFFFF PUSH7 00000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000` | -| `2` | | `0xFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------: | +| `1` | | `0x00000000000000` | +| `2` | | `0xFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='~xzzzzzzz%5Cn~'~PUSH7%200zFF%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/67.mdx b/docs/opcodes/67.mdx index 873af9a8..b1d9cd86 100644 --- a/docs/opcodes/67.mdx +++ b/docs/opcodes/67.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x67FFFFFFFFFFFFFFFF670000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------- | +| **Code** | `0x67FFFFFFFFFFFFFFFF670000000000000000` | | **Text** | `PUSH8 FFFFFFFFFFFFFFFF PUSH8 0000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------: | +| `1` | | `0x0000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~%5Cnz'~FFFFzPUSH8%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/68.mdx b/docs/opcodes/68.mdx index 4eb79a85..56478efe 100644 --- a/docs/opcodes/68.mdx +++ b/docs/opcodes/68.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x68FFFFFFFFFFFFFFFFFF68000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------- | +| **Code** | `0x68FFFFFFFFFFFFFFFFFF68000000000000000000` | | **Text** | `PUSH9 FFFFFFFFFFFFFFFFFF PUSH9 000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------: | +| `1` | | `0x000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~%5Cnz'~FFFzPUSH9%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/69.mdx b/docs/opcodes/69.mdx index 245b139f..f1cfbe97 100644 --- a/docs/opcodes/69.mdx +++ b/docs/opcodes/69.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x69FFFFFFFFFFFFFFFFFFFF6900000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------- | +| **Code** | `0x69FFFFFFFFFFFFFFFFFFFF6900000000000000000000` | | **Text** | `PUSH10 FFFFFFFFFFFFFFFFFFFF PUSH10 00000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------: | +| `1` | | `0x00000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~%5Cnz'~FFFFzPUSH10%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/6A.mdx b/docs/opcodes/6A.mdx index 91fba386..40beeff1 100644 --- a/docs/opcodes/6A.mdx +++ b/docs/opcodes/6A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x6AFFFFFFFFFFFFFFFFFFFFFF6A0000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------- | +| **Code** | `0x6AFFFFFFFFFFFFFFFFFFFFFF6A0000000000000000000000` | | **Text** | `PUSH11 FFFFFFFFFFFFFFFFFFFFFF PUSH11 0000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------: | +| `1` | | `0x0000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~~F%5Cnz'~FFFzPUSH11%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/6B.mdx b/docs/opcodes/6B.mdx index f3106b68..99e6d6cf 100644 --- a/docs/opcodes/6B.mdx +++ b/docs/opcodes/6B.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x6BFFFFFFFFFFFFFFFFFFFFFFFF6B000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------- | +| **Code** | `0x6BFFFFFFFFFFFFFFFFFFFFFFFF6B000000000000000000000000` | | **Text** | `PUSH12 FFFFFFFFFFFFFFFFFFFFFFFF PUSH12 000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------: | +| `1` | | `0x000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~%5Cnz'~FFFFzPUSH12%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/6C.mdx b/docs/opcodes/6C.mdx index 8097bc7f..9a16af41 100644 --- a/docs/opcodes/6C.mdx +++ b/docs/opcodes/6C.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x6CFFFFFFFFFFFFFFFFFFFFFFFFFF6C00000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------- | +| **Code** | `0x6CFFFFFFFFFFFFFFFFFFFFFFFFFF6C00000000000000000000000000` | | **Text** | `PUSH13 FFFFFFFFFFFFFFFFFFFFFFFFFF PUSH13 00000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------: | +| `1` | | `0x00000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~F%5Cnz'~FFFFFzPUSH13%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/6D.mdx b/docs/opcodes/6D.mdx index 27b9597b..6fa44a16 100644 --- a/docs/opcodes/6D.mdx +++ b/docs/opcodes/6D.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x6DFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D0000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------- | +| **Code** | `0x6DFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D0000000000000000000000000000` | | **Text** | `PUSH14 FFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH14 0000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------: | +| `1` | | `0x0000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~~%5Cnz'~FFFFzPUSH14%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/6E.mdx b/docs/opcodes/6E.mdx index f5a6ffdf..cd89b596 100644 --- a/docs/opcodes/6E.mdx +++ b/docs/opcodes/6E.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x6EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E000000000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------------------- | +| **Code** | `0x6EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E000000000000000000000000000000` | | **Text** | `PUSH15 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH15 000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------------: | +| `1` | | `0x000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~%5Cnz'~FFFFFzPUSH15%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/6F.mdx b/docs/opcodes/6F.mdx index ca221132..f6d4a10b 100644 --- a/docs/opcodes/6F.mdx +++ b/docs/opcodes/6F.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F00000000000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------------------- | +| **Code** | `0x6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F00000000000000000000000000000000` | | **Text** | `PUSH16 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH16 00000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------------: | +| `1` | | `0x00000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyy%5Cnz'~FFFFzPUSH16%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/70.mdx b/docs/opcodes/70.mdx index f645cc9b..53dd5026 100644 --- a/docs/opcodes/70.mdx +++ b/docs/opcodes/70.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF700000000000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------------------- | +| **Code** | `0x70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF700000000000000000000000000000000000` | | **Text** | `PUSH17 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH17 0000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------: | +| `1` | | `0x0000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyyFF%5Cnz'~FFFFzPUSH17%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/71.mdx b/docs/opcodes/71.mdx index 2ac3a56f..f51cc654 100644 --- a/docs/opcodes/71.mdx +++ b/docs/opcodes/71.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x71FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71000000000000000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------------------------------- | +| **Code** | `0x71FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71000000000000000000000000000000000000` | | **Text** | `PUSH18 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH18 000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------------------: | +| `1` | | `0x000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~%5Cnz'~FFFFFFzPUSH18%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/72.mdx b/docs/opcodes/72.mdx index 8c2a105d..31ad51da 100644 --- a/docs/opcodes/72.mdx +++ b/docs/opcodes/72.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x72FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7200000000000000000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------------------------------- | +| **Code** | `0x72FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7200000000000000000000000000000000000000` | | **Text** | `PUSH19 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH19 00000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------------------: | +| `1` | | `0x00000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~y%5Cnz'~yyyzPUSH19%200yFF%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/73.mdx b/docs/opcodes/73.mdx index 27a8ff97..34fbdc46 100644 --- a/docs/opcodes/73.mdx +++ b/docs/opcodes/73.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x73FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF730000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------------------------------- | +| **Code** | `0x73FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF730000000000000000000000000000000000000000` | | **Text** | `PUSH20 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH20 0000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------: | +| `1` | | `0x0000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyy%5Cnz'~FFFFFzPUSH20%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/74.mdx b/docs/opcodes/74.mdx index c51ef00c..66ba57c3 100644 --- a/docs/opcodes/74.mdx +++ b/docs/opcodes/74.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x74FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------------------------------------------- | +| **Code** | `0x74FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74000000000000000000000000000000000000000000` | | **Text** | `PUSH21 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH21 000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------------------------: | +| `1` | | `0x000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zx~~~~~~~%5Cnz'~FFFFFFzPUSH21%200%01z~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/75.mdx b/docs/opcodes/75.mdx index 59f45f2f..5b1c4acb 100644 --- a/docs/opcodes/75.mdx +++ b/docs/opcodes/75.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x75FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7500000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------------------------------------------- | +| **Code** | `0x75FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7500000000000000000000000000000000000000000000` | | **Text** | `PUSH22 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH22 00000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------------------------: | +| `1` | | `0x00000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyyy~%5Cnz'~FFFFzPUSH22%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/76.mdx b/docs/opcodes/76.mdx index cf3c8273..f279e8e7 100644 --- a/docs/opcodes/76.mdx +++ b/docs/opcodes/76.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x76FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF760000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x76FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF760000000000000000000000000000000000000000000000` | | **Text** | `PUSH23 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH23 0000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------: | +| `1` | | `0x0000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyF%5Cnz'~FFFFFzPUSH23%200y~~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/77.mdx b/docs/opcodes/77.mdx index e90023dd..bb64f227 100644 --- a/docs/opcodes/77.mdx +++ b/docs/opcodes/77.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x77FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x77FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77000000000000000000000000000000000000000000000000` | | **Text** | `PUSH24 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH24 000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------------------------------: | +| `1` | | `0x000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyy%5Cnz'~FFFFFFzPUSH24%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/78.mdx b/docs/opcodes/78.mdx index 0e150164..7e319bba 100644 --- a/docs/opcodes/78.mdx +++ b/docs/opcodes/78.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x78FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7800000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x78FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7800000000000000000000000000000000000000000000000000` | | **Text** | `PUSH25 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH25 00000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------------------------------: | +| `1` | | `0x00000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reprduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyyy%5Cnz'~FFFFFzPUSH25%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/79.mdx b/docs/opcodes/79.mdx index 1e572ce5..dbc35a6e 100644 --- a/docs/opcodes/79.mdx +++ b/docs/opcodes/79.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x79FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF790000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x79FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF790000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH26 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH26 0000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------: | +| `1` | | `0x0000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyy~%5Cnz'~FFFFzPUSH26%200y~~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/7A.mdx b/docs/opcodes/7A.mdx index aece4c9c..b85b336e 100644 --- a/docs/opcodes/7A.mdx +++ b/docs/opcodes/7A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x7AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A000000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x7AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A000000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH27 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH27 000000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------------------------------------: | +| `1` | | `0x000000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyy%5Cnz'~FFFFFFzPUSH27%200y~~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/7B.mdx b/docs/opcodes/7B.mdx index b61f1651..785f1a8f 100644 --- a/docs/opcodes/7B.mdx +++ b/docs/opcodes/7B.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x7BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B00000000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x7BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B00000000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH28 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH28 00000000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------------------------------------: | +| `1` | | `0x00000000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyy%5Cnz'~FFFFFFFzPUSH28%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/7C.mdx b/docs/opcodes/7C.mdx index 5f173fe3..f32bb44b 100644 --- a/docs/opcodes/7C.mdx +++ b/docs/opcodes/7C.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C0000000000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C0000000000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH29 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH29 0000000000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------: | +| `1` | | `0x0000000000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxwwwwy%5Cnz'~yyyFzPUSH29%200yFFw~~%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/7D.mdx b/docs/opcodes/7D.mdx index bd03a112..a43b9ee4 100644 --- a/docs/opcodes/7D.mdx +++ b/docs/opcodes/7D.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x7DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D000000000000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x7DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D000000000000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH30 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH30 000000000000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x000000000000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | ---------------------------------------------------------------: | +| `1` | | `0x000000000000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyyy%5Cnz'~FFFFFFzPUSH30%200y~~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/7E.mdx b/docs/opcodes/7E.mdx index 7d6d1c4e..8da11dbc 100644 --- a/docs/opcodes/7E.mdx +++ b/docs/opcodes/7E.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x7EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E00000000000000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | --------------------------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x7EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E00000000000000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH31 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH31 00000000000000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x00000000000000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -----------------------------------------------------------------: | +| `1` | | `0x00000000000000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxyyyyyw%5Cnz'~wwwzPUSH31%200y~~wFF%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/7F.mdx b/docs/opcodes/7F.mdx index b5b428bb..9f987f6c 100644 --- a/docs/opcodes/7F.mdx +++ b/docs/opcodes/7F.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Push Operations --- -*Index 1 is top of the stack.* +_Index 1 is top of the stack._ ## Notes @@ -15,20 +15,21 @@ The new value is put on top of the stack, incrementing all the other value indic ## Example -| * | * | -|---|---| -| **Code** | `0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F0000000000000000000000000000000000000000000000000000000000000000` | +| \* | \* | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Code** | `0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F0000000000000000000000000000000000000000000000000000000000000000` | | **Text** | `PUSH32 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0000000000000000000000000000000000000000000000000000000000000000` | -| * | Input | Output | -|--:|------:|-------:| -| `1` | | `0x0000000000000000000000000000000000000000000000000000000000000000` | -| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | +| \* | Input | Output | +| --: | ----: | -------------------------------------------------------------------: | +| `1` | | `0x0000000000000000000000000000000000000000000000000000000000000000` | +| `2` | | `0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zxwwww%5Cnz'~yyyyzPUSH32%200yFFw~~%01wyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Stack overflow. diff --git a/docs/opcodes/80.mdx b/docs/opcodes/80.mdx index d04285e0..cfe6439d 100644 --- a/docs/opcodes/80.mdx +++ b/docs/opcodes/80.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -16,16 +16,17 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `1` | -| `2` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `1` | +| `2` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zSet%20styPUSH1%201~~zDuplicyDUP1'~%5Cnz%2F%2F%20yate~%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/81.mdx b/docs/opcodes/81.mdx index 954870b1..1e63e6c2 100644 --- a/docs/opcodes/81.mdx +++ b/docs/opcodes/81.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -18,17 +18,18 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `1` | `0` | -| `3` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `1` | `0` | +| `3` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zSet%20statey1y0~~zDuplicate~DUP2'~%5Cnz%2F%2F%20y~PUSH1%20%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/82.mdx b/docs/opcodes/82.mdx index b8c31864..80a04542 100644 --- a/docs/opcodes/82.mdx +++ b/docs/opcodes/82.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -20,18 +20,19 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `1` | `0` | -| `4` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `1` | `0` | +| `4` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20state~1~0~0zzyDuplicatezDUP3'~zPUSH1%20z%5Cny%2F%2F%20%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/83.mdx b/docs/opcodes/83.mdx index ad153573..b796afd1 100644 --- a/docs/opcodes/83.mdx +++ b/docs/opcodes/83.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -22,19 +22,20 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `1` | `0` | -| `5` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `1` | `0` | +| `5` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20state~1~0~0~0zzyDuplicatezDUP4'~zPUSH1%20z%5Cny%2F%2F%20%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/84.mdx b/docs/opcodes/84.mdx index c688635c..ff1a4e5f 100644 --- a/docs/opcodes/84.mdx +++ b/docs/opcodes/84.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -24,20 +24,21 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `1` | `0` | -| `6` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `1` | `0` | +| `6` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20state~1xxxxzzyDuplicatezDUP5'~zPUSH1%20z%5Cny%2F%2F%20x~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/85.mdx b/docs/opcodes/85.mdx index 71944916..04a9dd2c 100644 --- a/docs/opcodes/85.mdx +++ b/docs/opcodes/85.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -26,21 +26,22 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `1` | `0` | -| `7` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `1` | `0` | +| `7` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20state~1xxxxxzzyDuplicatezDUP6'~zPUSH1%20z%5Cny%2F%2F%20x~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/86.mdx b/docs/opcodes/86.mdx index 6c55f34c..6e0e8ad8 100644 --- a/docs/opcodes/86.mdx +++ b/docs/opcodes/86.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -28,22 +28,23 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `1` | `0` | -| `8` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `1` | `0` | +| `8` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20state~1xxxzzyDuplicatezDUP7'~zPUSH1%20z%5Cny%2F%2F%20x~0~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/87.mdx b/docs/opcodes/87.mdx index fc33eda4..d07be68a 100644 --- a/docs/opcodes/87.mdx +++ b/docs/opcodes/87.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -30,23 +30,24 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `1` | `0` | -| `9` | | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `1` | `0` | +| `9` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20state~1xxxxxxxzzyDuplicatezDUP8'~zPUSH1%20z%5Cny%2F%2F%20x~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/88.mdx b/docs/opcodes/88.mdx index ba8f864f..c091a093 100644 --- a/docs/opcodes/88.mdx +++ b/docs/opcodes/88.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -32,24 +32,25 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `1` | `0` | -| `10` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `1` | `0` | +| `10` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xSet%20state~1yyyyzzxDuplicatezDUP9'~zPUSH1%20z%5Cny~0~0x%2F%2F%20%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/89.mdx b/docs/opcodes/89.mdx index 38afad64..4b2b2f4e 100644 --- a/docs/opcodes/89.mdx +++ b/docs/opcodes/89.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -34,25 +34,26 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `1` | `0` | -| `11` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `1` | `0` | +| `11` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xSet%20state~1zzzyyxDuplicateyDUP10'~yPUSH1%20z~0~0~0y%5Cnx%2F%2F%20%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/8A.mdx b/docs/opcodes/8A.mdx index 35ffe14b..f597ed9a 100644 --- a/docs/opcodes/8A.mdx +++ b/docs/opcodes/8A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -36,26 +36,27 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `1` | `0` | -| `12` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `1` | `0` | +| `12` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xSet%20state~1zzzzzyyxDuplicateyDUP11'~yPUSH1%20z~0~0y%5Cnx%2F%2F%20%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/8B.mdx b/docs/opcodes/8B.mdx index 8d3aa32e..f3603004 100644 --- a/docs/opcodes/8B.mdx +++ b/docs/opcodes/8B.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -38,27 +38,28 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `1` | `0` | -| `13` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `1` | `0` | +| `13` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xSet%20state~1zzzzz~0yyxDuplicateyDUP12'~yPUSH1%20z~0~0y%5Cnx%2F%2F%20%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/8C.mdx b/docs/opcodes/8C.mdx index fe55d33d..ea501d56 100644 --- a/docs/opcodes/8C.mdx +++ b/docs/opcodes/8C.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -40,28 +40,29 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `1` | `0` | -| `14` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `1` | `0` | +| `14` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xSet%20state~1zzzzzzyyxDuplicateyDUP13'~yPUSH1%20z~0~0y%5Cnx%2F%2F%20%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/8D.mdx b/docs/opcodes/8D.mdx index 2fab2e71..778d06e7 100644 --- a/docs/opcodes/8D.mdx +++ b/docs/opcodes/8D.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -42,29 +42,30 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `1` | `0` | -| `15` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `1` | `0` | +| `15` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20statex1wwww~zzyDuplicatezDUP14'~x0z%5Cny%2F%2F%20xzPUSH1%20w~~~%01wxyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/8E.mdx b/docs/opcodes/8E.mdx index e97c6801..b8357983 100644 --- a/docs/opcodes/8E.mdx +++ b/docs/opcodes/8E.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -44,30 +44,31 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `0` | `0` | -| `15` | `1` | `0` | -| `16` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `0` | `0` | +| `15` | `1` | `0` | +| `16` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20statex1wwwwwwwzzyDuplicatezDUP15'~x0z%5Cny%2F%2F%20xzPUSH1%20w~~%01wxyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/8F.mdx b/docs/opcodes/8F.mdx index df47f387..3c0324bf 100644 --- a/docs/opcodes/8F.mdx +++ b/docs/opcodes/8F.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Duplication Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -46,31 +46,32 @@ group: Duplication Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `0` | `1` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `0` | `0` | -| `15` | `0` | `0` | -| `16` | `1` | `0` | -| `17` | | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `0` | `1` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `0` | `0` | +| `15` | `0` | `0` | +| `16` | `1` | `0` | +| `17` | | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='ySet%20statex1wwwwwzzyDuplicatezDUP16'~x0z%5Cny%2F%2F%20xzPUSH1%20w~~~%01wxyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - Stack overflow. diff --git a/docs/opcodes/90.mdx b/docs/opcodes/90.mdx index fb507ffa..4d09382f 100644 --- a/docs/opcodes/90.mdx +++ b/docs/opcodes/90.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -17,15 +17,16 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='zet%20statey2y1~~zwap~SWAP1'~%5Cnz%2F%2F%20Sy~PUSH1%20%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/91.mdx b/docs/opcodes/91.mdx index ad75fe04..0b522fa9 100644 --- a/docs/opcodes/91.mdx +++ b/docs/opcodes/91.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -19,16 +19,17 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2~0~1zzywapzSWAP2'~zPUSH1%20z%5Cny%2F%2F%20S%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/92.mdx b/docs/opcodes/92.mdx index c4c542b3..7c13cf79 100644 --- a/docs/opcodes/92.mdx +++ b/docs/opcodes/92.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -21,17 +21,18 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2~0~0~1zzywapzSWAP3'~zPUSH1%20z%5Cny%2F%2F%20S%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/93.mdx b/docs/opcodes/93.mdx index 6a53b5a1..17b5ef4b 100644 --- a/docs/opcodes/93.mdx +++ b/docs/opcodes/93.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -23,18 +23,19 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2~0~0~0~1zzywapzSWAP4'~zPUSH1%20z%5Cny%2F%2F%20S%01yz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/94.mdx b/docs/opcodes/94.mdx index 3dd5c887..9bf1a7fe 100644 --- a/docs/opcodes/94.mdx +++ b/docs/opcodes/94.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -25,19 +25,20 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2xxxx~1zzywapzSWAP5'~zPUSH1%20z%5Cny%2F%2F%20Sx~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/95.mdx b/docs/opcodes/95.mdx index e241fa2a..d974bd14 100644 --- a/docs/opcodes/95.mdx +++ b/docs/opcodes/95.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -27,20 +27,21 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2xxxxx~1zzywapzSWAP6'~zPUSH1%20z%5Cny%2F%2F%20Sx~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/96.mdx b/docs/opcodes/96.mdx index ae1e5b6b..7f52131a 100644 --- a/docs/opcodes/96.mdx +++ b/docs/opcodes/96.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -29,21 +29,22 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2xxx~1zzywapzSWAP7'~zPUSH1%20z%5Cny%2F%2F%20Sx~0~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/97.mdx b/docs/opcodes/97.mdx index 4347268c..9f675fa2 100644 --- a/docs/opcodes/97.mdx +++ b/docs/opcodes/97.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -31,22 +31,23 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `2` | `1` | +| \* | Input | Output | +| --: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2xxxxxxx~1zzywapzSWAP8'~zPUSH1%20z%5Cny%2F%2F%20Sx~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/98.mdx b/docs/opcodes/98.mdx index e0384ee0..446bd913 100644 --- a/docs/opcodes/98.mdx +++ b/docs/opcodes/98.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -33,23 +33,24 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='yet%20state~2xxxx~1zzywapzSWAP9'~zPUSH1%20z%5Cny%2F%2F%20Sx~0~0%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/99.mdx b/docs/opcodes/99.mdx index 98d6013e..5787218f 100644 --- a/docs/opcodes/99.mdx +++ b/docs/opcodes/99.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -35,24 +35,25 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzz~1yyxwapySWAP10'~yPUSH1%20z~0~0~0y%5Cnx%2F%2F%20S%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/9A.mdx b/docs/opcodes/9A.mdx index d2b764b5..9b4c99fd 100644 --- a/docs/opcodes/9A.mdx +++ b/docs/opcodes/9A.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -37,25 +37,26 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzzzz~1yyxwapySWAP11'~yPUSH1%20z~0~0y%5Cnx%2F%2F%20S%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/9B.mdx b/docs/opcodes/9B.mdx index cee1fed6..b1bb81c7 100644 --- a/docs/opcodes/9B.mdx +++ b/docs/opcodes/9B.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -39,26 +39,27 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzzzv1yyxwapySWAP12'~yPUSH1%20v0y%5Cnx%2F%2F%20Svz~0~%01vxyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/9C.mdx b/docs/opcodes/9C.mdx index 50e39ebc..74942606 100644 --- a/docs/opcodes/9C.mdx +++ b/docs/opcodes/9C.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -41,27 +41,28 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzzzzz~1yyxwapySWAP13'~yPUSH1%20z~0~0y%5Cnx%2F%2F%20S%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/9D.mdx b/docs/opcodes/9D.mdx index c10fdafb..34a26daa 100644 --- a/docs/opcodes/9D.mdx +++ b/docs/opcodes/9D.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -43,28 +43,29 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `0` | `0` | -| `15` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `0` | `0` | +| `15` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzzzzv1yyxwapySWAP14'~yPUSH1%20v0y%5Cnx%2F%2F%20Svz~0~%01vxyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/9E.mdx b/docs/opcodes/9E.mdx index a8a3eff6..8ea2956e 100644 --- a/docs/opcodes/9E.mdx +++ b/docs/opcodes/9E.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -45,29 +45,30 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `0` | `0` | -| `15` | `0` | `0` | -| `16` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `0` | `0` | +| `15` | `0` | `0` | +| `16` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzzzzzz~1yyxwapySWAP15'~yPUSH1%20z~0~0y%5Cnx%2F%2F%20S%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/9F.mdx b/docs/opcodes/9F.mdx index b35d73c9..69e8ea55 100644 --- a/docs/opcodes/9F.mdx +++ b/docs/opcodes/9F.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Exchange Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Stack input @@ -47,30 +47,31 @@ group: Exchange Operations ## Example -| * | Input | Output | -|--:|------:|-------:| -| `1` | `1` | `2` | -| `2` | `0` | `0` | -| `3` | `0` | `0` | -| `4` | `0` | `0` | -| `5` | `0` | `0` | -| `6` | `0` | `0` | -| `7` | `0` | `0` | -| `8` | `0` | `0` | -| `9` | `0` | `0` | -| `10` | `0` | `0` | -| `11` | `0` | `0` | -| `12` | `0` | `0` | -| `13` | `0` | `0` | -| `14` | `0` | `0` | -| `15` | `0` | `0` | -| `16` | `0` | `0` | -| `17` | `2` | `1` | +| \* | Input | Output | +| ---: | ----: | -----: | +| `1` | `1` | `2` | +| `2` | `0` | `0` | +| `3` | `0` | `0` | +| `4` | `0` | `0` | +| `5` | `0` | `0` | +| `6` | `0` | `0` | +| `7` | `0` | `0` | +| `8` | `0` | `0` | +| `9` | `0` | `0` | +| `10` | `0` | `0` | +| `11` | `0` | `0` | +| `12` | `0` | `0` | +| `13` | `0` | `0` | +| `14` | `0` | `0` | +| `15` | `0` | `0` | +| `16` | `0` | `0` | +| `17` | `2` | `1` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='xet%20state~2zzzzz~1yyxwapySWAP16'~yPUSH1%20z~0~0~0y%5Cnx%2F%2F%20S%01xyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/A0.mdx b/docs/opcodes/A0.mdx index e65f1ed7..1475f94e 100644 --- a/docs/opcodes/A0.mdx +++ b/docs/opcodes/A0.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Logging Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -17,6 +17,7 @@ This instruction has no effect on the EVM state. See [here](https://ethereum.org ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). diff --git a/docs/opcodes/A1.mdx b/docs/opcodes/A1.mdx index f5d4bf9f..b14007c9 100644 --- a/docs/opcodes/A1.mdx +++ b/docs/opcodes/A1.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Logging Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -18,6 +18,7 @@ This instruction has no effect on the EVM state. See [here](https://ethereum.org ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). diff --git a/docs/opcodes/A2.mdx b/docs/opcodes/A2.mdx index 40912a8d..f404b170 100644 --- a/docs/opcodes/A2.mdx +++ b/docs/opcodes/A2.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Logging Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -19,6 +19,7 @@ This instruction has no effect on the EVM state. See [here](https://ethereum.org ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). diff --git a/docs/opcodes/A3.mdx b/docs/opcodes/A3.mdx index 894d3f26..2c7098f3 100644 --- a/docs/opcodes/A3.mdx +++ b/docs/opcodes/A3.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Logging Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,6 +20,7 @@ This instruction has no effect on the EVM state. See [here](https://ethereum.org ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). diff --git a/docs/opcodes/A4.mdx b/docs/opcodes/A4.mdx index fbadea58..d17017f1 100644 --- a/docs/opcodes/A4.mdx +++ b/docs/opcodes/A4.mdx @@ -3,7 +3,7 @@ fork: Frontier group: Logging Operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -21,6 +21,7 @@ This instruction has no effect on the EVM state. See [here](https://ethereum.org ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). diff --git a/docs/opcodes/F0.mdx b/docs/opcodes/F0.mdx index 181f4631..aa1c13fa 100644 --- a/docs/opcodes/F0.mdx +++ b/docs/opcodes/F0.mdx @@ -45,4 +45,4 @@ The state changes done by the current context are [reverted](#FD) in those cases - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). -- `size` is greater than the chain's maximum initcode size (since Shanghai fork). \ No newline at end of file +- `size` is greater than the chain's maximum initcode size (since Shanghai fork). diff --git a/docs/opcodes/F1.mdx b/docs/opcodes/F1.mdx index 38bd2e4e..ac689d14 100644 --- a/docs/opcodes/F1.mdx +++ b/docs/opcodes/F1.mdx @@ -3,7 +3,7 @@ fork: Frontier group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -36,6 +36,7 @@ If the caller doesn't have enough balance to send the [value](/#34), the call fa ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) and the [value](/#34) (stack index 2) is not 0 (since Byzantium fork). diff --git a/docs/opcodes/F1/berlin.mdx b/docs/opcodes/F1/berlin.mdx index ded935a8..df7b0804 100644 --- a/docs/opcodes/F1/berlin.mdx +++ b/docs/opcodes/F1/berlin.mdx @@ -6,7 +6,8 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). - - If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. - - If `value` is not 0 and the `address` given points to an empty account, then `value_to_empty_account_cost` is {gasPrices|callNewAccount}. An account is empty if its balance is 0, its nonce is 0 and it has no code. + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). +- If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. +- If `value` is not 0 and the `address` given points to an empty account, then `value_to_empty_account_cost` is {gasPrices|callNewAccount}. An account is empty if its balance is 0, its nonce is 0 and it has no code. diff --git a/docs/opcodes/F1/homestead.mdx b/docs/opcodes/F1/homestead.mdx index 893bcb61..72cd2d43 100644 --- a/docs/opcodes/F1/homestead.mdx +++ b/docs/opcodes/F1/homestead.mdx @@ -6,6 +6,7 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. - - If no account exists at the given `address`, then `empty_account_cost` is {gasPrices|callNewAccount}. + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. +- If no account exists at the given `address`, then `empty_account_cost` is {gasPrices|callNewAccount}. diff --git a/docs/opcodes/F1/spuriousDragon.mdx b/docs/opcodes/F1/spuriousDragon.mdx index 9c8927a6..c35770f4 100644 --- a/docs/opcodes/F1/spuriousDragon.mdx +++ b/docs/opcodes/F1/spuriousDragon.mdx @@ -6,6 +6,7 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. - - If `value` is not 0 and the `address` given points to an empty account, then `value_to_empty_account_cost` is {gasPrices|callNewAccount}. An account is empty if its balance is 0, its nonce is 0 and it has no code. + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. +- If `value` is not 0 and the `address` given points to an empty account, then `value_to_empty_account_cost` is {gasPrices|callNewAccount}. An account is empty if its balance is 0, its nonce is 0 and it has no code. diff --git a/docs/opcodes/F2.mdx b/docs/opcodes/F2.mdx index 3a4f27ac..938cc129 100644 --- a/docs/opcodes/F2.mdx +++ b/docs/opcodes/F2.mdx @@ -3,7 +3,7 @@ fork: Frontier group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -36,6 +36,7 @@ If the caller doesn't have enough balance to send the [value](/#34), the call fa ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) and the [value](/#34) (stack index 2) is not 0 (since Byzantium fork). diff --git a/docs/opcodes/F2/berlin.mdx b/docs/opcodes/F2/berlin.mdx index a6c74bde..266a675d 100644 --- a/docs/opcodes/F2/berlin.mdx +++ b/docs/opcodes/F2/berlin.mdx @@ -6,6 +6,7 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). - - If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). +- If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. diff --git a/docs/opcodes/F2/homestead.mdx b/docs/opcodes/F2/homestead.mdx index 51893858..59635ae5 100644 --- a/docs/opcodes/F2/homestead.mdx +++ b/docs/opcodes/F2/homestead.mdx @@ -6,5 +6,6 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `value` is not 0, then `positive_value_cost` is {gasPrices|callValueTransfer}. In this case there is also a call stipend that is given to make sure that a basic fallback function can be called. {gasPrices|callStipend} is thus removed from the cost, and also added to the `gas` input. diff --git a/docs/opcodes/F3.mdx b/docs/opcodes/F3.mdx index a11744cc..ced6a604 100644 --- a/docs/opcodes/F3.mdx +++ b/docs/opcodes/F3.mdx @@ -3,7 +3,7 @@ fork: Frontier group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -16,23 +16,24 @@ Exits the current [context](/about) successfully. ## Example -| `1` | Memory | -|--:|------:| +| `1` | Memory | +| --: | -------: | | `1` | `0xFF01` | -| * | Input | -|--:|-----:| -| `1` | `0` | -| `1` | `2` | +| \* | Input | +| --: | ----: | +| `1` | `0` | +| `1` | `2` | | `1` | Calling context return data | -|--:|---------------------------:| -| `1` | `0xFF01` | +| --: | --------------------------: | +| `1` | `0xFF01` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wSet%20the%20statev32%200xFF01uuuuuz0yMSTOREyywExamplez2z0yRETURN'~000000zv1%20y%5Cnw%2F%2F%20vyPUSHu~~%01uvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/F4.mdx b/docs/opcodes/F4.mdx index ce345b37..188b9c07 100644 --- a/docs/opcodes/F4.mdx +++ b/docs/opcodes/F4.mdx @@ -3,7 +3,7 @@ fork: Byzantium group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -33,5 +33,6 @@ From the Tangerine Whistle fork, `gas` is capped at all but one 64th (`remaining ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/F4/berlin.mdx b/docs/opcodes/F4/berlin.mdx index c0aebdeb..e8baa5d5 100644 --- a/docs/opcodes/F4/berlin.mdx +++ b/docs/opcodes/F4/berlin.mdx @@ -6,5 +6,6 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). diff --git a/docs/opcodes/F4/homestead.mdx b/docs/opcodes/F4/homestead.mdx index 6979e9ac..01b7977f 100644 --- a/docs/opcodes/F4/homestead.mdx +++ b/docs/opcodes/F4/homestead.mdx @@ -6,4 +6,5 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). diff --git a/docs/opcodes/F5.mdx b/docs/opcodes/F5.mdx index d9829c3a..b173a49e 100644 --- a/docs/opcodes/F5.mdx +++ b/docs/opcodes/F5.mdx @@ -3,7 +3,7 @@ fork: Constantinople group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -17,6 +17,7 @@ The destination address is calculated as follows: address = keccak256(0xff + sender_address + salt + keccak256(initialisation_code))[12:] Deployment can fail due to: + - A contract already exists at the destination address. - Insufficient value to transfer. - Sub [context](/about) [reverted](/#FD). @@ -43,7 +44,8 @@ Note that these failures only affect the return value and do not cause the calli ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA). -- `size` is greater than the chain's maximum initcode size (since Shanghai fork). \ No newline at end of file +- `size` is greater than the chain's maximum initcode size (since Shanghai fork). diff --git a/docs/opcodes/FA.mdx b/docs/opcodes/FA.mdx index b19ff764..2bbd6218 100644 --- a/docs/opcodes/FA.mdx +++ b/docs/opcodes/FA.mdx @@ -3,7 +3,7 @@ fork: Byzantium group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -31,5 +31,6 @@ From the Tangerine Whistle fork, `gas` is capped at all but one 64th (`remaining ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/FA/berlin.mdx b/docs/opcodes/FA/berlin.mdx index c0aebdeb..e8baa5d5 100644 --- a/docs/opcodes/FA/berlin.mdx +++ b/docs/opcodes/FA/berlin.mdx @@ -6,5 +6,6 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). - - If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). +- If `address` is warm, then `address_access_cost` is {gasPrices|warmstorageread}, otherwise it is {gasPrices|coldaccountaccess}. See section [access sets](/about). diff --git a/docs/opcodes/FA/homestead.mdx b/docs/opcodes/FA/homestead.mdx index 6979e9ac..01b7977f 100644 --- a/docs/opcodes/FA/homestead.mdx +++ b/docs/opcodes/FA/homestead.mdx @@ -6,4 +6,5 @@ The memory expansion cost explanation can be found [here](/about). The different costs are: - - `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). + +- `code_execution_cost` is the cost of the called code execution (limited by the `gas` parameter). diff --git a/docs/opcodes/FD.mdx b/docs/opcodes/FD.mdx index e207986e..4c5381d7 100644 --- a/docs/opcodes/FD.mdx +++ b/docs/opcodes/FD.mdx @@ -3,7 +3,7 @@ fork: Byzantium group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -19,23 +19,24 @@ The [return data](/about) of the calling context is set as the given chunk of me ## Example -| `1` | Memory | -|--:|------:| +| `1` | Memory | +| --: | -------: | | `1` | `0xFF01` | -| * | Input | -|--:|-----:| -| `1` | `0` | -| `1` | `2` | +| \* | Input | +| --: | ----: | +| `1` | `0` | +| `1` | `2` | | `1` | Calling context return data | -|--:|---------------------------:| -| `1` | `0xFF01` | +| --: | --------------------------: | +| `1` | `0xFF01` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wSet%20the%20statev32%200xFF01uuuuuz0yMSTOREyywExamplez2z0yREVERT'~000000zv1%20y%5Cnw%2F%2F%20vyPUSHu~~%01uvwyz~_). ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. diff --git a/docs/opcodes/FF.mdx b/docs/opcodes/FF.mdx index 53f109c5..07895002 100644 --- a/docs/opcodes/FF.mdx +++ b/docs/opcodes/FF.mdx @@ -3,7 +3,7 @@ fork: Frontier group: System operations --- -*Index 1 is top of the stack. See [PUSH](/#60).* +_Index 1 is top of the stack. See [PUSH](/#60)._ ## Notes @@ -20,6 +20,7 @@ The current account is registered to be destroyed, and will be at the end of the ## Error cases The state changes done by the current context are [reverted](#FD) in those cases: + - Not enough gas. - Not enough values on the stack. - The current execution context is from a [STATICCALL](/#FA) (since Byzantium fork). diff --git a/docs/precompiled/0x01.mdx b/docs/precompiled/0x01.mdx index 7ce5b076..a14781c0 100644 --- a/docs/precompiled/0x01.mdx +++ b/docs/precompiled/0x01.mdx @@ -8,28 +8,28 @@ More information about ECDSA can be found [here](https://en.wikipedia.org/wiki/E ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 31]` (32 bytes) | hash | Keccack-256 hash of the transaction | -| `[32; 63]` (32 bytes) | v | Recovery identifier, expected to be either 27 or 28 | -| `[64; 95]` (32 bytes) | r | x-value, expected to be in the range `]0; secp256k1n[` | -| `[96; 127]` (32 bytes) | s | Expected to be in the range `]0; secp256k1n[` | +| Byte range | Name | Description | +| ---------------------: | ---: | -----------------------------------------------------: | +| `[0; 31]` (32 bytes) | hash | Keccack-256 hash of the transaction | +| `[32; 63]` (32 bytes) | v | Recovery identifier, expected to be either 27 or 28 | +| `[64; 95]` (32 bytes) | r | x-value, expected to be in the range `]0; secp256k1n[` | +| `[96; 127]` (32 bytes) | s | Expected to be in the range `]0; secp256k1n[` | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| -----------------: | ------------: | ------------------------------------------------------: | | [0; 31] (32 bytes) | publicAddress | The recovered 20-byte address right aligned to 32 bytes | If an address cannot be recovered or not enough gas was given, then there is no return data, indicating a precompile contract error. Please note, that the return data is the address that issued the signature but it won't verify the signature. ## Example -| Input | Output | -|------:|-------:| +| Input | Output | +| -------------------------------------------------------------------: | -------------------------------------------: | | `0x456e9aea5e197a1f1af7a3e85a3212fa4049a3ba34c2289b4c860fc0b0c64ef3` | `0x7156526fbd7a3c72969b54f64e42c10fbb768c8a` | -| `28` | | -| `0x9242685bf161793cc25603c231bc2f568eb630ea16aa137d2664ac8038825608` | | -| `0x4f8ae3bd7535248d0bd448298cc2e2071e56992d0774dc340c368ae950852ada` | | +| `28` | | +| `0x9242685bf161793cc25603c231bc2f568eb630ea16aa137d2664ac8038825608` | | +| `0x4f8ae3bd7535248d0bd448298cc2e2071e56992d0774dc340c368ae950852ada` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='jFirsNplace_parameters%20in%20memoryZ456e9aea5e197a1f1af7a3e85a3212fa4049a3ba34c2289b4c860fc0b0c64ef3whash~Y~28wvX2YZ9242685bf161793cc25603c231bc2f568eb630ea16aa137d2664ac8038825608wrX4YZ4f8ae3bd7535248d0bd448298cc2e2071e56992d0774dc340c368ae950852adawsX6YqqjDo_call~32JSizeX80JOffsetX8VSize~VOffset~1waddressW4QFFFFFFFFwgasqSTATICCALLqqjPut_resulNalonKon_stackqPOPX80qMLOAD'~W1%20w%20jq%5Cnj%2F%2F%20_%20thKZW32QY0qMSTOREX~0xWqPUSHV0wargsQ%200xNt%20Ke%20Jwret%01JKNQVWXYZ_jqw~_). diff --git a/docs/precompiled/0x02.mdx b/docs/precompiled/0x02.mdx index a4d13716..e8b633fb 100644 --- a/docs/precompiled/0x02.mdx +++ b/docs/precompiled/0x02.mdx @@ -4,22 +4,22 @@ fork: Frontier ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| ------------: | ---: | -------------------------: | | `[0; length[` | data | Data to hash with SHA2-256 | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| -----------------: | ---: | --------------: | | [0; 31] (32 bytes) | hash | The result hash | - If not enough gas was given, then there is no return data, indicating a precompile contract error. +If not enough gas was given, then there is no return data, indicating a precompile contract error. ## Example -| Input | Output | -|------:|-------:| +| Input | Output | +| -----: | -----------------------------------------------------------------: | | `0xFF` | `a8100ae6aa1940d0b663bb31cd466142ebbdbd5187131b92d93818987832eb89` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wFirsWplaceqparameters%20in%20memorybFFjdata~0vMSTOREvvwDoqcallZSizeZ_1XSizeb1FX_2jaddressY4%200xFFFFFFFFjgasvSTATICCALLvvwPutqresulWalonVonqstackvPOPb20vMLOAD'~Y1j%2F%2F%20v%5Cnq%20thVj%20wb~0x_Offset~Zb20jretYvPUSHXjargsWt%20Ve%20%01VWXYZ_bjqvw~_). diff --git a/docs/precompiled/0x03.mdx b/docs/precompiled/0x03.mdx index 005f17e6..885ff5d1 100644 --- a/docs/precompiled/0x03.mdx +++ b/docs/precompiled/0x03.mdx @@ -4,22 +4,22 @@ fork: Frontier ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| ------------: | ---: | ---------------------------: | | `[0; length[` | data | Data to hash with RIPEMD-160 | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| -----------------: | ---: | ------------------------------------------------: | | [0; 31] (32 bytes) | hash | The result 20-byte hash right aligned to 32 bytes | - If not enough gas was given, then there is no return data, indicating a precompile contract error. +If not enough gas was given, then there is no return data, indicating a precompile contract error. ## Example -| Input | Output | -|------:|-------:| +| Input | Output | +| -----: | -----------------------------------------: | | `0xFF` | `2c0c45d3ecab80fe060e5f1d7057cd2f8de5e557` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wFirsWplaceqparameters%20in%20memorybFFjdata~0vMSTOREvvwDoqcallZSizeZ_1XSizeb1FX_3jaddressY4%200xFFFFFFFFjgasvSTATICCALLvvwPutqresulWalonVonqstackvPOPb20vMLOAD'~Y1j%2F%2F%20v%5Cnq%20thVj%20wb~0x_Offset~Zb20jretYvPUSHXjargsWt%20Ve%20%01VWXYZ_bjqvw~_). diff --git a/docs/precompiled/0x04.mdx b/docs/precompiled/0x04.mdx index 80b5f70a..079cf0cc 100644 --- a/docs/precompiled/0x04.mdx +++ b/docs/precompiled/0x04.mdx @@ -8,22 +8,22 @@ The identity function is typically used to copy a chunk of memory. ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| ------------: | ---: | -------------: | | `[0; length[` | data | Data to return | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| ------------: | ---: | --------------: | | `[0; length[` | data | Data from input | - If not enough gas was given, then there is no return data, indicating a precompile contract error. +If not enough gas was given, then there is no return data, indicating a precompile contract error. ## Example -| Input | Output | -|------:|-------:| +| Input | Output | +| -----: | -----: | | `0xFF` | `0xFF` | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wFirsWplaceqparameters%20in%20memorybFFjdata~0vMSTOREvvwDoqcall~1QX3FQ_1YX1FY_4jaddressZ4%200xFFFFFFFFjgasvSTATICCALLvvwPutqresulWalonVonqstackvPOPb20vMLOAD'~Z1j%2F%2F%20v%5Cnq%20thVj%20wb~0x_Offset~ZvPUSHYjargsXSizebWt%20Ve%20Qjret%01QVWXYZ_bjqvw~_). diff --git a/docs/precompiled/0x05.mdx b/docs/precompiled/0x05.mdx index 65b10779..7b705ff8 100644 --- a/docs/precompiled/0x05.mdx +++ b/docs/precompiled/0x05.mdx @@ -4,32 +4,32 @@ fork: Byzantium ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 31]` (32 bytes) | Bsize | Byte size of B | -| `[32; 63]` (32 bytes) | Esize | Byte size of E | -| `[64; 95]` (32 bytes) | Msize | Byte size of M | -| `[96; 96 + Bsize[` | B | Base as unsigned integer | -| `[96 + Bsize; 96 + Bsize + Esize[` | E | Exponent as unsigned integer, if zero, then `B ** E` will be one | -| `[96 + Bsize + Esize; 96 + Bsize + Esize + Msize[` | M | Modulo as unsigned integer, if zero, then returns zero | +| Byte range | Name | Description | +| -------------------------------------------------: | ----: | ---------------------------------------------------------------: | +| `[0; 31]` (32 bytes) | Bsize | Byte size of B | +| `[32; 63]` (32 bytes) | Esize | Byte size of E | +| `[64; 95]` (32 bytes) | Msize | Byte size of M | +| `[96; 96 + Bsize[` | B | Base as unsigned integer | +| `[96 + Bsize; 96 + Bsize + Esize[` | E | Exponent as unsigned integer, if zero, then `B ** E` will be one | +| `[96 + Bsize + Esize; 96 + Bsize + Esize + Msize[` | M | Modulo as unsigned integer, if zero, then returns zero | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| -----------: | ----: | ------------------------------------------------------------: | | `[0; mSize[` | value | Result of the computation, with the same number of bytes as M | - If not enough gas was given, then there is no return data, indicating a precompile contract error. +If not enough gas was given, then there is no return data, indicating a precompile contract error. ## Example | Input | Output | -|------:|-------:| -| `1` | `8` | -| `1` | | -| `1` | | -| `8` | | -| `9` | | -| `10` | | +| ----: | -----: | +| `1` | `8` | +| `1` | | +| `1` | | +| `8` | | +| `9` | | +| `10` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='jFirsNplacebparameters%20in%20memoryWBsZ_WEsZX2_WMsZX4_Y32G08090A7777JwB%2C%20E%20and%20M~X6_qqjDobcallWretSZX9FwretVX63QSZ0QV5waddressY4GFFFFFFFFwgasqSTATICCALLqqjPutbresulNalonKonbstackqPOP~X80qMLOAD'~Y1%20w%20jvJJJ0q%5Cnj%2F%2F%20b%20thK_0qMSTOREZize~YqPUSHX0xW~1wVOffset~QwargsNt%20Ke%20J00G%20X7vv%017GJKNQVWXYZ_bjqvw~_). diff --git a/docs/precompiled/0x06.mdx b/docs/precompiled/0x06.mdx index 0cd1e28b..a7bfb130 100644 --- a/docs/precompiled/0x06.mdx +++ b/docs/precompiled/0x06.mdx @@ -8,29 +8,29 @@ The point at infinity is encoded with both field `x` and `y` at `0`. ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 31]` (32 bytes) | x1 | X coordinate of the first point on the elliptic curve 'alt_bn128'| -| `[32; 63]` (32 bytes) | y1 | Y coordinate of the first point on the elliptic curve 'alt_bn128' | -| `[64; 95]` (32 bytes) | x2 | X coordinate of the second point on the elliptic curve 'alt_bn128' | -| `[96; 128]` (32 bytes) | y2 | Y coordinate of the second point on the elliptic curve 'alt_bn128' | +| Byte range | Name | Description | +| ---------------------: | ---: | -----------------------------------------------------------------: | +| `[0; 31]` (32 bytes) | x1 | X coordinate of the first point on the elliptic curve 'alt_bn128' | +| `[32; 63]` (32 bytes) | y1 | Y coordinate of the first point on the elliptic curve 'alt_bn128' | +| `[64; 95]` (32 bytes) | x2 | X coordinate of the second point on the elliptic curve 'alt_bn128' | +| `[96; 128]` (32 bytes) | y2 | Y coordinate of the second point on the elliptic curve 'alt_bn128' | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 31]` (32 bytes) | x | X coordinate of the result point on the elliptic curve 'alt_bn128' | -| `[32; 63]` (32 bytes) | y | Y coordinate of the result point on the elliptic curve 'alt_bn128' | +| Byte range | Name | Description | +| --------------------: | ---: | -----------------------------------------------------------------: | +| `[0; 31]` (32 bytes) | x | X coordinate of the result point on the elliptic curve 'alt_bn128' | +| `[32; 63]` (32 bytes) | y | Y coordinate of the result point on the elliptic curve 'alt_bn128' | If the input is not valid, all gas provided is consumed and there is no return data, indicating a precompile contract error. Also, if not enough gas was given, there is no return data. ## Example -| Input | Output | -|------:|-------:| -| `1` | `0x030644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd3` | -| `2` | `0x15ed738c0e0a7c92e7845f96b2ae9c0a68a6a449e3538fc7ff3ebf7a5a18a2c4` | -| `1` | | -| `2` | | +| Input | Output | +| ----: | -------------------------------------------------------------------: | +| `1` | `0x030644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd3` | +| `2` | `0x15ed738c0e0a7c92e7845f96b2ae9c0a68a6a449e3538fc7ff3ebf7a5a18a2c4` | +| `1` | | +| `2` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='qFirsQplacejparameters%20in%20memoryK1~V1_2bK2_4V2_6bvvqDojcall_4WSize_8WOffset_8YSize~YOffset~6waddressX4%200xFFFFFFFFwgasvSTATICCALLvvqPutjresulQalonNonjstackvPOP_AZ_8Z'~X1%20w%20qv%5Cnq%2F%2F%20j%20thNb0vMSTORE_~0xZ0vMLOADY0wargsXvPUSHW0wretVb~2wyQt%20Ne%20K~1wx%01KNQVWXYZ_bjqvw~_). diff --git a/docs/precompiled/0x07.mdx b/docs/precompiled/0x07.mdx index 640c2564..059ba3b6 100644 --- a/docs/precompiled/0x07.mdx +++ b/docs/precompiled/0x07.mdx @@ -8,27 +8,27 @@ The point at infinity is encoded with both field `x` and `y` at `0`. ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 31]` (32 bytes) | x1 | X coordinate of the first point on the elliptic curve 'alt_bn128'| -| `[32; 63]` (32 bytes) | y1 | Y coordinate of the first point on the elliptic curve 'alt_bn128' | -| `[64; 95]` (32 bytes) | s | Scalar to use for the multiplication | +| Byte range | Name | Description | +| --------------------: | ---: | ----------------------------------------------------------------: | +| `[0; 31]` (32 bytes) | x1 | X coordinate of the first point on the elliptic curve 'alt_bn128' | +| `[32; 63]` (32 bytes) | y1 | Y coordinate of the first point on the elliptic curve 'alt_bn128' | +| `[64; 95]` (32 bytes) | s | Scalar to use for the multiplication | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 31]` (32 bytes) | x | X coordinate of the result point on the elliptic curve 'alt_bn128' | -| `[32; 63]` (32 bytes) | y | Y coordinate of the result point on the elliptic curve 'alt_bn128' | +| Byte range | Name | Description | +| --------------------: | ---: | -----------------------------------------------------------------: | +| `[0; 31]` (32 bytes) | x | X coordinate of the result point on the elliptic curve 'alt_bn128' | +| `[32; 63]` (32 bytes) | y | Y coordinate of the result point on the elliptic curve 'alt_bn128' | If the input is not valid, all gas provided is consumed and there is no return data, indicating a precompile contract error. Also, if not enough gas was given, there is no return data. ## Example -| Input | Output | -|------:|-------:| -| `1` | `0x030644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd3` | -| `2` | `0x15ed738c0e0a7c92e7845f96b2ae9c0a68a6a449e3538fc7ff3ebf7a5a18a2c4` | -| `2` | | +| Input | Output | +| ----: | -------------------------------------------------------------------: | +| `1` | `0x030644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd3` | +| `2` | `0x15ed738c0e0a7c92e7845f96b2ae9c0a68a6a449e3538fc7ff3ebf7a5a18a2c4` | +| `2` | | [Reproduce in playground](/playground?unit=Wei&codeType=Mnemonic&code='wFirsVplacejparameters%20in%20memory~1qx1~Ny1_2Ns_4bvvwDojcall_4WSize_6WOffset_6YSize~YOffset~7qaddressX4%200xFFFFFFFFqgasvSTATICCALLvvwPutjresulValonQonjstackvPOP_8Z_6Z'~X1q%2F%2F%20v%5Cnq%20wj%20thQb0vMSTORE_~0xZ0vMLOADY0qargsXvPUSHW0qretVt%20Qe%20Nb~2q%01NQVWXYZ_bjqvw~_). diff --git a/docs/precompiled/0x08.mdx b/docs/precompiled/0x08.mdx index b2dfc5e8..456fc9c7 100644 --- a/docs/precompiled/0x08.mdx +++ b/docs/precompiled/0x08.mdx @@ -10,38 +10,38 @@ The point at infinity is encoded with both field `x` and `y` at `0`. The input must always be a multiple of 6 32-byte values. 0 inputs is valid and returns 1. One set of inputs is defined as follows: -| Byte range | Name | -|-----------:|-----:| -| `[0; 31]` (32 bytes) | x1 | -| `[32; 63]` (32 bytes) | y1 | -| `[64; 95]` (32 bytes) | x2 | -| `[96; 127]` (32 bytes) | y2 | -| `[128; 159]` (32 bytes) | x3 | -| `[160; 191]` (32 bytes) | y3 | +| Byte range | Name | +| ----------------------: | ---: | +| `[0; 31]` (32 bytes) | x1 | +| `[32; 63]` (32 bytes) | y1 | +| `[64; 95]` (32 bytes) | x2 | +| `[96; 127]` (32 bytes) | y2 | +| `[128; 159]` (32 bytes) | x3 | +| `[160; 191]` (32 bytes) | y3 | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| +| Byte range | Name | Description | +| -------------------: | ------: | ------------------------------------------: | | `[0; 31]` (32 bytes) | success | 1 if the pairing was a success, 0 otherwise | If the input is not valid, all gas provided is consumed and there is no return data, indicating a precompile contract error. Also, if not enough gas was given, there is no return data. ## Example -| Input | Output | -|------:|-------:| -| `0x2cf44499d5d27bb186308b7af7af02ac5bc9eeb6a3d147c186b21fb1b76e18da` | `1` | -| `0x2c0f001f52110ccfe69108924926e45f0b0c868df0e7bde1fe16d3242dc715f6` | | -| `0x1fb19bb476f6b9e44e2a32234da8212f61cd63919354bc06aef31e3cfaff3ebc` | | -| `0x22606845ff186793914e03e21df544c34ffe2f2f3504de8a79d9159eca2d98d9` | | -| `0x2bd368e28381e8eccb5fa81fc26cf3f048eea9abfdd85d7ed3ab3698d63e4f90` | | -| `0x2fe02e47887507adf0ff1743cbac6ba291e66f59be6bd763950bb16041a0a85e` | | -| `0x0000000000000000000000000000000000000000000000000000000000000001` | | -| `0x30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd45` | | -| `0x1971ff0471b09fa93caaf13cbf443c1aede09cc4328f5a62aad45f40ec133eb4` | | -| `0x091058a3141822985733cbdddfed0fd8d6c104e9e9eff40bf5abfef9ab163bc7` | | -| `0x2a23af9a5ce2ba2796c1f4e453a370eb0af8c212d9dc9acd8fc02c2e907baea2` | | -| `0x23a8eb0b0996252cb548a4487da97b02422ebc0e834613f954de6c7e0afdc1fc` | | - -[Reproduce in playground](/playground?unit=Wei&codeType=Solidity&code='O%20SPDX-License-Identifier%3A%20MITRpragma%20soliditB%5E0.8.9%3BRRcontracAPair*gExpampl!(Rkfunction%20run%7BNpublic%20returnK%7Bu*tN(~u*t256%5B12%5D%20memorBU%3BWJxj0w2cf44499d5d27bbF6308b7af7af02ac5bc9eeb6a3d147cF6b2Hb1b76eFdaQWJyj1w2c0f00H52110ccfe6C08924926e45f0b0c868df0e7bdeHe16d3242dc715f6QW2%7Dx_1j2wHb19bb476f6b9e44e2a32234da8212f61cd63C9354bc06aef31e3cfaff3ebcVx_0j3w22606845ffF6793C4e03e21df544c34ffe2f2f3504de8a79dC59eca2d98d9Vy_1j4w2bd368e28381e8eccb5fa8Hc26cf3f048eea9abfdd85d7ed3ab3698d63e4f90Vy_0j5w2fe02e47887507adf0ff1743cbac6ba2Ce66f59be6bd763950bb16041a0a85eqJxj6wZZZZZZZZZ1qJyj7w30644e72e131a029b85045b68F1585d97816aC6871ca8d3c208c16d87cfd45Vx_1j8w197Hf0471b09fa93caaf13cbf443c1aede09cc4328f5a62aad45f40ec133eb4Vx_0j9w0C058a314F22985733cbdddfed0fd8d6c104e9e9eff40bf5abfef9ab163bc7Vy_1j10w2a23af9a5ce2ba2796cH4e453a370eb0af8c212d9dc9acd8fc02c2e907baea2Vy_0j11w23a8eb0b0996252cb548a4487da97b02422ebc0e834613f954de6c7e0afdcHcQ~OmultiplieKth!pair*gKand%20storeKa%201%20*%20th!firsAelemenAof%20U~assemblB(~kif%20iszero%7B~kkcall%7Bnot%7B0%7DY0x08Y0YUY0x0F0YUY0x20%7D~kN(~kkrevert%7B0Y0%7D~k)~)~return%20U%5B0%5D%3BRk)R)'~Rkkw%5D%20%3D%20u*t256%7B0xqQ%5CtWk%20%20%20%20j~U%5BZ0000000Y%2C%20W~O%7BGVq2%7DU*putR%5CnQ%7D%3BO%2F%2FN%7D%20Ks%20J1%7DH1fF18C91By%20At%20*in!e%20%01!*ABCFHJKNOQRUVWYZjkqw~_) +| Input | Output | +| -------------------------------------------------------------------: | -----: | +| `0x2cf44499d5d27bb186308b7af7af02ac5bc9eeb6a3d147c186b21fb1b76e18da` | `1` | +| `0x2c0f001f52110ccfe69108924926e45f0b0c868df0e7bde1fe16d3242dc715f6` | | +| `0x1fb19bb476f6b9e44e2a32234da8212f61cd63919354bc06aef31e3cfaff3ebc` | | +| `0x22606845ff186793914e03e21df544c34ffe2f2f3504de8a79d9159eca2d98d9` | | +| `0x2bd368e28381e8eccb5fa81fc26cf3f048eea9abfdd85d7ed3ab3698d63e4f90` | | +| `0x2fe02e47887507adf0ff1743cbac6ba291e66f59be6bd763950bb16041a0a85e` | | +| `0x0000000000000000000000000000000000000000000000000000000000000001` | | +| `0x30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd45` | | +| `0x1971ff0471b09fa93caaf13cbf443c1aede09cc4328f5a62aad45f40ec133eb4` | | +| `0x091058a3141822985733cbdddfed0fd8d6c104e9e9eff40bf5abfef9ab163bc7` | | +| `0x2a23af9a5ce2ba2796c1f4e453a370eb0af8c212d9dc9acd8fc02c2e907baea2` | | +| `0x23a8eb0b0996252cb548a4487da97b02422ebc0e834613f954de6c7e0afdc1fc` | | + +[Reproduce in playground]() diff --git a/docs/precompiled/0x09.mdx b/docs/precompiled/0x09.mdx index bc05712d..b2b51f47 100644 --- a/docs/precompiled/0x09.mdx +++ b/docs/precompiled/0x09.mdx @@ -4,30 +4,30 @@ fork: Istanbul ## Inputs -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 3]` (4 bytes) | rounds | Number of rounds (big-endian unsigned integer) | -| `[4; 67]` (64 bytes) | h | State vector (8 8-byte little-endian unsigned integer) | -| `[68; 195]` (128 bytes) | m | Message block vector (16 8-byte little-endian unsigned integer) | -| `[196; 211]` (16 bytes) | t | Offset counters (2 8-byte little-endian integer) | -| `[212; 212]` (1 bytes) | f | Final block indicator flag (0 or 1) | +| Byte range | Name | Description | +| ----------------------: | -----: | --------------------------------------------------------------: | +| `[0; 3]` (4 bytes) | rounds | Number of rounds (big-endian unsigned integer) | +| `[4; 67]` (64 bytes) | h | State vector (8 8-byte little-endian unsigned integer) | +| `[68; 195]` (128 bytes) | m | Message block vector (16 8-byte little-endian unsigned integer) | +| `[196; 211]` (16 bytes) | t | Offset counters (2 8-byte little-endian integer) | +| `[212; 212]` (1 bytes) | f | Final block indicator flag (0 or 1) | ## Output -| Byte range | Name | Description | -|-----------:|-----:|------------:| -| `[0; 63]` (64 bytes) | h | State vector (8 8-byte little-endian unsigned integer) | +| Byte range | Name | Description | +| -------------------: | ---: | -----------------------------------------------------: | +| `[0; 63]` (64 bytes) | h | State vector (8 8-byte little-endian unsigned integer) | If the input is not valid, all gas provided is consumed and there is no return data, indicating a precompile contract error. Also, if not enough gas was given, there is no return data. ## Example -| Input | Output | -|------:|-------:| -| `0x0000000c` | `0xba80a53f981c4d0d6a2797b69f12f6e94c212f14685ac4b74b12bb6fdbffa2d17d87c5392aab792dc252d5de4533cc9518d38aa8dbf1925ab92386edd4009923` | -| `0x48c9bdf267e6096a3ba7ca8485ae67bb2bf894fe72f36e3cf1361d5f3af54fa5d182e6ad7f520e511f6c3e2b8c68059b6bbd41fbabd9831f79217e1319cde05b` | | -| `0x6162630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000` | | -| `0x03000000000000000000000000000000` | | -| `0x01` | | +| Input | Output | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------: | +| `0x0000000c` | `0xba80a53f981c4d0d6a2797b69f12f6e94c212f14685ac4b74b12bb6fdbffa2d17d87c5392aab792dc252d5de4533cc9518d38aa8dbf1925ab92386edd4009923` | +| `0x48c9bdf267e6096a3ba7ca8485ae67bb2bf894fe72f36e3cf1361d5f3af54fa5d182e6ad7f520e511f6c3e2b8c68059b6bbd41fbabd9831f79217e1319cde05b` | | +| `0x6162630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000` | | +| `0x03000000000000000000000000000000` | | +| `0x01` | | [Reproduce in playground]() diff --git a/docs/transactions/T0/T0.mdx b/docs/transactions/T0/T0.mdx index 79f5ac6f..0c8e207f 100644 --- a/docs/transactions/T0/T0.mdx +++ b/docs/transactions/T0/T0.mdx @@ -1,5 +1,3 @@ # Type 0 - User Transactions Represent transactions pré-[EIP-2718](https://eips.ethereum.org/EIPS/eip-2718). - - diff --git a/lib/solcWorker.js b/lib/solcWorker.js index b112d4f8..3d71ae9b 100644 --- a/lib/solcWorker.js +++ b/lib/solcWorker.js @@ -181,13 +181,13 @@ onmessage = function (e) { } } - const contracts = []; + const contracts = [] for (const contractName in output.contracts.web) { contracts.push({ name: contractName, code: output.contracts.web[contractName].evm.bytecode.object, - abi: output.contracts.web[contractName].abi + abi: output.contracts.web[contractName].abi, }) } diff --git a/lib/useActions.tsx b/lib/useActions.tsx index c3ff9243..d8c6986f 100644 --- a/lib/useActions.tsx +++ b/lib/useActions.tsx @@ -50,7 +50,7 @@ const useActions = () => { icon: , }, ], - }, + }, { id: 'opcodes', name: 'Opcodes', diff --git a/styles/globals.css b/styles/globals.css index fd2950b6..ae7444da 100644 --- a/styles/globals.css +++ b/styles/globals.css @@ -130,7 +130,7 @@ html { .select__option { @apply text-sm py-2 px-3 font-normal text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-white cursor-pointer hover:bg-gray-50 dark:hover:bg-black-500 !important; - @apply capitalize + @apply capitalize; } .select__option--is-selected { diff --git a/transactions.json b/transactions.json index 5569c23a..fea04928 100644 --- a/transactions.json +++ b/transactions.json @@ -1,91 +1,90 @@ { - "type0": { - "type": "T0", - "name": "User Transactions (Pre-EIP-2718)", - "description": "Represent pre-EIP-2718 transactions", - "rollups": { - "optimism": { - "details": "Transactions as per Optimism specifications for pre-EIP-2718." - }, - "base": { - "details": "Transactions as per Base specifications for pre-EIP-2718." - }, - "arbitrumOne": { - "details": "Transactions as per Arbitrum One specifications for pre-EIP-2718." - }, - "linea": { - "details": "Transactions as per Linea specifications for pre-EIP-2718." - }, - "polygonZkEVM": { - "details": "Transactions as per Polygon zkEVM specifications for pre-EIP-2718." - }, - "scroll": { - "details": "Transactions as per Scroll specifications for pre-EIP-2718." - }, - "taiko": { - "details": "Transactions as per Taiko specifications for pre-EIP-2718." - } - } + "type0": { + "type": "T0", + "name": "User Transactions (Pre-EIP-2718)", + "description": "Represent pre-EIP-2718 transactions", + "rollups": { + "optimism": { + "details": "Transactions as per Optimism specifications for pre-EIP-2718." }, - "type1": { - "type": "T1", - "name": "User Transactions (Post EIP-2718)", - "description": "Represent legacy transactions post EIP-2718", - "rollups": { - "optimism": { - "details": "Transactions as per Optimism specifications for post EIP-2718." - }, - "base": { - "details": "Transactions as per Base specifications for post EIP-2718." - } + "base": { + "details": "Transactions as per Base specifications for pre-EIP-2718." + }, + "arbitrumOne": { + "details": "Transactions as per Arbitrum One specifications for pre-EIP-2718." + }, + "linea": { + "details": "Transactions as per Linea specifications for pre-EIP-2718." + }, + "polygonZkEVM": { + "details": "Transactions as per Polygon zkEVM specifications for pre-EIP-2718." + }, + "scroll": { + "details": "Transactions as per Scroll specifications for pre-EIP-2718." + }, + "taiko": { + "details": "Transactions as per Taiko specifications for pre-EIP-2718." } - }, - "type2": { - "type": "T2", - "name": "User Transactions (EIP-1559)", - "description": "Represent EIP-1559 transactions", - "rollups": { - "optimism": { - "details": "Transactions as per Optimism specifications for EIP-1559." - }, - "base": { - "details": "Transactions as per Base specifications for EIP-1559." - } + } + }, + "type1": { + "type": "T1", + "name": "User Transactions (Post EIP-2718)", + "description": "Represent legacy transactions post EIP-2718", + "rollups": { + "optimism": { + "details": "Transactions as per Optimism specifications for post EIP-2718." + }, + "base": { + "details": "Transactions as per Base specifications for post EIP-2718." } - }, - - "type100": { - "type": "T100", - "name": "System (Bridge) Transaction", - "description": "A deposit of ETH from L1 to L2 via the Arbitrum bridge", - "rollups": { - "arbitrumOne": { - "details": "Deposit transaction from L1 to L2 in Arbitrum One." - } - } + } + }, + "type2": { + "type": "T2", + "name": "User Transactions (EIP-1559)", + "description": "Represent EIP-1559 transactions", + "rollups": { + "optimism": { + "details": "Transactions as per Optimism specifications for EIP-1559." }, - "type101": { - "type": "T101", - "name": "System (Bridge) Transaction", - "description": "An L1 user can use to call an L2 contract via the bridge", - "rollups": { - "arbitrumOne": { - "details": "Call L2 contract from L1 via the bridge in Arbitrum One." - } - } + "base": { + "details": "Transactions as per Base specifications for EIP-1559." + } + } + }, + + "type100": { + "type": "T100", + "name": "System (Bridge) Transaction", + "description": "A deposit of ETH from L1 to L2 via the Arbitrum bridge", + "rollups": { + "arbitrumOne": { + "details": "Deposit transaction from L1 to L2 in Arbitrum One." + } + } + }, + "type101": { + "type": "T101", + "name": "System (Bridge) Transaction", + "description": "An L1 user can use to call an L2 contract via the bridge", + "rollups": { + "arbitrumOne": { + "details": "Call L2 contract from L1 via the bridge in Arbitrum One." + } + } + }, + "type126": { + "type": "T126", + "name": "System Transactions", + "description": "Transactions importing L1 data into rollups or User-deposited transactions", + "rollups": { + "optimism": { + "details": "System transactions specific to the Optimism rollup." }, - "type126": { - "type": "T126", - "name": "System Transactions", - "description": "Transactions importing L1 data into rollups or User-deposited transactions", - "rollups": { - "optimism": { - "details": "System transactions specific to the Optimism rollup." - }, - "base": { - "details": "System transactions specific to the Base rollup." - } + "base": { + "details": "System transactions specific to the Base rollup." } } } - \ No newline at end of file +} diff --git a/tsconfig.json b/tsconfig.json index 2c684375..db454413 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,11 +2,7 @@ "compilerOptions": { "baseUrl": ".", "target": "ESNext", - "lib": [ - "dom", - "dom.iterable", - "ESNext" - ], + "lib": ["dom", "dom.iterable", "ESNext"], "allowJs": true, "skipLibCheck": true, "strict": true, @@ -20,12 +16,6 @@ "jsx": "preserve", "incremental": true }, - "include": [ - "next-env.d.ts", - "**/*.ts", - "**/*.tsx" - ], - "exclude": [ - "node_modules" - ] + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], + "exclude": ["node_modules"] }