{
  "schema": "ab5d-series-essay/1",
  "identity": {
    "chainId": 1,
    "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
    "projectId": 67,
    "slug": "petri-by-fabin-rasheed",
    "title": "Petri",
    "artistCredit": "Fabin Rasheed",
    "artistDossierUrls": [
      "https://ab5d.xyz/artists/fabin-rasheed/"
    ]
  },
  "revision": 2,
  "researchCutoff": "2026-09-18",
  "status": "published-with-research-limitations",
  "facts": [
    {
      "id": "minted-count",
      "topic": "mint",
      "value": 200,
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": "Equals maximum."
    },
    {
      "id": "first-token-minted-at",
      "topic": "mint",
      "value": "2021-05-14T23:41:41+00:00",
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": "Indexed invocation 0; role/allocation unverified."
    },
    {
      "id": "activated-at",
      "topic": "mint",
      "value": "2021-05-15T00:02:29+00:00",
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": ""
    },
    {
      "id": "completed-at",
      "topic": "mint",
      "value": "2021-07-26T17:36:12+00:00",
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": ""
    },
    {
      "id": "script-type",
      "topic": "construction",
      "value": "p5@1.0.0",
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": ""
    },
    {
      "id": "license-label",
      "topic": "rights",
      "value": "GNU LGPL",
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": ""
    },
    {
      "id": "original-mint-price-eth",
      "topic": "mint",
      "value": null,
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [],
      "status": "unknown",
      "note": "Not recovered."
    },
    {
      "id": "current-price-wei",
      "topic": "mint",
      "value": "300000000000000000",
      "observedAt": "2026-09-18T00:10:37.694748+00:00",
      "sourceIds": [
        "S02"
      ],
      "status": "verified",
      "note": "Current index only, not original mint price."
    }
  ],
  "rights": {
    "artwork": {
      "reportedLabel": "GNU LGPL",
      "category": "custom",
      "termsUrl": null,
      "observedAt": "2026-09-18",
      "sourceIds": [
        "S02",
        "S10",
        "S19"
      ],
      "note": "Exact unversioned field; LGPL3 text inspected to distinguish software scope/version selection. Artist project page also has generic all-rights-reserved footer. No definitive version/material scope inferred.",
      "unresolvedConflicts": [
        "Project GNU LGPL label versus generic artist website all-rights-reserved footer: scope unresolved; no replacement inferred."
      ]
    },
    "code": {
      "reportedLabel": null,
      "category": "unknown",
      "termsUrl": null,
      "observedAt": "2026-09-18",
      "sourceIds": [
        "S03",
        "S02"
      ],
      "note": "No separate script license header; unversioned project field may concern code but scope not specified.",
      "unresolvedConflicts": []
    },
    "thirdParty": [
      {
        "reportedLabel": "LGPL-2.1",
        "category": "custom",
        "termsUrl": "https://raw.githubusercontent.com/processing/p5.js/1.0.0/license.txt",
        "observedAt": "2026-09-18T00:14:47.934000+00:00",
        "sourceIds": [
          "S17",
          "S18"
        ],
        "note": "p5.js1.0.0 package and tagged license inspected; separate from unversioned artwork field.",
        "unresolvedConflicts": []
      }
    ]
  },
  "sections": [
    {
      "id": "work-context",
      "heading": "The work and its context",
      "bodyMarkdown": "Petri is a 200-edition Art Blocks Factory series by Fabin Rasheed, publicly dated 15 May 2021. Its project ID is 67 on Ethereum contract `0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270`; Atlas position 66 is a separate catalogue number.[^S01][^S02] Each inspected original presents a luminous, changing figure inside a dark circular field. A thin colored circumference and a central dot remain stable landmarks while mirrored ribbons spread, fold, and accumulate around them.[^S11][^S15]\n\nThe artist introduces Petri as a home for an evolving organism and describes its movement as indefinitely continuing without repetition.[^S19] The biological language invites patient observation: the circle resembles a vessel in which something is developing. In the actual script, that development comes from correlated noise samples, reflected line segments, and retained drawing history.[^S03] It is a visual organism, described through the behavior of marks rather than a documented model of cells.\n\nRasheed's Art Blocks profile situates him across art, design, and technology.[^S06] His own current biography emphasizes wave shapes, geometry, recurrences, and the relationship between contemplative experience and technological media.[^S07] Petri gives those concerns a compact form. The viewer does not navigate a scene or select a branch. Watching the same edition at different moments is already enough to encounter a substantially altered image."
    },
    {
      "id": "conception",
      "heading": "Conception and development",
      "bodyMarkdown": "The artist's project page supplies a concise development sequence. In its Process section, Rasheed traces Petri to experiments with a thread moving through Perlin noise, followed by an Abstraction series of motion, then the circular Petri works.[^S19] The sequence is artist testimony about development, but the page does not date each stage. Its illustrations should not be mistaken for verified Art Blocks token editions.\n\nA thread is an apt starting point for the final mechanism. One succession of sampled positions produces a line; reflecting that line produces coordinated partners; retaining earlier positions gives the partners apparent breadth.[^S03] That interpretation connects the artist's account with the shipped code without assuming that every intermediate experiment used the final algorithm.\n\nIn a November 2021 NFT Malayali interview, Rasheed describes trial and error as central to learning creative technologies and recommends Processing or p5.js as an entry point.[^S09] This later testimony supports an experimental approach to practice. It does not identify a particular tutorial as Petri's source or supply missing dates for its development. Likewise, his current writing about recurring geometries and contemplative experience is a retrospective context, not a contemporaneous launch statement.[^S07]\n\nThe project's promise of infinite, non-repeating motion should remain attributed to the artist.[^S19] The complete code and observed originals establish ongoing change over the inspection period. Neither a short viewing nor the presence of a noise function proves mathematical non-repetition for unbounded time.[^S03]"
    },
    {
      "id": "construction",
      "heading": "How the work was constructed",
      "bodyMarkdown": "Petri's complete artist program is unusually compact: 3,328 UTF-8 bytes, retrieved through the official index with SHA-256 `a455821709efe0cb1d791f44111f0d07bc22312e48076e19ca73d852d4dc19dc`. Its declared dependency is `p5@1.0.0`. The retrieval was indexed, with no independently pinned Ethereum block; the full query and returned identity are retained in the evidence record.[^S02][^S03]\n\n`setup()` makes a square canvas from the shorter window dimension. A prefix of `tokenData.hash` becomes the initial state of a small shift-and-exclusive-or random generator. One result, scaled between zero and 200, becomes the seed for p5 noise and the starting hue. The program therefore compresses the hash into a relatively small numerical starting state. It does not consult a catalogue of named palettes or assign biological species to tokens.[^S03]\n\nIn `draw()`, two offsets advance and a loop samples noise repeatedly across the canvas. The two noise calls exchange their coordinate arguments. Their results supply a new position, while `pNV` and `pNV2` retain the preceding one. Four line calls join those positions in reflected forms: the original, its horizontal reflection, its vertical reflection, and the reflection across both axes. This produces the persistent left-right and top-bottom correspondences visible in every sampled edition.[^S03]\n\nThese segments are drawn repeatedly while a very faint dark background is applied. Earlier marks persist long enough for successive thin lines to appear as folded ribbons or shaded membranes. The apparent surfaces need not be filled polygons: they emerge from accumulated strokes and changing color. A small center ellipse and a fine circular rim provide fixed reference points. A much thicker black circumference covers the exterior region, reinforcing the impression of a contained dish.[^S03]\n\nColor changes operate alongside movement. The hue variable `count` advances by 0.2 per frame and reverses direction around a range of 55 above its starting value. The moving strokes use a hue derived from that changing count; the center and rim use the seed-derived hue. Saturation also depends on the previous noise value. This explains why a comparatively stable rim can surround a changing field of related colors without requiring a separate palette for every visible fold.[^S03]\n\nTiming is frame-based. One noise offset advances once per draw, while another advances inside the loop that steps across the width in increments of five. The script does not establish a fixed duration in seconds for a transformation. A further detail matters for reproduction: `setup()` declares a local `M` from viewport size, used for the initial noise scale, but the stroke-weight expression in `draw()` reads the separate global `M`, which remains one. It is inaccurate to describe all geometry as uniformly scaled.[^S03]\n\nA `windowResized()` handler resizes and clears the canvas, but does not rerun the whole seed setup. No click, keyboard, or audio handler appears in the artist program. The five hosted originals visibly changed between two inspection batches; this establishes actual animation, not just the possibility inferred from `draw()`. Resize behavior was read from code rather than tested, and sound was not auditioned.[^S03][^S11][^S12][^S13][^S14][^S15]"
    },
    {
      "id": "mint",
      "heading": "The mint",
      "bodyMarkdown": "The earliest indexed mint, edition 0, occurred on 14 May 2021 at 23:41:41 UTC. Activation followed at 00:02:29 UTC on 15 May. Edition 1 was minted at 06:24:45 UTC that day, matching the indexed start time and the official release date.[^S02][^S01] The first token therefore predates activation by 20 minutes and 48 seconds. Its timing alone does not establish whether it was an artist reservation or another administrative allocation.\n\nThe sample spans the subsequent mint history: edition 10 was minted on 6 June, edition 15 on 3 July, and edition 20 on 7 July. Edition 199, the final token in the current 200-edition count, was minted on 26 July 2021 at 17:36:12 UTC, matching indexed completion.[^S02] The interval from recorded start to completion is 72 days, 11 hours, 11 minutes, and 27 seconds. This is a calculation between indexed events, not proof of an uninterrupted public sale.\n\nThe current price field is 300,000,000,000,000,000 wei, or 0.3 ETH. No contemporaneous receipt or historical minter configuration was recovered to establish the opening price.[^S02] Current supply and price must not be projected backward as an original announcement.\n\nThe artist's project page separately pledges Petri proceeds and royalties from January 2022 onward to the Processing Foundation.[^S19] That is a documented commitment, not a verified accounting of transfers or a statement about the May 2021 mint proceeds."
    },
    {
      "id": "rights",
      "heading": "Copyright and licensing",
      "bodyMarkdown": "The exact project license label is `GNU LGPL`, with no linked text or version.[^S02] GNU LGPL is a software-license family. Its version 3 defines covered libraries, applications, combined works, and distribution conditions; section 6 also addresses version selection where a covered library omits a number.[^S10] Those clauses cannot resolve, by themselves, which Petri materials the project field was intended to cover. The inspected record does not distinguish output images, the artist program, and dependency code within that label.\n\nThe artist's Petri page also carries an all-rights-reserved footer.[^S19] This is a broader website notice, not an explicitly identified replacement for the project's LGPL field. Both statements are preserved, with their scope unresolved. The absence of a version is not an invitation to silently choose whichever terms seem most permissive, nor is it sufficient reason to relabel the project as definitively all rights reserved.\n\nThe complete artist script has no separate license header clarifying the grant.[^S03] The p5.js 1.0.0 package independently declares `LGPL-2.1`, and its tagged license text supplies that library's terms.[^S17][^S18] The dependency's version does not automatically become the version of Petri's artwork label.\n\nToken ownership does not transfer copyright. This essay's original prose is offered under CC0-1.0; that dedication excludes the artist's images, program, and third-party library."
    },
    {
      "id": "examples",
      "heading": "Close reading of examples",
      "bodyMarkdown": "Five actual original renderers were inspected: editions 0, 1, 10, 20, and 15, corresponding to tokens 67000000, 67000001, 67000010, 67000020, and 67000015 on Ethereum contract `0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270`. Token records and canonical pages verify the identities.[^S02] Edition 15 is the header selection; its indexed owner matches the complete current wallet set linked to the AB5D profile.[^S16] The sample combines early chronology with the holding, not a claim about rare traits. The retrieved feature objects were empty.[^S02]\n\nEdition 0 initially presented four long blue and turquoise forms approaching the diagonals of a green-rimmed circle. Their inner ends curled toward the bright green central dot, leaving a black horizontal separation. In the later observation, the arms extended toward the rim and a more elaborate blue-green structure occupied the center. New folds partly connected areas that had previously read as separated pairs.[^S11]\n\nIts apparent growth depends on the difference between stable references and changing surfaces. The dot and circular boundary let the viewer register an expanding or thickening interior without the entire composition seeming to drift. The mirrored arrangement can suggest wings or limbs, but none of those readings stays secure as the folds change. Following one side also predicts the other side's response, creating order within a constantly revised silhouette. This is a temporal reading of one edition, not a comparison of two supposedly different organisms.[^S11]\n\nEdition 1 occupied a warmer register, with a fine orange rim and center around magenta and violet forms. The first observation showed broad paired lobes above and below an open central interval. Later, additional pink material and crossing violet contours formed a compact diamond-like structure around the center. The original outer lobes remained recognizable, so the new state looked like an elaboration rather than a hard replacement.[^S12]\n\nEdition 10 used a blue rim and center against an intense green-yellow interior. Its initial figure was broad and roughly diamond-shaped, with pointed extensions and a bright vertical middle. The second state added smaller curled loops across its center and lateral edges while retaining the earlier outer points. Yellow highlights made the folded contours particularly legible against the green field.[^S13]\n\nEdition 20 showed the most conspicuous opening in the first batch: a cyan and green ring-like figure surrounded a large dark center. Small protrusions punctuated its top and bottom. In the later batch, broad cyan-green forms occupied much of that former opening, leaving dark curved gaps at the sides. The central dot had not moved; the impression of the interior closing came from the changing traces around it.[^S14]\n\nEdition 15 began as a magenta and blue X inside a yellow circumference. Its narrow arms crossed at the yellow central dot, widening into folded tips toward the four diagonals. Later, a dense purple-blue structure filled the space between the arms. Rounded magenta folds crossed a more angular blue interior, with small dark openings preventing it from becoming one uninterrupted mass.[^S15]\n\nThe held edition makes the importance of duration especially clear. Its first observed state offered a quick, legible gesture; the next required the eye to work through overlapping folds. Neither state is a final composition. The symmetry remained readable while the amount and distribution of visible material changed. A single preview could document one silhouette, but would omit the relation between those silhouettes, which is central to experiencing this work.[^S15]"
    },
    {
      "id": "significance",
      "heading": "Significance and limitations",
      "bodyMarkdown": "Petri builds a changing figure from a small set of coordinated operations: seeded noise, mirrored segments, color oscillation, and persistent traces. Its circular boundary and center turn those operations into something that can be watched as a contained organism.[^S03][^S11][^S15] The artist's documented progression from a moving thread to the Petri series gives that mechanism a concrete development context.[^S19]\n\nThe five originals establish motion through observed changes rather than thumbnails alone. They also show the limits of comparison: the tabs were not synchronized to an identical frame, so a broader silhouette cannot be assigned solely to a seed difference rather than elapsed execution. The observations support accounts of particular changing states, not a ranked taxonomy of tokens or proof of eternal non-repetition.\n\nOpen research questions remain:\n\n- Which materials and LGPL version were intended by the unversioned project field, and how does the website footer relate to that grant?\n- What original price, allocations, pauses, or supply changes governed the mint?\n- Can dated records establish the intervals between the thread, Abstraction, and Petri development stages?\n- How do different viewport sizes, frame rates, and resize events alter long-duration viewing?"
    }
  ],
  "examples": [
    {
      "id": "E01",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000000",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000000",
      "sourceIds": [
        "S02",
        "S11"
      ],
      "observationIds": [
        "V01"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Green rim/dot; four long blue/turquoise diagonal arms, open central horizontal interval. Later: Arms reach nearer rim; new blue/green central folds connect previously separated areas."
    },
    {
      "id": "E02",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000001",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000001",
      "sourceIds": [
        "S02",
        "S12"
      ],
      "observationIds": [
        "V02"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Orange rim/dot; magenta/violet upper and lower paired lobes with open central interval. Later: Pink central mass and crossing violet contours create diamond-like middle, with outer lobes retained."
    },
    {
      "id": "E03",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000010",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000010",
      "sourceIds": [
        "S02",
        "S13"
      ],
      "observationIds": [
        "V03"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Blue rim/dot; bright green/yellow broad diamond-like form with pointed extensions. Later: New curled yellow/green loops across center/lateral edges, earlier pointed silhouette persists."
    },
    {
      "id": "E04",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000020",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000020",
      "sourceIds": [
        "S02",
        "S14"
      ],
      "observationIds": [
        "V04"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Cyan rim/dot; cyan/green ring-like shape around large open dark center. Later: Broad cyan/green forms fill much of former central opening, leaving dark curved side gaps."
    },
    {
      "id": "E05",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000015",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015",
      "sourceIds": [
        "S02",
        "S15"
      ],
      "observationIds": [
        "V05"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Yellow rim/dot; narrow magenta/blue X with folded broad tips at diagonal extremities. Later: Dense blue/purple middle fills between arms, overlaid rounded magenta folds and small dark openings."
    }
  ],
  "mediaIds": [],
  "provenance": {
    "operator": "commissioning-user-coordinator",
    "agent": "grok-4.6",
    "model": "grok-4.6 + gpt-6-astra",
    "modelVersion": "grok-4.6",
    "tools": [
      "Art Blocks GraphQL",
      "curl",
      "page inspection",
      "image inspection"
    ],
    "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",
    "originalSubmission": {
      "provider": "xAI",
      "model": "Grok 4.6",
      "modelVersion": "grok-4.6",
      "verification": "Contributor self-report; original provider telemetry unavailable",
      "path": ".ab500-cache/series-expansion/grok-batch-001/petri-by-fabin-rasheed",
      "preservedUnchanged": true
    },
    "revisionContributions": [
      {
        "provider": "OpenAI",
        "agent": "Codex",
        "model": "gpt-6-astra",
        "modelVersion": "gpt-6-astra",
        "revision": 2,
        "scope": "Full independent research, artist process recovery, complete code reading, five two-state original observations, fresh holdings/pages, major prose and evidence repair under NEXT-ROUND.",
        "humanEditorialInvolvement": "Assignment/review direction only",
        "tools": [
          "web",
          "Python HTTP/JSON/SHA256",
          "CUA Chrome screenshots",
          "canonical validator"
        ]
      }
    ],
    "attributionNote": "Original draft Grok4.6 self-reported; substantial independent research/revision OpenAI GPT-6 Astra. Preserve both credits.",
    "generation": {
      "schema": "ab5d-essay-generation/1",
      "model": "grok-4.6 + gpt-6-astra",
      "displayName": "Grok (reported as Grok 4.6), independently revised by GPT-6 Astra",
      "scope": "Original Grok contribution and independent Codex revision; original token telemetry unavailable.",
      "essayCount": 1,
      "usage": null,
      "perEssayUsage": null,
      "usageDetail": "Grok did not supply token telemetry. Complete essay token usage is unavailable. Original model/version is contributor-reported. GPT-6 Astra independently rechecked sources, script and the original outputs and revised the text; revision provenance is preserved in the essay data.",
      "contributors": {
        "operator": "commissioning-user-coordinator",
        "agent": "grok-4.6",
        "model": "Grok 4.6",
        "modelVersion": "grok-4.6",
        "tools": [
          "Art Blocks GraphQL",
          "curl",
          "page inspection",
          "image inspection"
        ],
        "humanEditorialInvolvement": "none-prior-to-review",
        "originalProseLicense": "CC0-1.0",
        "originalSubmission": {
          "provider": "xAI",
          "model": "Grok 4.6",
          "modelVersion": "grok-4.6",
          "verification": "Contributor self-report; original provider telemetry unavailable",
          "path": ".ab500-cache/series-expansion/grok-batch-001/petri-by-fabin-rasheed",
          "preservedUnchanged": true
        },
        "revisionContributions": [
          {
            "provider": "OpenAI",
            "agent": "Codex",
            "model": "gpt-6-astra",
            "modelVersion": "gpt-6-astra",
            "revision": 2,
            "scope": "Full independent research, artist process recovery, complete code reading, five two-state original observations, fresh holdings/pages, major prose and evidence repair under NEXT-ROUND.",
            "humanEditorialInvolvement": "Assignment/review direction only",
            "tools": [
              "web",
              "Python HTTP/JSON/SHA256",
              "CUA Chrome screenshots",
              "canonical validator"
            ]
          }
        ],
        "attributionNote": "Original draft Grok4.6 self-reported; substantial independent research/revision OpenAI GPT-6 Astra. Preserve both credits."
      }
    }
  },
  "codeInspection": {
    "url": "https://artblocks-mainnet.hasura.app/v1/graphql",
    "locator": "projects_metadata.script exact slug petri-by-fabin-rasheed; corroborated V2 contract/project67; full actual query and variables in evidence.json",
    "sha256": "a455821709efe0cb1d791f44111f0d07bc22312e48076e19ca73d852d4dc19dc",
    "retrievedAt": "2026-09-18T00:10:37.694748+00:00",
    "method": "Full3328-byte artist source read, exact UTF8 SHA256; hosted originals executed and viewed; no independent local execution.",
    "executed": true,
    "chainBlock": null
  },
  "editorialExceptions": [
    {
      "id": "license-scope",
      "status": "pending",
      "reviewer": "coordinator",
      "reason": "Unversioned GNU LGPL field and broad artist-site footer preserved; exact material scope/version unresolved."
    },
    {
      "id": "historical-mint",
      "status": "pending",
      "reviewer": "coordinator",
      "reason": "Original price/allocation/configuration history not audited; current field not backdated."
    }
  ],
  "presentation": {
    "editionSize": 200,
    "maximumEdition": 200,
    "mintDate": "2021-05-14T23:41:41+00:00",
    "mintDateMeaning": "First indexed mint",
    "artwork": {
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "token_id": "67000015",
      "invocation": 15,
      "owner_address": "0xdd19308a9731cdecb67e0d80ca6823394208c045",
      "canonicalUrl": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015",
      "preview_asset_url": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015.png",
      "live_view_url": "/series/petri-by-fabin-rasheed/artwork.html",
      "canonicalLiveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015",
      "mode": "live",
      "copyrightStatus": "GNU LGPL (unversioned)",
      "copyrightUrl": null,
      "displayBasis": "Remote original renderer recommendation for verified current AB5D-held token. Unversioned LGPL field and website footer recorded without inventing a version or grant. No artwork/code redistributed.",
      "interactionNote": "Animation starts automatically."
    },
    "publicationEmbedCheck": {
      "observedAt": "2026-09-18T00:21:34.475037+00:00",
      "result": "Local wrapper original #15 observed in two screenshots without input: four pink organisms develop inward purple trails. Automatic motion verified."
    }
  },
  "observationImages": [
    {
      "id": "E01",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000000",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000000",
      "sourceIds": [
        "S02",
        "S11"
      ],
      "observationIds": [
        "V01"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Green rim/dot; four long blue/turquoise diagonal arms, open central horizontal interval. Later: Arms reach nearer rim; new blue/green central folds connect previously separated areas.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000000.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000000"
    },
    {
      "id": "E02",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000001",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000001",
      "sourceIds": [
        "S02",
        "S12"
      ],
      "observationIds": [
        "V02"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Orange rim/dot; magenta/violet upper and lower paired lobes with open central interval. Later: Pink central mass and crossing violet contours create diamond-like middle, with outer lobes retained.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000001.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000001"
    },
    {
      "id": "E03",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000010",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000010",
      "sourceIds": [
        "S02",
        "S13"
      ],
      "observationIds": [
        "V03"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Blue rim/dot; bright green/yellow broad diamond-like form with pointed extensions. Later: New curled yellow/green loops across center/lateral edges, earlier pointed silhouette persists.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000010.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000010"
    },
    {
      "id": "E04",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000020",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000020",
      "sourceIds": [
        "S02",
        "S14"
      ],
      "observationIds": [
        "V04"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Cyan rim/dot; cyan/green ring-like shape around large open dark center. Later: Broad cyan/green forms fill much of former central opening, leaving dark curved side gaps.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000020.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000020"
    },
    {
      "id": "E05",
      "chainId": 1,
      "contract": "0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270",
      "tokenId": "67000015",
      "url": "https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015",
      "sourceIds": [
        "S02",
        "S15"
      ],
      "observationIds": [
        "V05"
      ],
      "selectionNote": "Four verified assignment candidates plus current AB5D holding #15; not synchronized or rarity sample.",
      "observationNote": "Yellow rim/dot; narrow magenta/blue X with folded broad tips at diagonal extremities. Later: Dense blue/purple middle fills between arms, overlaid rounded magenta folds and small dark openings.",
      "previewUrl": "https://media-proxy.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015.png",
      "liveUrl": "https://generator.artblocks.io/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/67000015"
    }
  ],
  "publication": {
    "date": "2026-09-18",
    "url": "https://ab5d.xyz/series/petri-by-fabin-rasheed/",
    "authorization": "Phil requested website publication on 2026-09-17.",
    "reviewSnapshot": "/docs/series-essays/production/petri-by-fabin-rasheed/record.json",
    "unresolvedResearchQuestionsRetained": true
  }
}
