{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/loopholetape-com/json-schema/loopholetape-com-verdict-schema.json",
  "title": "VerdictEnvelope",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/loopholetape-com-openapi.json#/components/schemas/Verdict",
  "properties": {
    "ok": {
      "const": true,
      "title": "Ok",
      "type": "boolean"
    },
    "schema_version": {
      "const": "2.0",
      "title": "Schema Version",
      "type": "string"
    },
    "generated_at": {
      "title": "Generated At",
      "type": "string"
    },
    "t": {
      "title": "T",
      "type": "number"
    },
    "coverage": {
      "const": "full",
      "title": "Coverage",
      "type": "string"
    },
    "data": {
      "properties": {
        "mint": {
          "title": "Mint",
          "type": "string"
        },
        "verdict": {
          "enum": [
            "avoid",
            "caution",
            "no_flags_observed"
          ],
          "title": "Verdict",
          "type": "string"
        },
        "basis": {
          "description": "Rule ids that fired; empty for no_flags_observed. The rule is published at /v1/labels.",
          "items": {
            "type": "string"
          },
          "title": "Basis",
          "type": "array"
        },
        "reason": {
          "title": "Reason",
          "type": "string"
        },
        "probabilities": {
          "anyOf": [
            {
              "properties": {
                "model": {
                  "title": "Model",
                  "type": "string"
                },
                "calibration": {
                  "title": "Calibration",
                  "type": "string"
                },
                "horizon_s": {
                  "title": "Horizon S",
                  "type": "integer"
                },
                "rug_within_300s": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Rug Within 300S"
                },
                "true_graduation": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "True Graduation"
                },
                "rug_within_300s_reason": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Rug Within 300S Reason"
                },
                "true_graduation_reason": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "True Graduation Reason"
                },
                "reason": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Reason"
                },
                "rug_within_300s_basis": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Rug Within 300S Basis"
                },
                "base_rate_same_age": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Base Rate Same Age"
                },
                "recalibration": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Recalibration"
                },
                "diagnostics": {
                  "anyOf": [
                    {
                      "additionalProperties": true,
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Diagnostics"
                },
                "features_used": {
                  "anyOf": [
                    {
                      "additionalProperties": true,
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Features Used"
                }
              },
              "required": [
                "model",
                "calibration",
                "horizon_s"
              ],
              "title": "Probabilities",
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "description": "The calibrated numbers exactly as the compact check publishes them."
        },
        "quote": {
          "anyOf": [
            {
              "properties": {
                "asset": {
                  "description": "The curve's quote asset: sol, usdc, pyusd, stock (an xStocks tokenized equity), other, or unknown (not read from the curve account; is_sol says what our tape shows).",
                  "enum": [
                    "sol",
                    "usdc",
                    "pyusd",
                    "stock",
                    "other",
                    "unknown"
                  ],
                  "title": "Asset",
                  "type": "string"
                },
                "mint": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "The quote_mint the bonding-curve account holds (the all-zero default 11111111111111111111111111111111 on SOL curves); null when not read.",
                  "title": "Mint"
                },
                "modelled": {
                  "description": "True only for a curve shown to be SOL-quoted: our flags, labels, verdict and odds are measured in SOL. False = those are withheld (reason quote_not_modelled).",
                  "title": "Modelled",
                  "type": "boolean"
                },
                "is_sol": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "true = SOL-quoted, false = quoted in another asset, null = not established yet.",
                  "title": "Is Sol"
                },
                "holder_rewards": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "The curve's is_holder_reward flag (pump.fun Holder Rewards: the creator fee goes to holders); null when the account was not read.",
                  "title": "Holder Rewards"
                },
                "basis": {
                  "description": "curve_account = read from the bonding-curve account over RPC; curve_stream = the same account fields as our capture streams them; tape = our capture's evidence; none = no evidence yet.",
                  "enum": [
                    "curve_account",
                    "curve_stream",
                    "tape",
                    "none"
                  ],
                  "title": "Basis",
                  "type": "string"
                },
                "evidence": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "The tape evidence behind is_sol (/v1/labels quote.evidence).",
                  "title": "Evidence"
                },
                "reason": {
                  "anyOf": [
                    {
                      "const": "quote_not_modelled",
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "Set when modelled is false.",
                  "title": "Reason"
                }
              },
              "required": [
                "asset",
                "modelled",
                "basis"
              ],
              "title": "Quote",
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The curve's quote asset (/v1/labels quote); a verdict is sold only for a SOL-quoted curve, any other is refused unpaid (quote_not_modelled)."
        },
        "odds_caveat": {
          "title": "Odds Caveat",
          "type": "string"
        },
        "reasons": {
          "description": "Up to three observed flags, earliest first.",
          "items": {
            "properties": {
              "code": {
                "title": "Code",
                "type": "string"
              },
              "text": {
                "title": "Text",
                "type": "string"
              },
              "first_seen_at": {
                "anyOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "First Seen At"
              },
              "first_seen_after_launch_s": {
                "anyOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "First Seen After Launch S"
              },
              "evidence": {
                "additionalProperties": true,
                "title": "Evidence",
                "type": "object"
              }
            },
            "required": [
              "code",
              "text",
              "first_seen_at",
              "first_seen_after_launch_s",
              "evidence"
            ],
            "title": "VerdictReason",
            "type": "object"
          },
          "maxItems": 3,
          "title": "Reasons",
          "type": "array"
        },
        "reasons_total": {
          "minimum": 0,
          "title": "Reasons Total",
          "type": "integer"
        },
        "cohorts": {
          "anyOf": [
            {
              "properties": {
                "version": {
                  "const": "cohorts-1",
                  "title": "Version",
                  "type": "string"
                },
                "top1_share": {
                  "description": "Share of total supply held by the largest wallet in our ledger (the bonding curve and the mayhem agent are not holders).",
                  "title": "Top1 Share",
                  "type": "number"
                },
                "top10_share": {
                  "description": "Share of total supply held by the 10 largest wallets in our ledger (the bonding curve and the mayhem agent are not holders).",
                  "title": "Top10 Share",
                  "type": "number"
                },
                "union_share": {
                  "description": "Share of supply held by wallets in at least one cohort, each wallet counted once.",
                  "title": "Union Share",
                  "type": "number"
                },
                "slot_windows": {
                  "properties": {
                    "bundlers": {
                      "description": "Inclusive slot offsets from the create slot.",
                      "items": {
                        "type": "integer"
                      },
                      "maxItems": 2,
                      "minItems": 2,
                      "title": "Bundlers",
                      "type": "array"
                    },
                    "snipers": {
                      "description": "Inclusive slot offsets from the create slot; the upper end is basis.sniper_max_offset.",
                      "items": {
                        "type": "integer"
                      },
                      "maxItems": 2,
                      "minItems": 2,
                      "title": "Snipers",
                      "type": "array"
                    }
                  },
                  "required": [
                    "bundlers",
                    "snipers"
                  ],
                  "title": "SlotWindows",
                  "type": "object"
                },
                "basis": {
                  "anyOf": [
                    {
                      "properties": {
                        "slot_ms": {
                          "description": "The protocol's target slot duration in the slot regime of the mint's create slot (/v1/labels cohorts.slot_regime).",
                          "title": "Slot Ms",
                          "type": "integer"
                        },
                        "slot_ms_measured": {
                          "description": "That regime's measured mean slot duration, from mainnet block times.",
                          "title": "Slot Ms Measured",
                          "type": "number"
                        },
                        "regime_from_slot": {
                          "description": "First slot of that regime.",
                          "title": "Regime From Slot",
                          "type": "integer"
                        },
                        "regime_from": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "description": "Block time of that slot (null for the first regime).",
                          "title": "Regime From"
                        },
                        "regime_by": {
                          "description": "What the regime was read from.",
                          "enum": [
                            "create_slot",
                            "launch_time",
                            "current"
                          ],
                          "title": "Regime By",
                          "type": "string"
                        },
                        "bundle_max_offset": {
                          "description": "N: bundlers are offsets 0-N.",
                          "title": "Bundle Max Offset",
                          "type": "integer"
                        },
                        "sniper_window_s": {
                          "description": "The sniper time window.",
                          "title": "Sniper Window S",
                          "type": "number"
                        },
                        "sniper_max_offset": {
                          "description": "K = round(sniper_window_s / slot_ms): snipers are offsets N+1..K.",
                          "title": "Sniper Max Offset",
                          "type": "integer"
                        },
                        "sniper_window_measured_s": {
                          "description": "When slot K starts after the create slot at the measured slot duration.",
                          "title": "Sniper Window Measured S",
                          "type": "number"
                        }
                      },
                      "required": [
                        "slot_ms",
                        "slot_ms_measured",
                        "regime_from_slot",
                        "regime_by",
                        "bundle_max_offset",
                        "sniper_window_s",
                        "sniper_max_offset",
                        "sniper_window_measured_s"
                      ],
                      "title": "CohortBasis",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "The slot regime the windows come from and the numbers derived from it (/v1/labels cohorts.basis)."
                },
                "unbooked_sol": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "The curve's own SOL after the last booked trade minus the net SOL of every booked trade since launch: SOL that moved in trades our tape does not hold; null when it cannot be checked.",
                  "title": "Unbooked Sol"
                },
                "shares_complete": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "True when the booked trades account for the curve's SOL (within 0.001 SOL); false when trades are missing, so every share here is a lower bound; null when it cannot be checked.",
                  "title": "Shares Complete"
                },
                "sol_complete": {
                  "description": "True when every cohort SOL figure is exact; false names the reason in sol_reason.",
                  "title": "Sol Complete",
                  "type": "boolean"
                },
                "sol_reason": {
                  "anyOf": [
                    {
                      "enum": [
                        "tape_truncated",
                        "quote_not_sol",
                        "trades_unbooked",
                        "create_sol_unknown"
                      ],
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Sol Reason"
                },
                "dev": {
                  "properties": {
                    "share_of_supply": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Tokens the cohort's wallets hold now / total supply (1B; 2B on a mayhem launch).",
                      "title": "Share Of Supply"
                    },
                    "n_wallets": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets in the cohort, sold-out ones included.",
                      "title": "N Wallets"
                    },
                    "n_holding": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets of the cohort still holding tokens.",
                      "title": "N Holding"
                    },
                    "buy_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that entered the curve on the cohort's buys (fees paid outside the curve are not in it).",
                      "title": "Buy Sol"
                    },
                    "sell_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that left the curve on the cohort's sells.",
                      "title": "Sell Sol"
                    },
                    "net_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "buy_sol - sell_sol: negative when the cohort took out more SOL than it put in; null when sol_complete is false for it.",
                      "title": "Net Sol"
                    },
                    "wallets": {
                      "anyOf": [
                        {
                          "items": {
                            "properties": {
                              "wallet": {
                                "title": "Wallet",
                                "type": "string"
                              },
                              "share_of_supply": {
                                "description": "Tokens this wallet holds now / total supply.",
                                "title": "Share Of Supply",
                                "type": "number"
                              },
                              "first_slot_offset": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "Slots after the create slot when the wallet's first tokens of this mint arrived; null when it never received any.",
                                "title": "First Slot Offset"
                              },
                              "net_sol": {
                                "anyOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "SOL it put into the curve on its buys minus SOL it took out on its sells; null when the tape cannot give it exactly.",
                                "title": "Net Sol"
                              },
                              "history": {
                                "anyOf": [
                                  {
                                    "description": "One wallet's history on OTHER pump.fun mints in our tape since the seam (the mint answered is never counted).",
                                    "properties": {
                                      "mints": {
                                        "description": "Other pump.fun mints this wallet bought in our tape since 2026-09-27T00:18:34Z (the mint answered is never counted).",
                                        "minimum": 0,
                                        "title": "Mints",
                                        "type": "integer"
                                      },
                                      "bundled": {
                                        "description": "Of those, mints where its first tokens arrived in the create slot or the next one (the bundlers rule of the cohort block).",
                                        "minimum": 0,
                                        "title": "Bundled",
                                        "type": "integer"
                                      },
                                      "quick_sells": {
                                        "description": "Of those, mints it sold within 60 s of its first buy.",
                                        "minimum": 0,
                                        "title": "Quick Sells",
                                        "type": "integer"
                                      },
                                      "settled": {
                                        "description": "Of those, mints whose outcome labels have settled (/v1/labels, outcome).",
                                        "minimum": 0,
                                        "title": "Settled",
                                        "type": "integer"
                                      },
                                      "rugged": {
                                        "description": "Of the settled ones, mints labelled rugged_within_300s by the public rule.",
                                        "minimum": 0,
                                        "title": "Rugged",
                                        "type": "integer"
                                      },
                                      "graduated": {
                                        "description": "Of the settled ones, mints that truly graduated.",
                                        "minimum": 0,
                                        "title": "Graduated",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "mints",
                                      "bundled",
                                      "quick_sells",
                                      "settled",
                                      "rugged",
                                      "graduated"
                                    ],
                                    "title": "WalletHistory",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "This wallet's history on other pump.fun mints in our tape (mints, bundled, quick_sells, settled, rugged, graduated); null when the reputation is not ready (/v1/labels, reputation)."
                              }
                            },
                            "required": [
                              "wallet",
                              "share_of_supply"
                            ],
                            "title": "CohortWallet",
                            "type": "object"
                          },
                          "maxItems": 10,
                          "type": "array"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Up to 10 of the cohort's wallets, largest holding first.",
                      "title": "Wallets"
                    },
                    "source": {
                      "enum": [
                        "tape",
                        "tape+funding_capture",
                        "unavailable"
                      ],
                      "title": "Source",
                      "type": "string"
                    },
                    "reason": {
                      "anyOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Why the cohort's figures are null.",
                      "title": "Reason"
                    },
                    "n_funded_by_creator": {
                      "description": "Wallets in the dev cohort because our funding capture saw the creator fund them.",
                      "minimum": 0,
                      "title": "N Funded By Creator",
                      "type": "integer"
                    }
                  },
                  "required": [
                    "share_of_supply",
                    "source",
                    "n_funded_by_creator"
                  ],
                  "title": "DevCohort",
                  "type": "object"
                },
                "bundlers": {
                  "properties": {
                    "share_of_supply": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Tokens the cohort's wallets hold now / total supply (1B; 2B on a mayhem launch).",
                      "title": "Share Of Supply"
                    },
                    "n_wallets": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets in the cohort, sold-out ones included.",
                      "title": "N Wallets"
                    },
                    "n_holding": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets of the cohort still holding tokens.",
                      "title": "N Holding"
                    },
                    "buy_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that entered the curve on the cohort's buys (fees paid outside the curve are not in it).",
                      "title": "Buy Sol"
                    },
                    "sell_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that left the curve on the cohort's sells.",
                      "title": "Sell Sol"
                    },
                    "net_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "buy_sol - sell_sol: negative when the cohort took out more SOL than it put in; null when sol_complete is false for it.",
                      "title": "Net Sol"
                    },
                    "wallets": {
                      "anyOf": [
                        {
                          "items": {
                            "properties": {
                              "wallet": {
                                "title": "Wallet",
                                "type": "string"
                              },
                              "share_of_supply": {
                                "description": "Tokens this wallet holds now / total supply.",
                                "title": "Share Of Supply",
                                "type": "number"
                              },
                              "first_slot_offset": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "Slots after the create slot when the wallet's first tokens of this mint arrived; null when it never received any.",
                                "title": "First Slot Offset"
                              },
                              "net_sol": {
                                "anyOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "SOL it put into the curve on its buys minus SOL it took out on its sells; null when the tape cannot give it exactly.",
                                "title": "Net Sol"
                              },
                              "history": {
                                "anyOf": [
                                  {
                                    "description": "One wallet's history on OTHER pump.fun mints in our tape since the seam (the mint answered is never counted).",
                                    "properties": {
                                      "mints": {
                                        "description": "Other pump.fun mints this wallet bought in our tape since 2026-09-27T00:18:34Z (the mint answered is never counted).",
                                        "minimum": 0,
                                        "title": "Mints",
                                        "type": "integer"
                                      },
                                      "bundled": {
                                        "description": "Of those, mints where its first tokens arrived in the create slot or the next one (the bundlers rule of the cohort block).",
                                        "minimum": 0,
                                        "title": "Bundled",
                                        "type": "integer"
                                      },
                                      "quick_sells": {
                                        "description": "Of those, mints it sold within 60 s of its first buy.",
                                        "minimum": 0,
                                        "title": "Quick Sells",
                                        "type": "integer"
                                      },
                                      "settled": {
                                        "description": "Of those, mints whose outcome labels have settled (/v1/labels, outcome).",
                                        "minimum": 0,
                                        "title": "Settled",
                                        "type": "integer"
                                      },
                                      "rugged": {
                                        "description": "Of the settled ones, mints labelled rugged_within_300s by the public rule.",
                                        "minimum": 0,
                                        "title": "Rugged",
                                        "type": "integer"
                                      },
                                      "graduated": {
                                        "description": "Of the settled ones, mints that truly graduated.",
                                        "minimum": 0,
                                        "title": "Graduated",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "mints",
                                      "bundled",
                                      "quick_sells",
                                      "settled",
                                      "rugged",
                                      "graduated"
                                    ],
                                    "title": "WalletHistory",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "This wallet's history on other pump.fun mints in our tape (mints, bundled, quick_sells, settled, rugged, graduated); null when the reputation is not ready (/v1/labels, reputation)."
                              }
                            },
                            "required": [
                              "wallet",
                              "share_of_supply"
                            ],
                            "title": "CohortWallet",
                            "type": "object"
                          },
                          "maxItems": 10,
                          "type": "array"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Up to 10 of the cohort's wallets, largest holding first.",
                      "title": "Wallets"
                    },
                    "source": {
                      "enum": [
                        "tape",
                        "tape+funding_capture",
                        "unavailable"
                      ],
                      "title": "Source",
                      "type": "string"
                    },
                    "reason": {
                      "anyOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Why the cohort's figures are null.",
                      "title": "Reason"
                    }
                  },
                  "required": [
                    "share_of_supply",
                    "source"
                  ],
                  "title": "Cohort",
                  "type": "object"
                },
                "snipers": {
                  "properties": {
                    "share_of_supply": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Tokens the cohort's wallets hold now / total supply (1B; 2B on a mayhem launch).",
                      "title": "Share Of Supply"
                    },
                    "n_wallets": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets in the cohort, sold-out ones included.",
                      "title": "N Wallets"
                    },
                    "n_holding": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets of the cohort still holding tokens.",
                      "title": "N Holding"
                    },
                    "buy_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that entered the curve on the cohort's buys (fees paid outside the curve are not in it).",
                      "title": "Buy Sol"
                    },
                    "sell_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that left the curve on the cohort's sells.",
                      "title": "Sell Sol"
                    },
                    "net_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "buy_sol - sell_sol: negative when the cohort took out more SOL than it put in; null when sol_complete is false for it.",
                      "title": "Net Sol"
                    },
                    "wallets": {
                      "anyOf": [
                        {
                          "items": {
                            "properties": {
                              "wallet": {
                                "title": "Wallet",
                                "type": "string"
                              },
                              "share_of_supply": {
                                "description": "Tokens this wallet holds now / total supply.",
                                "title": "Share Of Supply",
                                "type": "number"
                              },
                              "first_slot_offset": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "Slots after the create slot when the wallet's first tokens of this mint arrived; null when it never received any.",
                                "title": "First Slot Offset"
                              },
                              "net_sol": {
                                "anyOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "SOL it put into the curve on its buys minus SOL it took out on its sells; null when the tape cannot give it exactly.",
                                "title": "Net Sol"
                              },
                              "history": {
                                "anyOf": [
                                  {
                                    "description": "One wallet's history on OTHER pump.fun mints in our tape since the seam (the mint answered is never counted).",
                                    "properties": {
                                      "mints": {
                                        "description": "Other pump.fun mints this wallet bought in our tape since 2026-09-27T00:18:34Z (the mint answered is never counted).",
                                        "minimum": 0,
                                        "title": "Mints",
                                        "type": "integer"
                                      },
                                      "bundled": {
                                        "description": "Of those, mints where its first tokens arrived in the create slot or the next one (the bundlers rule of the cohort block).",
                                        "minimum": 0,
                                        "title": "Bundled",
                                        "type": "integer"
                                      },
                                      "quick_sells": {
                                        "description": "Of those, mints it sold within 60 s of its first buy.",
                                        "minimum": 0,
                                        "title": "Quick Sells",
                                        "type": "integer"
                                      },
                                      "settled": {
                                        "description": "Of those, mints whose outcome labels have settled (/v1/labels, outcome).",
                                        "minimum": 0,
                                        "title": "Settled",
                                        "type": "integer"
                                      },
                                      "rugged": {
                                        "description": "Of the settled ones, mints labelled rugged_within_300s by the public rule.",
                                        "minimum": 0,
                                        "title": "Rugged",
                                        "type": "integer"
                                      },
                                      "graduated": {
                                        "description": "Of the settled ones, mints that truly graduated.",
                                        "minimum": 0,
                                        "title": "Graduated",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "mints",
                                      "bundled",
                                      "quick_sells",
                                      "settled",
                                      "rugged",
                                      "graduated"
                                    ],
                                    "title": "WalletHistory",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "This wallet's history on other pump.fun mints in our tape (mints, bundled, quick_sells, settled, rugged, graduated); null when the reputation is not ready (/v1/labels, reputation)."
                              }
                            },
                            "required": [
                              "wallet",
                              "share_of_supply"
                            ],
                            "title": "CohortWallet",
                            "type": "object"
                          },
                          "maxItems": 10,
                          "type": "array"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Up to 10 of the cohort's wallets, largest holding first.",
                      "title": "Wallets"
                    },
                    "source": {
                      "enum": [
                        "tape",
                        "tape+funding_capture",
                        "unavailable"
                      ],
                      "title": "Source",
                      "type": "string"
                    },
                    "reason": {
                      "anyOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Why the cohort's figures are null.",
                      "title": "Reason"
                    }
                  },
                  "required": [
                    "share_of_supply",
                    "source"
                  ],
                  "title": "Cohort",
                  "type": "object"
                },
                "fresh_wallets": {
                  "properties": {
                    "share_of_supply": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "description": "Tokens the cohort's wallets hold now / total supply (1B; 2B on a mayhem launch).",
                      "title": "Share Of Supply"
                    },
                    "n_wallets": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets in the cohort, sold-out ones included.",
                      "title": "N Wallets"
                    },
                    "n_holding": {
                      "anyOf": [
                        {
                          "minimum": 0,
                          "type": "integer"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Wallets of the cohort still holding tokens.",
                      "title": "N Holding"
                    },
                    "buy_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that entered the curve on the cohort's buys (fees paid outside the curve are not in it).",
                      "title": "Buy Sol"
                    },
                    "sell_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "SOL that left the curve on the cohort's sells.",
                      "title": "Sell Sol"
                    },
                    "net_sol": {
                      "anyOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "buy_sol - sell_sol: negative when the cohort took out more SOL than it put in; null when sol_complete is false for it.",
                      "title": "Net Sol"
                    },
                    "wallets": {
                      "anyOf": [
                        {
                          "items": {
                            "properties": {
                              "wallet": {
                                "title": "Wallet",
                                "type": "string"
                              },
                              "share_of_supply": {
                                "description": "Tokens this wallet holds now / total supply.",
                                "title": "Share Of Supply",
                                "type": "number"
                              },
                              "first_slot_offset": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "Slots after the create slot when the wallet's first tokens of this mint arrived; null when it never received any.",
                                "title": "First Slot Offset"
                              },
                              "net_sol": {
                                "anyOf": [
                                  {
                                    "type": "number"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "SOL it put into the curve on its buys minus SOL it took out on its sells; null when the tape cannot give it exactly.",
                                "title": "Net Sol"
                              },
                              "history": {
                                "anyOf": [
                                  {
                                    "description": "One wallet's history on OTHER pump.fun mints in our tape since the seam (the mint answered is never counted).",
                                    "properties": {
                                      "mints": {
                                        "description": "Other pump.fun mints this wallet bought in our tape since 2026-09-27T00:18:34Z (the mint answered is never counted).",
                                        "minimum": 0,
                                        "title": "Mints",
                                        "type": "integer"
                                      },
                                      "bundled": {
                                        "description": "Of those, mints where its first tokens arrived in the create slot or the next one (the bundlers rule of the cohort block).",
                                        "minimum": 0,
                                        "title": "Bundled",
                                        "type": "integer"
                                      },
                                      "quick_sells": {
                                        "description": "Of those, mints it sold within 60 s of its first buy.",
                                        "minimum": 0,
                                        "title": "Quick Sells",
                                        "type": "integer"
                                      },
                                      "settled": {
                                        "description": "Of those, mints whose outcome labels have settled (/v1/labels, outcome).",
                                        "minimum": 0,
                                        "title": "Settled",
                                        "type": "integer"
                                      },
                                      "rugged": {
                                        "description": "Of the settled ones, mints labelled rugged_within_300s by the public rule.",
                                        "minimum": 0,
                                        "title": "Rugged",
                                        "type": "integer"
                                      },
                                      "graduated": {
                                        "description": "Of the settled ones, mints that truly graduated.",
                                        "minimum": 0,
                                        "title": "Graduated",
                                        "type": "integer"
                                      }
                                    },
                                    "required": [
                                      "mints",
                                      "bundled",
                                      "quick_sells",
                                      "settled",
                                      "rugged",
                                      "graduated"
                                    ],
                                    "title": "WalletHistory",
                                    "type": "object"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ],
                                "default": null,
                                "description": "This wallet's history on other pump.fun mints in our tape (mints, bundled, quick_sells, settled, rugged, graduated); null when the reputation is not ready (/v1/labels, reputation)."
                              }
                            },
                            "required": [
                              "wallet",
                              "share_of_supply"
                            ],
                            "title": "CohortWallet",
                            "type": "object"
                          },
                          "maxItems": 10,
                          "type": "array"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Up to 10 of the cohort's wallets, largest holding first.",
                      "title": "Wallets"
                    },
                    "source": {
                      "enum": [
                        "tape",
                        "tape+funding_capture",
                        "unavailable"
                      ],
                      "title": "Source",
                      "type": "string"
                    },
                    "reason": {
                      "anyOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Why the cohort's figures are null.",
                      "title": "Reason"
                    }
                  },
                  "required": [
                    "share_of_supply",
                    "source"
                  ],
                  "title": "Cohort",
                  "type": "object"
                },
                "omitted": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "Cohorts not served, with the reason.",
                  "title": "Omitted",
                  "type": "object"
                },
                "reputation": {
                  "anyOf": [
                    {
                      "properties": {
                        "version": {
                          "const": "reputation-1",
                          "title": "Version",
                          "type": "string"
                        },
                        "status": {
                          "enum": [
                            "ready",
                            "warming_up",
                            "behind",
                            "unavailable",
                            "not_enabled",
                            "failed"
                          ],
                          "title": "Status",
                          "type": "string"
                        },
                        "known_dumpers_share": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "description": "Share of supply held by wallets that sold within 60 s of their first buy on at least 3 other mints.",
                          "title": "Known Dumpers Share"
                        },
                        "repeat_bundlers_share": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "description": "Share of supply held by wallets whose first tokens arrived in the create slot or the next one on at least 3 other mints.",
                          "title": "Repeat Bundlers Share"
                        },
                        "new_wallets_share": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "description": "Share of supply held by wallets with no other mint in our tape since 2026-09-27T00:18:34Z: new to our tape, not necessarily fresh wallets.",
                          "title": "New Wallets Share"
                        },
                        "n_known_dumpers": {
                          "anyOf": [
                            {
                              "minimum": 0,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "title": "N Known Dumpers"
                        },
                        "n_repeat_bundlers": {
                          "anyOf": [
                            {
                              "minimum": 0,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "title": "N Repeat Bundlers"
                        },
                        "n_new_wallets": {
                          "anyOf": [
                            {
                              "minimum": 0,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "title": "N New Wallets"
                        },
                        "n_holders": {
                          "anyOf": [
                            {
                              "minimum": 0,
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "description": "Holders read (every wallet of the ledger holding tokens now).",
                          "title": "N Holders"
                        },
                        "basis": {
                          "properties": {
                            "tape_since": {
                              "description": "Start of the history: the capture seam; no earlier trade is in the store.",
                              "title": "Tape Since",
                              "type": "string"
                            },
                            "history_from": {
                              "anyOf": [
                                {
                                  "type": "string"
                                },
                                {
                                  "type": "null"
                                }
                              ],
                              "default": null,
                              "description": "First trade time the store holds (UTC).",
                              "title": "History From"
                            },
                            "history_to": {
                              "anyOf": [
                                {
                                  "type": "string"
                                },
                                {
                                  "type": "null"
                                }
                              ],
                              "default": null,
                              "description": "Newest trade time the store holds (UTC).",
                              "title": "History To"
                            },
                            "history_hours": {
                              "anyOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "null"
                                }
                              ],
                              "default": null,
                              "description": "Hours of tape the store holds since tape_since, gaps excluded.",
                              "title": "History Hours"
                            },
                            "gaps": {
                              "anyOf": [
                                {
                                  "minimum": 0,
                                  "type": "integer"
                                },
                                {
                                  "type": "null"
                                }
                              ],
                              "default": null,
                              "description": "Interruptions of the store's intake longer than 120 s (a server restart after more than ~25 min down): trades in them are missing.",
                              "title": "Gaps"
                            },
                            "store_lag_s": {
                              "anyOf": [
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "null"
                                }
                              ],
                              "default": null,
                              "description": "Our newest ingested trade minus the store's newest trade.",
                              "title": "Store Lag S"
                            },
                            "quick_sell_s": {
                              "title": "Quick Sell S",
                              "type": "integer"
                            },
                            "min_prior_mints": {
                              "title": "Min Prior Mints",
                              "type": "integer"
                            },
                            "retention": {
                              "title": "Retention",
                              "type": "string"
                            },
                            "labels": {
                              "title": "Labels",
                              "type": "string"
                            }
                          },
                          "required": [
                            "tape_since",
                            "quick_sell_s",
                            "min_prior_mints",
                            "retention",
                            "labels"
                          ],
                          "title": "ReputationBasis",
                          "type": "object"
                        },
                        "reason": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ],
                          "default": null,
                          "description": "Why the figures are null (status other than ready).",
                          "title": "Reason"
                        }
                      },
                      "required": [
                        "version",
                        "status",
                        "basis"
                      ],
                      "title": "Reputation",
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "Cross-token history of the wallets holding this mint now, from our own trade tape since 2026-09-27T00:18:34Z: known_dumpers_share, repeat_bundlers_share and new_wallets_share of supply, with counts and the basis (hours of tape, gaps); null figures with status and reason when the history store is not ready. Definitions at /v1/labels (reputation)."
                }
              },
              "required": [
                "version",
                "top1_share",
                "top10_share",
                "union_share",
                "slot_windows",
                "sol_complete",
                "dev",
                "bundlers",
                "snipers",
                "fresh_wallets",
                "omitted"
              ],
              "title": "CohortBlock",
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Context for the reasons, not part of the rule: who holds the supply now by launch-time role (dev, bundlers, snipers, top-1 and top-10 share), as the holders answer reports it; definitions at /v1/labels (cohorts). Null when it could not be built; the verdict stands."
        },
        "lifecycle": {
          "title": "Lifecycle",
          "type": "string"
        },
        "risk_label": {
          "title": "Risk Label",
          "type": "string"
        },
        "market": {
          "anyOf": [
            {
              "properties": {
                "price_sol": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "SOL per whole token at the bonding curve's marginal price.",
                  "title": "Price Sol"
                },
                "price_usd": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Price Usd"
                },
                "market_cap_sol": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Market Cap Sol"
                },
                "market_cap_usd": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "price_usd x total supply (1B tokens, 2B on a mayhem launch): the pump.fun and DexScreener convention, equal to FDV.",
                  "title": "Market Cap Usd"
                },
                "curve_liquidity_sol": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "Real SOL held by the bonding curve.",
                  "title": "Curve Liquidity Sol"
                },
                "curve_liquidity_usd": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "title": "Curve Liquidity Usd"
                },
                "sol_usd": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "The Coinbase SOL-USD spot the USD fields use.",
                  "title": "Sol Usd"
                },
                "as_of": {
                  "anyOf": [
                    {
                      "type": "number"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "Unix seconds of that sol_usd read.",
                  "title": "As Of"
                },
                "reason": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "Why fields are null; codes at /v1/labels market.reason.",
                  "title": "Reason"
                }
              },
              "title": "Market",
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "USD price, market cap and curve liquidity (/v1/labels market)."
        },
        "authorities": {
          "anyOf": [
            {
              "properties": {
                "mint_authority": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "true = set (more can be minted), false = none, null = not read.",
                  "title": "Mint Authority"
                },
                "freeze_authority": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "true = set (accounts can be frozen), false = none, null = not read.",
                  "title": "Freeze Authority"
                },
                "metadata_mutable": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "true = name, symbol or image can still change, false = immutable, null = not read.",
                  "title": "Metadata Mutable"
                },
                "source": {
                  "anyOf": [
                    {
                      "enum": [
                        "onchain",
                        "pumpfun_rule"
                      ],
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "default": null,
                  "description": "pumpfun_rule: pump.fun's program leaves no mint or freeze authority and immutable metadata.",
                  "title": "Source"
                }
              },
              "title": "Authorities",
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Mint, freeze and metadata authorities (/v1/labels authorities)."
        },
        "pool_now": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Graduated tokens whose PumpSwap pool is inside its first 30 minutes only (null otherwise): the live reserve, peak and pool_draining, with the rule and its measured rate. Context, not part of the verdict.",
          "title": "Pool Now"
        },
        "graduation_timing": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Graduated tokens only (null otherwise): launch to the first migration sighting and its instant_bundle / organic label, as on the free graduation list. Context, not part of the verdict.",
          "title": "Graduation Timing"
        },
        "coverage": {
          "const": "full",
          "title": "Coverage",
          "type": "string"
        },
        "age_s": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Age S"
        },
        "generated_at": {
          "title": "Generated At",
          "type": "string"
        },
        "t": {
          "title": "T",
          "type": "number"
        },
        "result_id": {
          "title": "Result Id",
          "type": "string"
        },
        "share_url": {
          "description": "Free card page signed at purchase time; renders this verdict without recomputing or paying.",
          "title": "Share Url",
          "type": "string"
        },
        "fresh_verdict_url": {
          "title": "Fresh Verdict Url",
          "type": "string"
        },
        "rule": {
          "title": "Rule",
          "type": "string"
        },
        "disclaimer": {
          "title": "Disclaimer",
          "type": "string"
        },
        "links": {
          "anyOf": [
            {
              "properties": {
                "pumpfun": {
                  "title": "Pumpfun",
                  "type": "string"
                },
                "dexscreener": {
                  "title": "Dexscreener",
                  "type": "string"
                },
                "jupiter": {
                  "title": "Jupiter",
                  "type": "string"
                },
                "gmgn": {
                  "title": "Gmgn",
                  "type": "string"
                },
                "axiom": {
                  "title": "Axiom",
                  "type": "string"
                },
                "photon": {
                  "title": "Photon",
                  "type": "string"
                },
                "note": {
                  "title": "Note",
                  "type": "string"
                }
              },
              "required": [
                "pumpfun",
                "dexscreener",
                "jupiter",
                "gmgn",
                "axiom",
                "photon",
                "note"
              ],
              "title": "TradeLinks",
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Open this mint on pump.fun, DexScreener, Jupiter, GMGN, Axiom or Photon through a free redirect; no referral code, no fee."
        }
      },
      "required": [
        "mint",
        "verdict",
        "basis",
        "reason",
        "probabilities",
        "odds_caveat",
        "reasons",
        "reasons_total",
        "lifecycle",
        "risk_label",
        "coverage",
        "age_s",
        "generated_at",
        "t",
        "result_id",
        "share_url",
        "fresh_verdict_url",
        "rule",
        "disclaimer"
      ],
      "title": "VerdictData",
      "type": "object"
    },
    "meta": {
      "additionalProperties": true,
      "title": "Meta",
      "type": "object"
    }
  },
  "required": [
    "ok",
    "schema_version",
    "generated_at",
    "t",
    "coverage",
    "data",
    "meta"
  ],
  "type": "object"
}