{
  "meta": {
    "title": "Ethereum L1 Strawmap",
    "revision": "2026-06-26",
    "source": "https://strawmap.org",
    "upstream_drawing": "https://docs.google.com/drawings/d/1GkcGfQv9kxgrYQMyu0BYGcZya0gIDG_wQ7GsFJEsdzY",
    "maintainers_upstream": [
      {
        "name": "Francesco",
        "url": "https://x.com/fradamt"
      },
      {
        "name": "Justin",
        "url": "https://x.com/drakefjustin"
      },
      {
        "name": "Thomas",
        "url": "https://x.com/soispoke"
      },
      {
        "name": "Toni",
        "url": "https://x.com/nero_eth"
      },
      {
        "name": "Vitalik",
        "url": "https://x.com/VitalikButerin"
      }
    ],
    "contact_upstream": "strawmap@ethereum.org",
    "disclaimers": [
      "strawman: work-in-progress rough consensus",
      "EF takes: not authoritative or representative",
      "uncertain flag (🤔 emoji upstream): uncertainty about ever shipping upgrade"
    ]
  },
  "columns": [
    {
      "id": "glamsterdam",
      "kind": "fork",
      "name": "Glamsterdam",
      "letter": "G",
      "sequence": "n+1",
      "timing": "2026",
      "links": [
        {
          "title": "Meta EIP-7773",
          "url": "https://eips.ethereum.org/EIPS/eip-7773"
        }
      ]
    },
    {
      "id": "hegota",
      "kind": "fork",
      "name": "Hegotá",
      "letter": "H",
      "sequence": "n+2",
      "timing": "2027",
      "links": [
        {
          "title": "Meta EIP-8081",
          "url": "https://eips.ethereum.org/EIPS/eip-8081"
        }
      ]
    },
    {
      "id": "i-star",
      "kind": "fork",
      "name": "I*",
      "letter": "I",
      "sequence": "n+3",
      "timing": "2027-28"
    },
    {
      "id": "j-star",
      "kind": "fork",
      "name": "J*",
      "letter": "J",
      "sequence": "n+4",
      "timing": "2028"
    },
    {
      "id": "k-star",
      "kind": "fork",
      "name": "K*",
      "letter": "K",
      "sequence": "n+5",
      "timing": "2028-29"
    },
    {
      "id": "l-star",
      "kind": "fork",
      "name": "L*",
      "letter": "L",
      "sequence": "n+6",
      "timing": "2029"
    },
    {
      "id": "longer-term",
      "kind": "horizon",
      "name": "longer term"
    },
    {
      "id": "north-stars",
      "kind": "horizon",
      "name": "north stars"
    }
  ],
  "layers": [
    {
      "id": "cl",
      "name": "Consensus Layer (CL)",
      "short": "CL",
      "themes": [
        {
          "id": "latency",
          "name": "latency",
          "goal": "performance",
          "subthemes": [
            {
              "id": "slots",
              "name": "slots"
            },
            {
              "id": "finality",
              "name": "finality"
            }
          ]
        },
        {
          "id": "accessibility",
          "name": "accessibility",
          "goal": "hardness",
          "subthemes": [
            {
              "id": "roles",
              "name": "roles"
            },
            {
              "id": "specs",
              "name": "specs"
            }
          ]
        },
        {
          "id": "cryptography",
          "name": "cryptography",
          "goal": "hardness",
          "subthemes": [
            {
              "id": "quantum",
              "name": "quantum"
            },
            {
              "id": "proofs",
              "name": "proofs"
            }
          ]
        }
      ]
    },
    {
      "id": "dl",
      "name": "Data Layer (DL)",
      "short": "DL",
      "themes": [
        {
          "id": "throughput",
          "name": "throughput",
          "goal": "performance",
          "subthemes": [
            {
              "id": "write",
              "name": "write"
            },
            {
              "id": "read",
              "name": "read"
            }
          ]
        },
        {
          "id": "types",
          "name": "types",
          "goal": "hardness",
          "subthemes": [
            {
              "id": "quantum",
              "name": "quantum"
            },
            {
              "id": "features",
              "name": "features"
            }
          ]
        }
      ]
    },
    {
      "id": "el",
      "name": "Execution Layer (EL)",
      "short": "EL",
      "themes": [
        {
          "id": "throughput",
          "name": "throughput",
          "goal": "performance",
          "subthemes": [
            {
              "id": "gas",
              "name": "gas"
            },
            {
              "id": "gossip",
              "name": "gossip"
            }
          ]
        },
        {
          "id": "sustainability",
          "name": "sustainability",
          "goal": "hardness",
          "subthemes": [
            {
              "id": "zkevm",
              "name": "zkEVM"
            },
            {
              "id": "pricing",
              "name": "pricing"
            }
          ]
        },
        {
          "id": "evm",
          "name": "EVM",
          "goal": "hardness",
          "subthemes": [
            {
              "id": "state",
              "name": "state"
            },
            {
              "id": "isa",
              "name": "ISA"
            }
          ]
        },
        {
          "id": "cryptography",
          "name": "cryptography",
          "goal": "hardness",
          "subthemes": [
            {
              "id": "quantum",
              "name": "quantum"
            },
            {
              "id": "privacy",
              "name": "privacy"
            }
          ]
        }
      ]
    }
  ],
  "items": [
    {
      "id": "fast-confirmation",
      "title": "fast confirmation",
      "layer": "cl",
      "subtheme": "finality",
      "column": "glamsterdam",
      "kind": "offchain",
      "description": "Fast confirmation rule giving users quick (sub-slot) confidence that their transaction is included, ahead of full finality.",
      "links": [
        {
          "title": "fastconfirm.it",
          "url": "https://fastconfirm.it"
        }
      ]
    },
    {
      "id": "epbs",
      "title": "ePBS",
      "layer": "cl",
      "subtheme": "roles",
      "column": "glamsterdam",
      "kind": "headliner",
      "badge": "SFI",
      "description": "Enshrined proposer-builder separation (EIP-7732). Glamsterdam CL headliner.",
      "links": [
        {
          "title": "EIP-7732",
          "url": "https://eips.ethereum.org/EIPS/eip-7732"
        }
      ]
    },
    {
      "id": "focil",
      "title": "FOCIL",
      "layer": "cl",
      "subtheme": "roles",
      "column": "hegota",
      "kind": "headliner",
      "badge": "SFI",
      "description": "Fork-choice enforced inclusion lists (EIP-7805), strengthening censorship resistance. Hegotá CL headliner.",
      "links": [
        {
          "title": "EIP-7805",
          "url": "https://eips.ethereum.org/EIPS/eip-7805"
        }
      ]
    },
    {
      "id": "modernized-beacon-specs",
      "title": "modernized beacon specs",
      "layer": "cl",
      "subtheme": "specs",
      "column": "hegota",
      "kind": "offchain"
    },
    {
      "id": "decoupled-consensus",
      "title": "decoupled consensus",
      "layer": "cl",
      "subtheme": "finality",
      "column": "i-star",
      "kind": "headliner",
      "description": "Decouple availability from finality to unblock faster finality.",
      "links": [
        {
          "title": "ethresear.ch: unblocking faster finality with decoupled consensus",
          "url": "https://ethresear.ch/t/unblocking-faster-finality-with-decoupled-consensus/24527/1"
        }
      ],
      "depends_on": [
        "fast-confirmation"
      ]
    },
    {
      "id": "snail-issuance",
      "title": "snail issuance",
      "layer": "cl",
      "subtheme": "roles",
      "column": "i-star",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "pq-pubkey-registry",
      "title": "post quantum pubkey registry",
      "layer": "cl",
      "subtheme": "quantum",
      "column": "i-star",
      "kind": "onchain",
      "links": [
        {
          "title": "ethresear.ch: post-quantum public key registry design space",
          "url": "https://ethresear.ch/t/exploring-the-design-space-for-a-post-quantum-public-key-registry-for-ethereum-validators/25040"
        }
      ]
    },
    {
      "id": "quick-slots",
      "title": "quick slots",
      "layer": "cl",
      "subtheme": "slots",
      "column": "j-star",
      "kind": "onchain",
      "badge": "EIP",
      "description": "Shorter slot times (EIP-8198).",
      "links": [
        {
          "title": "EIP-8198",
          "url": "https://eips.ethereum.org/EIPS/eip-8198"
        }
      ],
      "depends_on": [
        "decoupled-consensus"
      ]
    },
    {
      "id": "beacon-lean-specs-merge",
      "title": "beacon & lean specs merge",
      "layer": "cl",
      "subtheme": "specs",
      "column": "j-star",
      "kind": "offchain",
      "depends_on": [
        "modernized-beacon-specs"
      ]
    },
    {
      "id": "pq-heartbeat",
      "title": "post quantum heartbeat",
      "layer": "cl",
      "subtheme": "quantum",
      "column": "j-star",
      "kind": "headliner",
      "links": [
        {
          "title": "ethresear.ch: dynamically available protocol (post-quantum heartbeat)",
          "url": "https://ethresear.ch/t/why-ethereum-needs-a-dynamically-available-protocol/24418#p-59055-a-near-term-benefit-post-quantum-readiness-and-post-quantum-heartbeat-6"
        }
      ],
      "depends_on": [
        "pq-pubkey-registry",
        "pq-leansphincs-transactions"
      ]
    },
    {
      "id": "one-round-finality",
      "title": "1-round finality",
      "layer": "cl",
      "subtheme": "finality",
      "column": "l-star",
      "kind": "headliner",
      "description": "Single-round finality as part of lean consensus.",
      "links": [
        {
          "title": "1-round finality notes (yannvon)",
          "url": "https://notes.ethereum.org/@yannvon/S1wIxIDqbe"
        }
      ],
      "depends_on": [
        "decoupled-consensus"
      ]
    },
    {
      "id": "attester-proposer-separation",
      "title": "attester-proposer separation",
      "layer": "cl",
      "subtheme": "roles",
      "column": "l-star",
      "kind": "onchain",
      "uncertain": true,
      "depends_on": [
        "snail-issuance"
      ]
    },
    {
      "id": "tech-debt-reset",
      "title": "tech debt reset",
      "layer": "cl",
      "subtheme": "specs",
      "column": "l-star",
      "kind": "onchain",
      "depends_on": [
        "beacon-lean-specs-merge",
        "one-round-finality"
      ]
    },
    {
      "id": "pq-leanxmss-attestations",
      "title": "PQ leanXMSS attestations",
      "layer": "cl",
      "subtheme": "quantum",
      "column": "l-star",
      "kind": "headliner",
      "description": "Post-quantum (hash-based leanXMSS) attestation signatures. Second L* CL headliner, tied to the lean consensus fork.",
      "depends_on": [
        "pq-heartbeat"
      ]
    },
    {
      "id": "real-time-cl-proofs",
      "title": "real-time CL proofs",
      "layer": "cl",
      "subtheme": "proofs",
      "column": "l-star",
      "kind": "offchain",
      "depends_on": [
        "pq-leanxmss-attestations"
      ]
    },
    {
      "id": "slot-duration-decreases",
      "title": "slot duration decreases",
      "layer": "cl",
      "subtheme": "slots",
      "span": {
        "from": "l-star",
        "to": "longer-term"
      },
      "kind": "onchain",
      "description": "Continuous track of slot-time reductions.",
      "depends_on": [
        "quick-slots"
      ]
    },
    {
      "id": "one-m-attestations",
      "title": "1M attestations per slot",
      "layer": "cl",
      "subtheme": "finality",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "distributed-block-building",
      "title": "distributed block building",
      "layer": "cl",
      "subtheme": "roles",
      "column": "longer-term",
      "kind": "offchain"
    },
    {
      "id": "attack-auto-recovery",
      "title": "51% attack auto-recovery",
      "layer": "cl",
      "subtheme": "specs",
      "column": "longer-term",
      "kind": "offchain"
    },
    {
      "id": "vdf-randomness",
      "title": "VDF randomness",
      "layer": "cl",
      "subtheme": "quantum",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "secret-proposers",
      "title": "secret proposers",
      "layer": "cl",
      "subtheme": "proofs",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "ns-fast-l1",
      "title": "fast L1",
      "subtitle": "finality in seconds",
      "layer": "cl",
      "subtheme": "slots",
      "column": "north-stars",
      "kind": "north-star",
      "description": "Transaction inclusion and chain finality in seconds.",
      "depends_on": [
        "slot-duration-decreases"
      ]
    },
    {
      "id": "sparse-blobpool",
      "title": "sparse blobpool",
      "layer": "dl",
      "subtheme": "write",
      "column": "glamsterdam",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8070",
          "url": "https://eips.ethereum.org/EIPS/eip-8070"
        }
      ]
    },
    {
      "id": "cell-level-deltas",
      "title": "cell-level deltas",
      "layer": "dl",
      "subtheme": "read",
      "column": "glamsterdam",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8136",
          "url": "https://eip.tools/eip/8136"
        }
      ]
    },
    {
      "id": "local-blob-reconstruction",
      "title": "local blob reconstruction",
      "layer": "dl",
      "subtheme": "read",
      "column": "i-star",
      "kind": "offchain",
      "depends_on": [
        "cell-level-deltas"
      ]
    },
    {
      "id": "pq-leanda-sampling",
      "title": "PQ leanDA sampling",
      "layer": "dl",
      "subtheme": "quantum",
      "column": "j-star",
      "kind": "onchain",
      "depends_on": [
        "leanvm"
      ]
    },
    {
      "id": "leanvm",
      "title": "leanVM",
      "layer": "dl",
      "subtheme": "features",
      "column": "j-star",
      "kind": "offchain",
      "links": [
        {
          "title": "leanMultisig (leanEthereum)",
          "url": "https://github.com/leanEthereum/leanMultisig"
        }
      ]
    },
    {
      "id": "remove-blob-transaction-type",
      "title": "remove blob transaction type",
      "layer": "dl",
      "subtheme": "features",
      "column": "l-star",
      "kind": "onchain",
      "depends_on": [
        "pq-leanda-sampling"
      ]
    },
    {
      "id": "data-availability-increases",
      "title": "data availability increases",
      "layer": "dl",
      "subtheme": "write",
      "span": {
        "from": "i-star",
        "to": "longer-term"
      },
      "kind": "onchain",
      "description": "Continuous track of data availability capacity increases.",
      "depends_on": [
        "sparse-blobpool",
        "cell-level-deltas"
      ]
    },
    {
      "id": "blob-streaming",
      "title": "blob streaming",
      "layer": "dl",
      "subtheme": "read",
      "column": "longer-term",
      "kind": "onchain",
      "links": [
        {
          "title": "blob streaming (hackmd)",
          "url": "https://hackmd.io/@gMH0wL_0Sr69C7I7inO8MQ/B125sCUtZx"
        }
      ],
      "depends_on": [
        "local-blob-reconstruction"
      ]
    },
    {
      "id": "proofs-of-custody",
      "title": "proofs of custody",
      "layer": "dl",
      "subtheme": "quantum",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "short-dated-blob-futures",
      "title": "short-dated blob futures",
      "layer": "dl",
      "subtheme": "features",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "ns-teragas-l2",
      "title": "teragas L2",
      "subtitle": "1 Gbyte/sec",
      "layer": "dl",
      "subtheme": "write",
      "column": "north-stars",
      "kind": "north-star",
      "description": "1 gigabyte/sec (10M TPS) at L2, via data availability sampling.",
      "depends_on": [
        "data-availability-increases"
      ]
    },
    {
      "id": "ns-post-quantum-l1",
      "title": "post quantum L1",
      "subtitle": "hash-based",
      "layer": "dl",
      "subtheme": "quantum",
      "column": "l-star",
      "kind": "north-star",
      "cross_layer": true,
      "description": "Centuries-long cryptographic security via hash-based schemes. Cross-layer north star, placed at L* on the upstream map.",
      "depends_on": [
        "pq-leanxmss-attestations",
        "pq-leanda-sampling"
      ]
    },
    {
      "id": "gas-limit-increases",
      "title": "gas limit increases",
      "layer": "el",
      "subtheme": "gas",
      "span": {
        "from": "hegota",
        "to": "longer-term"
      },
      "kind": "offchain",
      "description": "Continuous track of gas limit increases."
    },
    {
      "id": "ethp2p-broadcast",
      "title": "ethp2p broadcast",
      "layer": "el",
      "subtheme": "gossip",
      "column": "hegota",
      "kind": "offchain",
      "links": [
        {
          "title": "ethp2p",
          "url": "https://github.com/ethp2p/ethp2p"
        }
      ]
    },
    {
      "id": "evm-asm-canonical-guest",
      "title": "evm-asm canonical guest",
      "layer": "el",
      "subtheme": "zkevm",
      "column": "glamsterdam",
      "kind": "offchain",
      "links": [
        {
          "title": "evm-asm (Verified-zkEVM)",
          "url": "https://github.com/Verified-zkEVM/evm-asm"
        }
      ]
    },
    {
      "id": "glamsterdam-repricing",
      "title": "Glamsterdam repricing",
      "layer": "el",
      "subtheme": "pricing",
      "column": "glamsterdam",
      "kind": "onchain",
      "badge": "CFI",
      "links": [
        {
          "title": "EIP-8007",
          "url": "https://eips.ethereum.org/EIPS/eip-8007"
        }
      ]
    },
    {
      "id": "bals",
      "title": "BALs",
      "layer": "el",
      "subtheme": "state",
      "column": "glamsterdam",
      "kind": "headliner",
      "badge": "SFI",
      "description": "Block-level access lists (EIP-7928). Glamsterdam EL headliner.",
      "links": [
        {
          "title": "EIP-7928",
          "url": "https://eips.ethereum.org/EIPS/eip-7928"
        }
      ]
    },
    {
      "id": "optional-2of3-proofs",
      "title": "optional 2-of-3 proofs",
      "layer": "el",
      "subtheme": "zkevm",
      "column": "hegota",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8025",
          "url": "https://eips.ethereum.org/EIPS/eip-8025"
        }
      ],
      "depends_on": [
        "evm-asm-canonical-guest"
      ]
    },
    {
      "id": "data-repricing",
      "title": "data repricing",
      "layer": "el",
      "subtheme": "pricing",
      "column": "hegota",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "Hegotá repricings",
          "url": "https://misilva73.github.io/hegota-repricings/"
        }
      ],
      "depends_on": [
        "glamsterdam-repricing"
      ]
    },
    {
      "id": "state-asm",
      "title": "state-asm",
      "layer": "el",
      "subtheme": "state",
      "column": "hegota",
      "kind": "offchain"
    },
    {
      "id": "evmify-longtail-precompiles",
      "title": "EVMify long-tail precompiles",
      "layer": "el",
      "subtheme": "isa",
      "column": "hegota",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8200",
          "url": "https://eips.ethereum.org/EIPS/eip-8200"
        }
      ]
    },
    {
      "id": "frame-transactions",
      "title": "frame transactions",
      "layer": "el",
      "subtheme": "quantum",
      "column": "hegota",
      "kind": "headliner",
      "badge": "CFI",
      "links": [
        {
          "title": "EIP-8141",
          "url": "https://eips.ethereum.org/EIPS/eip-8141"
        }
      ]
    },
    {
      "id": "keyed-nonces-recent-roots",
      "title": "keyed nonces & recent roots",
      "layer": "el",
      "subtheme": "privacy",
      "column": "hegota",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8250",
          "url": "https://eips.ethereum.org/EIPS/eip-8250"
        },
        {
          "title": "EIP-8272",
          "url": "https://eips.ethereum.org/EIPS/eip-8272"
        }
      ]
    },
    {
      "id": "multidimensional-pricing",
      "title": "multidimensional pricing",
      "layer": "el",
      "subtheme": "pricing",
      "column": "i-star",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-7999",
          "url": "https://eips.ethereum.org/EIPS/eip-7999"
        }
      ],
      "depends_on": [
        "data-repricing"
      ]
    },
    {
      "id": "partial-binary-tree",
      "title": "partial binary tree",
      "layer": "el",
      "subtheme": "state",
      "column": "i-star",
      "kind": "headliner",
      "depends_on": [
        "state-asm"
      ]
    },
    {
      "id": "pureth-purges",
      "title": "pureth purges",
      "layer": "el",
      "subtheme": "isa",
      "column": "i-star",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-7919 (pureth)",
          "url": "https://eips.ethereum.org/EIPS/eip-7919"
        }
      ],
      "depends_on": [
        "evmify-longtail-precompiles"
      ]
    },
    {
      "id": "ephemeral-keys",
      "title": "ephemeral keys",
      "layer": "el",
      "subtheme": "quantum",
      "column": "i-star",
      "kind": "offchain",
      "links": [
        {
          "title": "ethresear.ch: quantum safety through ephemeral key pairs",
          "url": "https://ethresear.ch/t/achieving-quantum-safety-through-ephemeral-key-pairs-and-account-abstraction/24273"
        }
      ],
      "depends_on": [
        "frame-transactions"
      ]
    },
    {
      "id": "leanda-block-sampling",
      "title": "leanDA block sampling",
      "layer": "el",
      "subtheme": "pricing",
      "column": "j-star",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8142",
          "url": "https://eips.ethereum.org/EIPS/eip-8142"
        }
      ],
      "depends_on": [
        "multidimensional-pricing"
      ]
    },
    {
      "id": "validity-only-partial-state",
      "title": "validity-only partial state",
      "layer": "el",
      "subtheme": "state",
      "column": "j-star",
      "kind": "offchain",
      "links": [
        {
          "title": "ethresear.ch: validity-only partial statelessness (VOPS)",
          "url": "https://ethresear.ch/t/a-pragmatic-path-towards-validity-only-partial-statelessness-vops/22236"
        }
      ],
      "depends_on": [
        "partial-binary-tree"
      ]
    },
    {
      "id": "pq-leansphincs-transactions",
      "title": "PQ leanSPHINCS transactions",
      "layer": "el",
      "subtheme": "quantum",
      "column": "j-star",
      "kind": "headliner",
      "depends_on": [
        "ephemeral-keys"
      ]
    },
    {
      "id": "mandatory-1of1-proofs",
      "title": "mandatory 1-of-1 proofs",
      "layer": "el",
      "subtheme": "zkevm",
      "column": "k-star",
      "kind": "headliner",
      "description": "Mandatory zkEVM validity proofs (1-of-1).",
      "depends_on": [
        "optional-2of3-proofs",
        "leanda-block-sampling"
      ]
    },
    {
      "id": "decentralized-state",
      "title": "decentralized state",
      "layer": "el",
      "subtheme": "state",
      "column": "k-star",
      "kind": "offchain",
      "depends_on": [
        "validity-only-partial-state"
      ]
    },
    {
      "id": "native-rollups",
      "title": "native rollups",
      "layer": "el",
      "subtheme": "zkevm",
      "column": "l-star",
      "kind": "onchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8079",
          "url": "https://eips.ethereum.org/EIPS/eip-8079"
        }
      ],
      "depends_on": [
        "mandatory-1of1-proofs"
      ]
    },
    {
      "id": "zkzkriscv-frames",
      "title": "zkzkRISC-V frames",
      "layer": "el",
      "subtheme": "isa",
      "column": "l-star",
      "kind": "headliner",
      "links": [
        {
          "title": "ethereum-magicians: replace the EVM with RISC-V",
          "url": "https://ethereum-magicians.org/t/long-term-l1-execution-layer-proposal-replace-the-evm-with-risc-v/23617"
        }
      ],
      "depends_on": [
        "pureth-purges"
      ]
    },
    {
      "id": "ethp2p-unification",
      "title": "ethp2p unification",
      "layer": "el",
      "subtheme": "gossip",
      "column": "l-star",
      "kind": "offchain",
      "depends_on": [
        "ethp2p-broadcast"
      ]
    },
    {
      "id": "privacy-mempool",
      "title": "privacy mempool",
      "layer": "el",
      "subtheme": "privacy",
      "column": "l-star",
      "kind": "offchain",
      "depends_on": [
        "keyed-nonces-recent-roots"
      ]
    },
    {
      "id": "sharded-mempool",
      "title": "sharded mempool",
      "layer": "el",
      "subtheme": "gossip",
      "column": "longer-term",
      "kind": "offchain",
      "depends_on": [
        "ethp2p-unification"
      ]
    },
    {
      "id": "long-dated-gas-futures",
      "title": "long-dated gas futures",
      "layer": "el",
      "subtheme": "pricing",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true
    },
    {
      "id": "endgame-state",
      "title": "endgame state",
      "layer": "el",
      "subtheme": "state",
      "column": "longer-term",
      "kind": "onchain",
      "uncertain": true,
      "links": [
        {
          "title": "ethresear.ch: hyper-scaling state with new forms of state",
          "url": "https://ethresear.ch/t/hyper-scaling-state-by-creating-new-forms-of-state/24052"
        }
      ],
      "depends_on": [
        "decentralized-state"
      ]
    },
    {
      "id": "lean-privacy-wormholes",
      "title": "lean privacy wormholes",
      "layer": "el",
      "subtheme": "quantum",
      "column": "longer-term",
      "kind": "onchain"
    },
    {
      "id": "encrypted-mempool",
      "title": "encrypted mempool",
      "layer": "el",
      "subtheme": "privacy",
      "column": "longer-term",
      "kind": "offchain",
      "badge": "EIP",
      "links": [
        {
          "title": "EIP-8184",
          "url": "https://eips.ethereum.org/EIPS/eip-8184"
        }
      ],
      "depends_on": [
        "privacy-mempool"
      ]
    },
    {
      "id": "ns-gigagas-l1",
      "title": "gigagas L1",
      "subtitle": "1 Ggas/sec",
      "layer": "el",
      "subtheme": "gas",
      "column": "north-stars",
      "kind": "north-star",
      "description": "1 gigagas/sec (10K TPS) at L1, via zkEVMs and real-time proving.",
      "depends_on": [
        "gas-limit-increases"
      ]
    },
    {
      "id": "ns-private-l1",
      "title": "private L1",
      "subtitle": "shielded transfers",
      "layer": "el",
      "subtheme": "privacy",
      "column": "north-stars",
      "kind": "north-star",
      "description": "Privacy as a first-class citizen, via L1 shielded transfers.",
      "depends_on": [
        "encrypted-mempool"
      ]
    }
  ]
}