addrbookFor publishers
← The evidence ledger

Evidence row 2201228

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://puzzle-solvers.x402tookit.com/tower-of-hanoi
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
b1ea9821856a53cdaaf9c7276d9882e419ef359417334d059490d87c015b2720
Leaf
0x0f23aa7fb497110b0a138697843035f2811b826053ee526c3b7a3e649cf534e3

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://puzzle-solvers.x402tookit.com/tower-of-hanoi"
    ]
  ],
  "name": "Puzzle Solvers",
  "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": "Optimal Tower of Hanoi move list for up to 10 disks between pegs A, B and C, and the minimum move count 2^n - 1.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "n": 3
            },
            "type": "http"
          },
          "output": {
            "example": {
              "asOf": "2026-10-21T01:31:34.004Z",
              "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.",
              "from": "A",
              "minimumMoves": 7,
              "moveCount": 7,
              "moves": [
                {
                  "disk": 1,
                  "from": "A",
                  "step": 1,
                  "to": "C"
                },
                {
                  "disk": 2,
                  "from": "A",
                  "step": 2,
                  "to": "B"
                }
              ],
              "n": 3,
              "notChecked": [
                "variants with four or more pegs (Frame-Stewart) or restricted moves",
                "n above 10 (refused to bound the output)"
              ],
              "reasons": [
                "The recursive solution is optimal: moving n disks needs 2^n - 1 moves and no shorter sequence exists."
              ],
              "source": "classic recursive solution, computed locally; minimum 2^n - 1 moves is the proven optimum",
              "spare": "B",
              "summary": "3 disks from A to C take the minimum 7 moves (2^3 - 1).",
              "to": "C",
              "verdict": "SOLVED"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "from": {
                      "description": "Source peg A, B or C (default A)",
                      "type": "string"
                    },
                    "n": {
                      "description": "Number of disks, 1 to 10 (1,023 moves at 10); disk 1 is the smallest",
                      "type": "integer"
                    },
                    "to": {
                      "description": "Target peg A, B or C (default C); must differ from source",
                      "type": "string"
                    }
                  },
                  "required": [
                    "n"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "asOf": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "degraded": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "disclaimer": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "from": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "minimumMoves": {
                      "type": [
                        "null",
                        "number"
                      ]
                    },
                    "moveCount": {
                      "type": [
                        "null",
                        "number"
                      ]
                    },
                    "moves": {
                      "items": {
                        "properties": {
                          "disk": {
                            "type": [
                              "null",
                              "number"
                            ]
                          },
                          "from": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "step": {
                            "type": [
                              "null",
                              "number"
                            ]
                          },
                          "to": {
                            "type": [
                              "null",
                              "string"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "n": {
                      "type": [
                        "null",
                        "number"
                      ]
                    },
                    "notChecked": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "reasons": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "source": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "spare": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "summary": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "to": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "verdict": {
                      "type": [
                        "null",
                        "string"
                      ]
                    }
                  },
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-11-02T04:07:53.176Z",
    "quality": {
      "l30DaysTotalCalls": 2,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-11-02T04:07:52.903Z"
    },
    "resource": "https://puzzle-solvers.x402tookit.com/tower-of-hanoi",
    "serviceName": "Puzzle Solvers",
    "tags": [
      "hanoi",
      "recursion",
      "puzzle",
      "algorithm"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Optimal Tower of Hanoi move list for up to 10 disks between pegs A, B and C, and the minimum move count 2^n - 1."
}

What the leaf hashes

{"body":"b1ea9821856a53cdaaf9c7276d9882e419ef359417334d059490d87c015b2720","id":2201228,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793646801353620,"prev":null,"subject":"x402_bazaar:https://puzzle-solvers.x402tookit.com/tower-of-hanoi","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. 0x0f2322a966f152fccd11421aca7799c5049531849203ee91799127ff9b62a8cd
  2. 0xc72350ce3a6c77e0b6fd5358c889185eb027b9924ac1552230b880cb67b63a73
  3. 0x13b739d979c3ca0f83a4e780196779a153ca967dc1d1912a32c92c40a207a9f8
  4. 0xc1341d7e258ab395682a863fc6de04f8b2f86a6bf274cdd95b7d6440ffca3b3c
  5. 0x5a7c63cc4d84686076059709056d194669251578370322b5636084dfd51d4a8b
  6. 0x0ec517333fb34219f8272e98c26a0ec200ce6fd43807a5959ba3ea5d1c952238
  7. 0xe8f5760fa059b3a7f0f4c63981503413e2227a7616ff0ca404dfbfff70893afb
  8. 0xe4592cefc4806979210463e8154f3072291189a8fe911bb9a6045c5c903a0d11
  9. 0x552bf84acbd569aabc22e46756feada739295ca66c8c8a66104373882a580169
  10. 0xb2b218de3cc2d101173121a37a25c9c23c0d2f901b9d59111bc80e3a717dd6d0
  11. 0x6c256ce5e19cbbdef81f3419ce2ca99f44b8b3918958e1d6d0ecd1b042b3f566
  12. 0x1f774502ee7a3003241373a41b7ad9c63117bf4cc0d75ccaed5b0bf8d86cccad
  13. 0xaed8243a14c659d2324c6748095467bfaec6927f1294091015e04180dda07dd7
  14. 0x9914dfe331775bd1714304f757d2b6b43ba45167245d645ce50f54a3d8617c4d
  15. 0xd82979c12a2aae44121bb6058b3364b3a3cbc9be411e35ab0208df5ed56f65d4
  16. 0x7cb861d18f06406535ade133f716d897f27d257cf0121f99d94c78c713c4b54d
  17. 0x53a741b69e9e51c4a288a74712aa6ac3fb28c8923cd3e6461d161c4f2d48b31a
  18. 0x050f2978b537f7afb21ee1551577cdf146d1c56f4df12d24315ae5e69366b0a4
  19. 0x365b161a4b68d750dcc4b3ecce1154a2163c87b08762079428e68f0ebb6a754e
Day root
0x78fecaabbe319e56f5c4b80fc02e2052e198ad24781da8832a475ff65f2002d1
Chained
0xdc35957db5d1371ca382b9152878ffece28ec7c5cb4f98fd71ddb367f8b999b2
Published
On Arc Testnet, block 70432815: 0x56b814612eb2e3e544153df3e91e1f7199106d1e430c7d8c6b653feeb9ebe9af

How to check it · This row as JSON