{
  "schema": "ab5d-series-essay/1",
  "revision": 2,
  "status": "published-with-research-limitations",
  "sections": [
    {
      "id": "work-context",
      "heading": "The work and its context",
      "bodyMarkdown": "Steps is a 360-edition generative art series by johan (Johan Ismael), released on Art Blocks on Ethereum mainnet, contract 0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270, project ID 332, in the factory category with heritage placement in the AB500 set.[^S01] Each output is a slowly drifting field of soft-edged square blocks in luminous pastel gradients, pink bleeding into blue, mint into lavender, animated in real time.[^S01][^S10]\n\nThe description opens with an Agnes Martin quote from 1979, \"As we paint we move along step by step. We realize that we are guided in our work by awareness of life\", and continues: \"Steps is an invitation to slow down in order to explore a subtler dimension of reality, where we can transcend our human nature, where two successive moments are never exactly the same, where we continually feel held and supported, and where each step, even if insignificant in appearance, can reveal unbounded peace.\" The interaction note documents a single control: click, tap, or the Space key to pause and unpause the animation.[^S01] The description also records a prints program: the first 50 editions came with a free signed print, all holders can purchase signed prints of their mints, and unsigned prints outside the minted set are offered to non-holders.[^S01]\n\nThe AB5D dossier describes Johan Ismael as an artist whose work joins \"exact computation and spiritual contemplation\": born 1988 in Paris, based in Alameda, California, trained in mathematics, with a professional background in computer graphics, shaders, rendering, virtual reality and human-computer interaction, and one half of the ambient audiovisual duo Night Sea with David Grunzweig.[^S06] Steps is his only work in the AB500 set; his collector-metric rank stands at 187 of 308.[^S06] The series runs on regl 2.1.0, a WebGL wrapper, at a portrait aspect ratio of 0.75 with zero external assets, under the CC BY-NC-ND 4.0 licence.[^S01]"
    },
    {
      "id": "conception",
      "heading": "Conception and development",
      "bodyMarkdown": "The conception is meditative minimalism with a long gestation. On his process page, Ismael records that the project grew from \"a quick code sketch from September 2018 where I was playing around with grids and blurring\", and that the core visual principles were present from the start: \"square shapes, color bleeding, and grain\".[^S08] The fundamental rendering technique changed little over the following years; most of the development time went into shape and color variation.[^S08]\n\nThe six months of focused development before release coincided with a difficult personal period: \"the project was a warm refuge at a time where things in my personal life were rocky. There were several moments when I thought the project was done, but new ideas would eventually flow in.\" He compares the process to the production of Night Sea's first album Still: \"a letting go of control to allow the work to be the guide, a process of surrendering and listening instead of doing and deciding\". The Agnes Martin quote in the description \"deeply resonated\" throughout.[^S08][^S01]\n\nHis own site frames the finished work as \"an animated long form generative art series about transcendence and our dual human / divine nature\", listing its tools as regl, GLSL, Javascript, and the Epson P900 printer that produced the physical editions.[^S07] The description's closing thanks name his mother Colette, \"for taking me to art exhibitions at a young age\", his friend Patricio, and the Art Blocks team.[^S01]"
    },
    {
      "id": "construction",
      "heading": "How the work was constructed",
      "bodyMarkdown": "The full artist script was retrieved from the official indexed project record at the Art Blocks mainnet GraphQL endpoint, filtered by the exact slug steps-by-johan and corroborated against contract 0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270 and project ID 332. The retrieved script is 15,810 bytes with SHA-256 digest b915596100923e4949a039ac6dd5a00ddf6c5685719d74e9d008fce9e2b26fd2, and it was read in full.[^S01][^S02]\n\nThe script is a compact minified WebGL program built on regl 2.1.0 with custom GLSL.[^S01][^S02] Deterministic randomness comes from the same dual-stream sfc32 arrangement seen across this cohort: two generators seeded from the two 32-character halves of the token hash, run through a one-million-pair warmup, and alternated on successive calls.[^S02] Composition choices are made through threshold tables that map deterministic draws onto named palette codes (mr, mra, mb, mmb, db, spb, and others), each code carrying a pair of RGB gradient anchors with weighting parameters; grid sizes are drawn from weighted sets such as 3-4, 6-8, 12-28 and 36-80 blocks.[^S02]\n\nThe animation is a real-time feedback system: regl framebuffers ping-pong between textures while a time uniform accumulates only when the piece is not paused, which is how the slow drift stays continuous yet pausable.[^S02] The interaction code matches the description exactly: a keyup listener toggles the pause flag on Space, click and touchend listeners do the same for pointer input, and an Enter keyup restarts the draw; resize refits the canvas.[^S01][^S02] The live probe on token 332000124 confirmed the whole surface: the reported hash matched the chain record exactly, frames six seconds apart differed (animating), Space froze the frame and Space again resumed it, a click froze it again, and zero audio or video elements exist in the page.[^S09]"
    },
    {
      "id": "mint",
      "heading": "The mint",
      "bodyMarkdown": "The dated record, observed in the current Art Blocks index on September 20, 2026, shows a summer Monday sale of about twenty-nine minutes.[^S01][^S04] Edition 0 was minted on July 7, 2022 at 20:59:53 UTC, and the project was activated on July 11, 2022 at 23:56:46 UTC.[^S01] The registry's sale-start timestamp reads July 25, 2022 at 16:00:00 UTC; the official collection page carries \"Released Jul 25, 2022, 4:00 PM UTC\", and the artist's process page confirms \"360 NFT editions were on Art Blocks on Monday, July 25th 2022\".[^S01][^S03][^S08]\n\nEdition 1 minted at 16:07:41 UTC, edition 10 at 16:21:29, edition 20 at 16:23:43, the AB5D treasury's edition 124 at 16:26:49 UTC, and the final edition 359 at 16:28:48 UTC, the recorded completion time, about twenty-nine minutes after the announced start.[^S01][^S04] The minted count equals the maximum of 360, and the project is marked complete, locked and active, with the paused flag false.[^S01] The registry's current price field reads 0 ETH, a post-sellout administrative value; no dated 2022 source inspected here states the original mint price.[^S01] The AB5D collection holds exactly one edition, number 124, held by wallet 0xdd19308a9731cdecb67e0d80ca6823394208c045.[^S04][^S05]"
    },
    {
      "id": "rights",
      "heading": "Copyright and licensing",
      "bodyMarkdown": "The project registry reports the artwork licence label \"CC BY-NC-ND 4.0\" for Steps, with the terms URL recorded in the record.[^S01] This essay therefore categorizes the artwork licence as creative-commons, variant CC BY-NC-ND 4.0.[^S01] The deed grants the freedom to Share, to copy and redistribute the material in any medium or format, under three conditions: Attribution, giving appropriate credit with a link to the licence and an indication of changes; NonCommercial, no use for commercial purposes; and NoDerivatives, sharing only the unadapted material. The deed forbids applying additional legal or technological restrictions.[^S11]\n\nThe script carries no licence header or copyright comment of its own, so no code licence is reported for this package; the absence is recorded rather than resolved.[^S02] The registry lists zero external asset dependencies; the sole runtime dependency is the regl 2.1.0 library noted in the script type.[^S01][^S02] The prints program described in the registry description and on the artist's site is a separate physical-goods offering and does not alter the artwork licence.[^S01][^S07] Owning a Steps token conveys no copyright by itself, and no conflicting licence statements were found in the inspected sources. Images in this essay are referenced through canonical Art Blocks token pages and media rather than republished.[^S04]"
    },
    {
      "id": "examples",
      "heading": "Close reading of examples",
      "bodyMarkdown": "Five outputs were inspected directly through their platform media, and the header was additionally exercised in the live renderer.[^S09][^S10]\n\nEdition 124 (token 332000124, minted July 25, 2022 at 16:26:49 UTC, twenty-six minutes into the sale), the AB5D-held header, is the blue study: a fine-grained field of small vertical blocks in sky and powder blue, shading to deeper blue toward the bottom, like rain on a window in slow motion.[^S04][^S05][^S10] In the live view the field drifted, froze on Space, resumed on Space, and froze again on click, exactly as the description promises.[^S09]\n\nEdition 0 (token 332000000, the July 7, 2022 pre-activation mint) is the coarsest of the sample: large soft blocks, pale pink in the upper left giving way to cyan at the right edge, with luminous bleeding at every boundary.[^S04][^S10] Edition 1 (token 332000001, the first public mint) is a finer blue mosaic, flecked with occasional pale pink rectangles.[^S04][^S10]\n\nEdition 10 (token 332000010) is the all-pink field: fine squares from blush to magenta with a subtle vertical light gradient.[^S04][^S10] Edition 20 (token 332000020) is the palest: large blocks in mint and lavender, nearly white at the edges, the closest the sample comes to Agnes Martin's washed grids.[^S04][^S10] Across the five, block scale and palette pairing vary; the soft bleeding and the contemplative slowness are constant.[^S10]"
    },
    {
      "id": "significance",
      "heading": "Significance and limitations",
      "bodyMarkdown": "Steps is the batch's quietest object and its most explicit meditation: a WebGL feedback system tuned to the tempo of breathing, framed by an Agnes Martin quote, and paired with an unusually physical afterlife through its signed-print program and Epson P900 production line.[^S01][^S07][^S08] Its documentation is also the batch's most personal: the process page records the September 2018 sketch, the six-month development, and the rocky personal period the work sheltered.[^S08]\n\nUnresolved research questions, flagged for review:\n\n- The original mint price at the July 2022 sale is not established by any dated 2022 source inspected here; the current registry price reads 0 ETH, a post-sellout value.[^S01]\n- No project-specific interview exists; the registry interview field is null.[^S01]\n- The process page link on the artist's site root path (johan.studio/steps-process) returned 404 at inspection time; the working URL is johan.studio/work/steps-process.[^S08]\n- The named palette codes in the script (mr, mra, mb, mmb, db, spb, and others) are internal abbreviations; their expansion is inferred from their RGB anchors, not documented by the artist.[^S02]\n- The registry records script_count 2 for this project; the meaning of the count (likely on-chain script revisions) is not documented in the inspected sources.[^S01]"
    }
  ],
  "mediaIds": [],
  "identity": {
    "chainId": 1,
    "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
    "projectId": 332,
    "slug": "steps-by-johan",
    "title": "Steps",
    "artistCredit": "johan",
    "artistDossierUrls": [
      "https://ab5d.xyz/artists/johan/"
    ]
  },
  "researchCutoff": "2026-09-20",
  "facts": [
    {
      "id": "minted-count",
      "topic": "mint",
      "value": 360,
      "unit": "editions",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S04"
      ],
      "status": "verified",
      "note": "Current index invocations; equals max_invocations."
    },
    {
      "id": "max-edition",
      "topic": "mint",
      "value": 360,
      "unit": "editions",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S08"
      ],
      "status": "reported",
      "note": "Registry max_invocations; artist process page consistent."
    },
    {
      "id": "first-mint",
      "topic": "mint",
      "value": "2022-07-07T20:59:53+00:00",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S04"
      ],
      "status": "verified",
      "note": "Token 332000000 minted_at, eighteen days before the public sale."
    },
    {
      "id": "activation",
      "topic": "mint",
      "value": "2022-07-11T23:56:46+00:00",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01"
      ],
      "status": "verified",
      "note": "Registry activated_at."
    },
    {
      "id": "registry-sale-start",
      "topic": "mint",
      "value": "2022-07-25T16:00:00+00:00",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S03",
        "S08"
      ],
      "status": "verified",
      "note": "start_datetime matches collection page release line and the artist's Monday July 25 note."
    },
    {
      "id": "completion",
      "topic": "mint",
      "value": "2022-07-25T16:28:48+00:00",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S04"
      ],
      "status": "verified",
      "note": "About 29 minutes from announced start to final edition 359."
    },
    {
      "id": "current-price",
      "topic": "mint",
      "value": "0",
      "unit": "ETH",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01"
      ],
      "status": "reported",
      "note": "Current registry price_per_token_in_wei = 0, a post-sellout administrative value."
    },
    {
      "id": "original-price",
      "topic": "mint",
      "value": null,
      "unit": "ETH",
      "observedAt": "2026-09-20",
      "sourceIds": [],
      "status": "unknown",
      "note": "No dated 2022 price source located."
    },
    {
      "id": "script-runtime",
      "topic": "construction",
      "value": "regl@2.1.0 (WebGL, custom GLSL)",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S02"
      ],
      "status": "verified",
      "note": "Indexed script_type_and_version; dual alternating sfc32 streams; framebuffer feedback animation; Space/click/tap pause; zero external assets."
    },
    {
      "id": "script-sha256",
      "topic": "construction",
      "value": "b915596100923e4949a039ac6dd5a00ddf6c5685719d74e9d008fce9e2b26fd2",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": "SHA-256 of the 15,810-byte UTF-8 script; read in full."
    },
    {
      "id": "license-label",
      "topic": "rights",
      "value": "CC BY-NC-ND 4.0",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01"
      ],
      "status": "verified",
      "note": "Registry label with link_to_license recorded."
    },
    {
      "id": "ab5d-holding",
      "topic": "collection",
      "value": "1 edition: 124",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S04",
        "S05"
      ],
      "status": "verified",
      "note": "Owned by 0xdd19308a9731cdecb67e0d80ca6823394208c045 in the freshly refreshed AB5D linked wallet set; header edition 124."
    }
  ],
  "rights": {
    "artwork": {
      "reportedLabel": "CC BY-NC-ND 4.0",
      "category": "creative-commons",
      "termsUrl": "https://creativecommons.org/licenses/by-nc-nd/4.0/",
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S01",
        "S11"
      ],
      "note": "Registry label CC BY-NC-ND 4.0 with recorded terms URL. Deed grants Share only, with Attribution, NonCommercial and NoDerivatives conditions; no additional restrictions allowed.",
      "unresolvedConflicts": []
    },
    "code": {
      "reportedLabel": null,
      "category": "unknown",
      "termsUrl": null,
      "observedAt": "2026-09-20",
      "sourceIds": [
        "S02"
      ],
      "note": "Script carries no licence header or copyright comment; absence recorded.",
      "unresolvedConflicts": []
    },
    "thirdParty": []
  },
  "examples": [
    {
      "id": "E01",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000000",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000000",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 0, pre-activation mint (2022-07-07T20:59:53Z).",
      "observationNote": "Static preview viewed: large soft blocks, pale pink to cyan, luminous bleeding at boundaries."
    },
    {
      "id": "E02",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000001",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000001",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 1, first public mint (16:07:41Z).",
      "observationNote": "Static preview viewed: fine blue mosaic with occasional pale pink rectangles."
    },
    {
      "id": "E03",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000010",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000010",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 10; all-pink palette extreme; sustained analysis.",
      "observationNote": "Static preview viewed: all-pink fine field, blush to magenta, vertical light gradient."
    },
    {
      "id": "E04",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000020",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000020",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 20; palest, largest-block sample.",
      "observationNote": "Static preview viewed: large pale blocks in mint and lavender, near-white edges."
    },
    {
      "id": "E05",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000124",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124",
      "sourceIds": [
        "S04",
        "S05",
        "S09",
        "S10"
      ],
      "selectionNote": "Verified AB5D-held work, header, live-checked with pause controls; sustained analysis.",
      "observationNote": "Static preview and live renderer viewed: fine vertical blocks in sky and powder blue; hash matched chain; animation, Space pause/resume and click pause all verified; zero audio elements."
    }
  ],
  "provenance": {
    "operator": "Kimi Work local agent runtime (commissioned batch kimi-remaining-20)",
    "agent": "Kimi",
    "model": "Kimi (Moonshot AI)",
    "modelVersion": "unknown (not exposed by the runtime)",
    "tools": [
      "curl",
      "Python 3",
      "headless Chrome via puppeteer-core (SwiftShader)",
      "Art Blocks Hasura GraphQL endpoint",
      "web search/fetch tools"
    ],
    "humanEditorialInvolvement": "Commissioned by Phil; website publication authorized by Phil on 2026-09-17. No claim of line-by-line human fact checking.",
    "originalProseLicense": "CC0-1.0",
    "generation": {
      "schema": "ab5d-essay-generation/1",
      "model": "Kimi (Moonshot AI)",
      "displayName": "Kimi (Moonshot AI)",
      "scope": "Supplied Kimi remaining 20 packages",
      "essayCount": 20,
      "usage": null,
      "perEssayUsage": null,
      "usageDetail": "Exact model version and token telemetry were not exposed by the contributor runtime. No usage estimates substituted.",
      "importReview": "Structural package, identity, citation and build compatibility checks. Supplied prose preserved; no independent research audit."
    }
  },
  "codeInspection": {
    "url": "https://artblocks-mainnet.hasura.app/v1/graphql",
    "locator": "projects_metadata(where slug = steps-by-johan).script; contract 0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270 project 332",
    "sha256": "b915596100923e4949a039ac6dd5a00ddf6c5685719d74e9d008fce9e2b26fd2",
    "retrievedAt": "2026-09-20T00:21:03Z",
    "method": "GraphQL POST via curl; full 15,810-byte script read (minified, symbol map); live renderer executed with keyboard and click events",
    "executed": true,
    "chainBlock": null
  },
  "editorialExceptions": [
    {
      "id": "EX-01",
      "status": "pending",
      "reviewer": null,
      "reason": "Original mint price at the July 2022 sale not evidenced by any dated 2022 source; current registry price is 0 ETH post-sellout."
    },
    {
      "id": "EX-02",
      "status": "pending",
      "reviewer": null,
      "reason": "No project-specific interview; registry artist_interview null."
    },
    {
      "id": "EX-03",
      "status": "pending",
      "reviewer": null,
      "reason": "Root-path process page link (johan.studio/steps-process) returns 404; working URL is under /work/."
    },
    {
      "id": "EX-04",
      "status": "pending",
      "reviewer": null,
      "reason": "Script palette codes (mr, mra, mb, mmb, db, spb, ...) are internal abbreviations; expansions inferred from RGB anchors only."
    },
    {
      "id": "EX-05",
      "status": "pending",
      "reviewer": null,
      "reason": "Registry records script_count 2; meaning (likely on-chain script revisions) not documented in inspected sources."
    }
  ],
  "presentation": {
    "editionSize": 360,
    "maximumEdition": 360,
    "mintDate": "2022-07-07T20:59:53+00:00",
    "artwork": {
      "token_id": "332000124",
      "invocation": 124,
      "mode": "image",
      "preview_asset_url": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124.png",
      "canonicalUrl": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124",
      "live_view_url": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124",
      "copyrightStatus": "CC BY-NC-ND 4.0",
      "copyrightUrl": "https://creativecommons.org/licenses/by-nc-nd/4.0/",
      "interactionNote": "Official preview.",
      "displayBasis": "Remote embed of the Art Blocks media proxy; no local asset redistribution. Token ownership by AB5D wallet verified 2026-09-20; token ownership is not copyright ownership."
    }
  },
  "observationImages": [
    {
      "id": "E01",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000000",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000000",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 0, pre-activation mint (2022-07-07T20:59:53Z).",
      "observationNote": "Static preview viewed: large soft blocks, pale pink to cyan, luminous bleeding at boundaries.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000000.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000000"
    },
    {
      "id": "E02",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000001",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000001",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 1, first public mint (16:07:41Z).",
      "observationNote": "Static preview viewed: fine blue mosaic with occasional pale pink rectangles.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000001.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000001"
    },
    {
      "id": "E03",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000010",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000010",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 10; all-pink palette extreme; sustained analysis.",
      "observationNote": "Static preview viewed: all-pink fine field, blush to magenta, vertical light gradient.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000010.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000010"
    },
    {
      "id": "E04",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000020",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000020",
      "sourceIds": [
        "S04",
        "S10"
      ],
      "selectionNote": "Edition 20; palest, largest-block sample.",
      "observationNote": "Static preview viewed: large pale blocks in mint and lavender, near-white edges.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000020.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000020"
    },
    {
      "id": "E05",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "332000124",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124",
      "sourceIds": [
        "S04",
        "S05",
        "S09",
        "S10"
      ],
      "selectionNote": "Verified AB5D-held work, header, live-checked with pause controls; sustained analysis.",
      "observationNote": "Static preview and live renderer viewed: fine vertical blocks in sky and powder blue; hash matched chain; animation, Space pause/resume and click pause all verified; zero audio elements.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/332000124"
    }
  ],
  "publication": {
    "date": "2026-09-20",
    "url": "https://ab5d.xyz/series/steps-by-johan/",
    "authorization": "Phil requested website publication on 2026-09-17.",
    "reviewSnapshot": "/docs/series-essays/production/steps-by-johan/record.json",
    "unresolvedResearchQuestionsRetained": true
  }
}
