addrbookFor publishers
← The evidence ledger

Evidence row 2201543

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://music-theory.x402tookit.com/roman-numerals
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
fbd65219e431f35207f1bb49a729c819cb98f99dd910ecc87faff301c8d5c08a
Leaf
0xb52830692f19f8ac53464a95ce8f2fdc0ab52408a87f96baa5165bc454901f12

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://music-theory.x402tookit.com/roman-numerals"
    ]
  ],
  "name": "Music Theory",
  "owner_address": "0xb531320805c5bed1d46aeadcf4f008fdf172dbda",
  "raw": {
    "accepts": [
      {
        "amount": "20000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:8453",
        "payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
        "scheme": "exact"
      },
      {
        "amount": "20000",
        "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
        "extra": {
          "feePayer": "D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM",
          "transactionVersions": [
            0
          ]
        },
        "maxTimeoutSeconds": 300,
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "payTo": "DUPiupXtuox38dcGoXUKer5mAydCzmaHjrbQ66qeEm8s",
        "scheme": "exact"
      },
      {
        "amount": "20000",
        "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:137",
        "payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
        "scheme": "exact"
      },
      {
        "amount": "20000",
        "asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:42161",
        "payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
        "scheme": "exact"
      }
    ],
    "description": "Roman numeral analysis of a chord progression in a key: numerals, inversions, borrowed chords, secondary dominants.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "key": "C",
              "progression": "C Am F G7"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "analysis": [
                {
                  "chord": "C",
                  "degreeFromTonic": 0,
                  "diatonic": true,
                  "diatonicNote": "diatonic to the major scale",
                  "numeral": "I",
                  "role": "tonic",
                  "root": "C"
                },
                {
                  "chord": "Am",
                  "degreeFromTonic": 9,
                  "diatonic": true,
                  "diatonicNote": "diatonic to the major scale",
                  "numeral": "vi",
                  "role": "tonic substitute",
                  "root": "A"
                }
              ],
              "asOf": "2026-10-11T14:26:14.523Z",
              "degraded": false,
              "disclaimer": "Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting.",
              "key": "C major",
              "notChecked": [
                "modulations and tonicisations beyond one-step secondary dominants",
                "modal mixture other than the natural and harmonic minor (other chords are labelled borrowed or altered)",
                "…1 more"
              ],
              "numerals": [
                "I",
                "vi",
                "…2 more"
              ],
              "reasons": [
                "Uppercase = major (or dominant), lowercase = minor or diminished; ° diminished, ø half-diminished, + augmented; 6, 64, 65, 43, 42 mark inversions from a slash bass.",
                "In a minor key the natural minor scale is the reference; the major V, V7 and the diminished vii° are also accepted as harmonic minor."
              ],
              "source": "computed locally",
              "summary": "In C major: I vi IV V7.",
              "verdict": "ALL_DIATONIC"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "key": {
                      "description": "Key of the progression: C, G, Am, F# minor",
                      "type": "string"
                    },
                    "progression": {
                      "description": "Chords separated by spaces, commas or bars: C Am F G7",
                      "type": "string"
                    }
                  },
                  "required": [
                    "key",
                    "progression"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "analysis": {
                      "items": {
                        "properties": {
                          "chord": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "degreeFromTonic": {
                            "type": [
                              "null",
                              "number"
                            ]
                          },
                          "diatonic": {
                            "type": [
                              "boolean",
                              "null"
                            ]
                          },
                          "diatonicNote": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "numeral": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "role": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "root": {
                            "type": [
                              "null",
                              "string"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "asOf": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "degraded": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "disclaimer": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "key": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "notChecked": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "numerals": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "reasons": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "source": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "summary": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "verdict": {
                      "type": [
                        "null",
                        "string"
                      ]
                    }
                  },
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-11-01T23:39:47.778Z",
    "quality": {
      "l30DaysTotalCalls": 2,
      "l30DaysUniquePayers": 2,
      "lastCalledAt": "2026-11-01T23:39:47.607Z"
    },
    "resource": "https://music-theory.x402tookit.com/roman-numerals",
    "serviceName": "Music Theory",
    "tags": [
      "music",
      "harmony",
      "roman-numerals",
      "analysis"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Roman numeral analysis of a chord progression in a key: numerals, inversions, borrowed chords, secondary dominants."
}

What the leaf hashes

{"body":"fbd65219e431f35207f1bb49a729c819cb98f99dd910ecc87faff301c8d5c08a","id":2201543,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793646806597077,"prev":null,"subject":"x402_bazaar:https://music-theory.x402tookit.com/roman-numerals","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (444186 rows).

  1. 0xb52852173241d0c6c9f541eb692edd4b9965d6770f07f06a353593db9af49711
  2. 0x45e15bcaed3873482fa70e19e148f1364c4bf65b5b908667cbe0ded761386e89
  3. 0x24199f4977644443e6d051acd94f952440200df6c520b565f749ebd40e8d9cc8
  4. 0xa39a7cfeb7f0e5e3b99096f3cf8f4061e890f590486a2ac369239f30daf48cfe
  5. 0xae445328256d456a43d11b3291ff2feedf5f35036eb3caf5531351d2e5e0879b
  6. 0xb635b4dcdb0e99f38c26fe9397c788f581de280e994eb9493c7bdfd34a7f1b89
  7. 0x6f13e1d156de19964d268ec26a58abcf7726e7d266a63d86d102da29614653db
  8. 0x0598306e1c10b8272f76a913a13d34a6f125975e8427e093ee9f6bb412b9c4dc
  9. 0x8f88fb33c58807d9a88294c44f54747d478cd731a3f86ae10b124c9244983714
  10. 0xbe3f9a25d29a7a825cb3aeacec656335196e03414d497829a99a472daec83ce6
  11. 0x1d7550d28eee08e134d18cbe246fc92783b3e2319f1f66c9bc4fb223bc00f533
  12. 0x699ae7fef9e8b87b378f2b7f3c6ae482aa3f19000267f273752a19f30c704991
  13. 0x8f3b097427a1bfae26e9231cb5b00552011a27ad93aa4c0d3e267190fcbbb962
  14. 0x08da04eef748b7ac08271324db18913501d72c52afa240bf3f08b6da46e3b97f
  15. 0x834b6b9a36b42da183e2542785e8d2d7548ace455268a81922edbe6020cef644
  16. 0x2922573a524a0694086782ac45fa3083d3fc3f6a2a479b2105e1e2f06b2916f7
  17. 0x07ad80c0c234ecea379a2f4450dfd0804db049dbc62abe77af6306049ca6b6c2
  18. 0x98cbbf2c68ab4c0b4db782aeb88bea1f30b02178cf8b5d3d24a931d19492ea6d
  19. 0x252cce55f1a3d5391c16f82d7f62494429a5f69b03486d4cfcfb7b2c96d6c884
Day root
0x78fecaabbe319e56f5c4b80fc02e2052e198ad24781da8832a475ff65f2002d1
Chained
0xdc35957db5d1371ca382b9152878ffece28ec7c5cb4f98fd71ddb367f8b999b2
Published
On Arc Testnet, block 70432815: 0x56b814612eb2e3e544153df3e91e1f7199106d1e430c7d8c6b653feeb9ebe9af

How to check it · This row as JSON