{
  "model": "jev-1.13.0",
  "state": {
    "method": "V4_TOP4_SIM_BRIEF_V1",
    "showdownLog": [
      "|gametype|doubles",
      "|player|p1|Player 1||",
      "|player|p2|Player 2||",
      "|gen|9",
      "|tier|[Gen 9 Champions] VGC 2026 Reg M-C",
      "|rule|Species Clause: Limit one of each Pokémon",
      "|rule|Item Clause: Limit 1 of each item",
      "|clearpoke",
      "|poke|p1|Jolteon, L50, F|",
      "|poke|p1|Excadrill, L50, M|",
      "|poke|p1|Tyranitar, L50, M|",
      "|poke|p1|Pelipper, L50, M|",
      "|poke|p1|Venusaur, L50, M|",
      "|poke|p1|Charizard, L50, F|",
      "|poke|p2|Garchomp, L50, F|",
      "|poke|p2|Pelipper, L50, M|",
      "|poke|p2|Venusaur, L50, M|",
      "|poke|p2|Charizard, L50, M|",
      "|poke|p2|Swampert, L50, F|",
      "|poke|p2|Rillaboom, L50, F|",
      "|teampreview|4",
      "|showteam|p1|Jolteon|||VoltAbsorb|BatonPass|Bashful||F|||50|]Excadrill|||SandRush|EarthPower|Bashful||M|||50|]Tyranitar|||SandStream|Protect|Bashful||M|||50|]Pelipper|||Drizzle|Protect|Bashful||M|||50|]Venusaur|||Overgrow|Protect|Bashful||M|||50|]Charizard|||Blaze|Protect|Bashful||F|||50|",
      "|showteam|p2|Garchomp|||RoughSkin|Surf|Bashful||F|||50|]Pelipper|||KeenEye|Protect|Bashful||M|||50|]Venusaur|||Overgrow|Protect|Bashful||M|||50|]Charizard|||Blaze|Protect|Bashful||M|||50|]Swampert|||Torrent|Protect|Bashful||F|||50|]Rillaboom|||Overgrow|Protect|Bashful||F|||50|",
      "|teamsize|p1|4",
      "|teamsize|p2|4",
      "|start",
      "|switch|p1a: Jolteon|Jolteon, L50, F|140/140",
      "|switch|p1b: Excadrill|Excadrill, L50, M|185/185",
      "|switch|p2a: Garchomp|Garchomp, L50, F|100/100",
      "|switch|p2b: Pelipper|Pelipper, L50, M|100/100",
      "|turn|1",
      "|faint|p2b: Pelipper",
      "|faint|p2: Venusaur",
      "|faint|p2: Charizard",
      "|-damage|p1a: Jolteon|1/140",
      "|-damage|p1b: Excadrill|1/185",
      "|-damage|p2a: Garchomp|1/100",
      "|-boost|p1a: Jolteon|spe|6",
      "|-boost|p1b: Excadrill|spa|6",
      "|-boost|p1b: Excadrill|atk|6",
      "|-boost|p2a: Garchomp|spe|1",
      "|move|p1a: Jolteon|Baton Pass|p1a: Jolteon",
      "|request|{\"forceSwitch\":[true,false],\"side\":{\"name\":\"Player 1\",\"id\":\"p1\",\"pokemon\":[{\"ident\":\"p1: Jolteon\",\"details\":\"Jolteon, L50, F\",\"condition\":\"1/140\",\"active\":true,\"stats\":{\"atk\":85,\"def\":80,\"spa\":130,\"spd\":115,\"spe\":150},\"moves\":[\"batonpass\"],\"baseAbility\":\"voltabsorb\",\"item\":\"\",\"pokeball\":\"pokeball\",\"ability\":\"voltabsorb\",\"commanding\":false,\"reviving\":false},{\"ident\":\"p1: Excadrill\",\"details\":\"Excadrill, L50, M\",\"condition\":\"1/185\",\"active\":true,\"stats\":{\"atk\":155,\"def\":80,\"spa\":70,\"spd\":85,\"spe\":140},\"moves\":[\"earthpower\"],\"baseAbility\":\"sandrush\",\"item\":\"\",\"pokeball\":\"pokeball\",\"ability\":\"sandrush\",\"commanding\":false,\"reviving\":false},{\"ident\":\"p1: Tyranitar\",\"details\":\"Tyranitar, L50, M\",\"condition\":\"1/175\",\"active\":false,\"stats\":{\"atk\":154,\"def\":130,\"spa\":115,\"spd\":120,\"spe\":81},\"moves\":[\"protect\"],\"baseAbility\":\"sandstream\",\"item\":\"\",\"pokeball\":\"pokeball\",\"ability\":\"sandstream\",\"commanding\":false,\"reviving\":false},{\"ident\":\"p1: Pelipper\",\"details\":\"Pelipper, L50, M\",\"condition\":\"1/135\",\"active\":false,\"stats\":{\"atk\":70,\"def\":120,\"spa\":115,\"spd\":90,\"spe\":85},\"moves\":[\"protect\"],\"baseAbility\":\"drizzle\",\"item\":\"\",\"pokeball\":\"pokeball\",\"ability\":\"drizzle\",\"commanding\":false,\"reviving\":false}]},\"noCancel\":true,\"rqid\":4}"
    ],
    "observationProjection": {
      "retainedOwnRequests": 1,
      "supersededOwnRequests": 3,
      "policy": "All authorized public events are retained in order. Only the newest complete own request is included; earlier own request snapshots were superseded. Canonical state, V4 and current memory were reconstructed from the complete original log, preserved in the observation trace."
    },
    "v4Context": "Current observed position (other details remain in the log).\nReplacement on turn 1: left.\nYou: 4 surviving Pokemon; 2 living reserves; 0 fainted.\nJolteon; left; 1/140 HP; Speed +6; ability Volt Absorb; no item.\nExcadrill; right; 1/185 HP; Attack +6; Special Attack +6; ability Sand Rush; no item.\nPelipper; reserve; 1/135 HP; ability Drizzle; no item.\nTyranitar; reserve; 1/175 HP; ability Sand Stream; no item.\nOpponent: 1 surviving Pokemon; 0 living reserves; 3 fainted.\nGarchomp; left; 1% displayed HP; Speed +1; ability Rough Skin; no item.\n\nA voluntary switch is not an attack by the incoming Pokemon. It ordinarily clears stages and most volatiles, preserving HP/PP/major status; field/side effects remain. Entry abilities/hazards execute in their actual order and can KO the entrant. Pivot moves require their own successful conditions; missing, protection, immunity, KO or competing effects can prevent a pivot. Forced switching and Baton Pass have separate rules. Only selected eligible live reserves can enter; both positions cannot take the same reserve.\nApply the holder’s current effective ability and item, with their exact triggers. Suppressed, bypassed for one hit, replaced, removed and consumed are distinct states. A consumed item does not reappear on switching.\nAutomatic item use can happen during another action or between hits; threshold timing follows its definition. Starting and Mega abilities can differ. Per-entity descriptions below contain the applicable effect and exceptions; family examples do not supply hypothetical abilities/items.\nBaton Pass: The user is replaced with another Pokemon in its party. The selected Pokemon has the user's stat stage changes transferred to it, as well as the effects of confusion, Aqua Ring, Curse, Dragon Cheer, Embargo, Focus Energy, Gastro Acid, Heal Block, Ingrain, Leech Seed, Lock-On (Mind Reader), Magnet Rise, Perish Song, Power Trick, Telekinesis, and a substitute with its remaining HP. The effect of Gastro Acid is not transferred if the recipient has an Ability that cannot be affected.\nDrizzle: On switch-in, this Pokemon summons Rain.\nSand Stream: On switch-in, this Pokemon summons Sandstorm.\nVolt Absorb: This Pokemon is immune to Electric-type moves and restores 1/4 of its maximum HP, rounded down, when hit by an Electric-type move.",
    "observationPolicy": {
      "mode": "observed-only",
      "sets": "Own requests disclose exact own stats. Public Open Team Sheets disclose initial moves, ability, item, nature and gender. Public events update those facts. Opposing trained stats and all training points remain unknown.",
      "opponentSelection": "All four identities are established by public entry/faint events in this log, not disclosed earlier as a selection or lead order.",
      "opponentPendingCommands": "hidden"
    },
    "stage": "final",
    "consequenceBrief": {
      "schemaVersion": 2,
      "method": "conditional-consequence-brief-v2",
      "conditional": "These are conditional outcomes in tested hypothetical branches, NOT win probabilities, guarantees or known future events. No action is ranked or recommended.",
      "actions": [
        {
          "id": "action_switch_3__pass",
          "command": "switch 3, pass",
          "description": "Jolteon: switch to Tyranitar; Excadrill: pass",
          "testedOutcomes": {
            "summary": "In resolved tested branches: battle continues in 16.",
            "ownWin": 0,
            "ownLoss": 0,
            "continues": 16,
            "terminalUnknown": 0,
            "unresolved": 0,
            "omitted": 0
          },
          "status": "simulated",
          "omittedBranches": 0,
          "pokemonMarginalsSharedByEveryResponse": [
            "Your Tyranitar [own-3]: 1% HP; boosts spe 6",
            "Your Excadrill [own-2]: 1% HP; boosts atk 6, spa 6",
            "Your Jolteon [own-1]: 1% HP; active none",
            "Your Pelipper [own-4]: 1% HP; active none",
            "Opponent Garchomp [foe-1]: 1% HP; boosts spe 1",
            "Opponent Pelipper [foe-2]: 0% HP; fainted all; status fnt"
          ],
          "effectsInEveryResolvedBranch": [
            "switch | p1a: Tyranitar | Tyranitar",
            "weather | Sandstorm | [from] ability: Sand Stream | [of] p1a: Tyranitar"
          ],
          "effectsInSomeResolvedBranchesOfEachResponse": [],
          "responses": [
            {
              "opponentCommand": "(no opponent choice)",
              "horizon": "replacement-entry",
              "replacementTiming": "interrupted-turn",
              "testedOutcomes": {
                "continues": 16
              },
              "hypotheses": "all declared hypotheses",
              "resolved": 16,
              "pokemon": [],
              "field": {
                "weather": [
                  "sandstorm"
                ],
                "terrain": [
                  null
                ],
                "pendingReplacement": "none",
                "battleEnded": "none"
              },
              "effects": {
                "everyResolved": [],
                "someResolved": []
              },
              "jointOutcomePatterns": [
                {
                  "faintedAtEnd": [
                    "Opponent Pelipper [foe-2]"
                  ],
                  "count": 16
                }
              ],
              "unprojectedEvents": 0
            }
          ]
        },
        {
          "id": "action_switch_4__pass",
          "command": "switch 4, pass",
          "description": "Jolteon: switch to Pelipper; Excadrill: pass",
          "testedOutcomes": {
            "summary": "In resolved tested branches: battle continues in 16.",
            "ownWin": 0,
            "ownLoss": 0,
            "continues": 16,
            "terminalUnknown": 0,
            "unresolved": 0,
            "omitted": 0
          },
          "status": "simulated",
          "omittedBranches": 0,
          "pokemonMarginalsSharedByEveryResponse": [
            "Your Pelipper [own-4]: 1% HP; boosts spe 6",
            "Your Excadrill [own-2]: 1% HP; boosts atk 6, spa 6",
            "Your Tyranitar [own-3]: 1% HP; active none",
            "Your Jolteon [own-1]: 1% HP; active none",
            "Opponent Garchomp [foe-1]: 1% HP; boosts spe 1",
            "Opponent Pelipper [foe-2]: 0% HP; fainted all; status fnt"
          ],
          "effectsInEveryResolvedBranch": [
            "switch | p1a: Pelipper | Pelipper",
            "weather | RainDance | [from] ability: Drizzle | [of] p1a: Pelipper"
          ],
          "effectsInSomeResolvedBranchesOfEachResponse": [],
          "responses": [
            {
              "opponentCommand": "(no opponent choice)",
              "horizon": "replacement-entry",
              "replacementTiming": "interrupted-turn",
              "testedOutcomes": {
                "continues": 16
              },
              "hypotheses": "all declared hypotheses",
              "resolved": 16,
              "pokemon": [],
              "field": {
                "weather": [
                  "raindance"
                ],
                "terrain": [
                  null
                ],
                "pendingReplacement": "none",
                "battleEnded": "none"
              },
              "effects": {
                "everyResolved": [],
                "someResolved": []
              },
              "jointOutcomePatterns": [
                {
                  "faintedAtEnd": [
                    "Opponent Pelipper [foe-2]"
                  ],
                  "count": 16
                }
              ],
              "unprojectedEvents": 0
            }
          ]
        }
      ],
      "interpretation": {
        "uncertainty": "Up to four hypothetical opponent training profiles crossed with two correlated HP/timer endpoints; missing statistics/counters are assumptions, not observed facts. Detailed assumptions remain in the full audit report.",
        "outcomes": "Own win requires battleEnded plus a witnessed own survivor and every identified opponent participant present and fainted. Own loss requires every identified own participant present and fainted plus a witnessed opponent survivor. Both sides fainted, incomplete required rosters or missing winner evidence remain terminalUnknown. Continues means the branch endpoint was not terminal, not safety.",
        "ranges": "HP ranges are public percentages over resolved sampled endpoints, not exact opponent stats or exhaustive bounds. Ranges/effects are marginal and may not coexist. Actor states describe only endpoints where present; present=some means other resolved branches omit this actor, not a KO. Zero boosts are omitted. Actor lines use a number for a singleton range, a..b for a range. Unless marked otherwise, the named actor is present, active and not fainted in every resolved branch; status is none, form equals its name, boosts are zero. pokemonMarginalsSharedByEveryResponse belong to EACH response, together with its additional pokemon lines. Missing outcome/failure counts mean zero; omitted branches are assigned only at action level.",
        "effects": "Named public Showdown effects show occurrence, NOT order, multiplicity or causation. Action effectsInEveryResolvedBranch apply throughout; effectsInSomeResolvedBranchesOfEachResponse occur in SOME resolved branches of EACH response, never guaranteed. Each response lists additional everyResolved/someResolved effects. enditem means item lost; [eat] means consumed. Marginal states/effects may come from different branches. Only jointOutcomePatterns preserve KO/visibility/terminal/replacement co-occurrence. Constant pattern flags inherit their response field; a single response outcome applies to every pattern. Pattern present is included only when visibility varies; otherwise all listed endpoint actors are present throughout. Newly fainted labels compare against the authorized observation.",
        "horizon": "next-decision stops at the next request; replacement-entry covers switches/entry effects only, never hidden pending attacks. Pending replacement is not a completed turn.",
        "omittedRows": "Repeated endpoint rows are omitted only for observed already-fainted actors present and still fainted in every resolved branch, with no failed/omitted branches, status or boosts. Their names remain in omittedUnchangedFainted; include these constant faints alongside each joint pattern. They remain part of the terminal classifier. Newly fainted actors and possible revivals are always retained.",
        "detailedAssumptionsIncluded": false
      },
      "coverage": {
        "hypothesisCount": 8,
        "plannedBranches": 32,
        "simulatedBranches": 32,
        "failedBranches": 0,
        "omittedBranches": 0,
        "exhaustive": false,
        "limitations": [
          "Every endpoint is conditional on its hypothesis and hypothetical opponent command; it is not a predicted future.",
          "Only responses available in the reconstructed hypothetical opponent request are considered; unknown sets are not exhaustively covered.",
          "Random samples use independent analysis randomness, are paired across own actions, and do not exhaust random outcomes.",
          "Execution stops at the next decision or replacement request, including a replacement within the current turn.",
          "Opponent endpoints include active and publicly fainted Pokemon only; hidden bench changes are omitted. HP is public rounded percentage.",
          "Eight synthetic public-HP-compatible hypotheses: four declared opponent point profiles by low/high HP/timer endpoints; sampled, not exhaustive. Mega uses point spreads compatible with exact own current stats.",
          "Replacement branches stop after switch/entry effects or an earlier new replacement request; they do not simulate remaining attacks, residuals, or a complete turn.",
          "Opponent responses were restricted to an explicit bounded portfolio, shared across own actions. Coverage counts describe that portfolio, not all legal opponent commands; its selection scores are not opponent probabilities."
        ]
      },
      "declaredHypotheses": [
        "neutral-hp-low",
        "neutral-hp-high",
        "physical-fast-hp-low",
        "physical-fast-hp-high",
        "special-fast-hp-low",
        "special-fast-hp-high",
        "bulky-hp-low",
        "bulky-hp-high"
      ],
      "omittedUnchangedFainted": [
        "Opponent Venusaur [foe-3]",
        "Opponent Charizard [foe-4]"
      ],
      "warnings": []
    },
    "simulation": {
      "status": "available"
    }
  },
  "questions": {
    "selection": {
      "type": "choice",
      "instructions": "Select the strongest offered joint action using the current observed position, V4 mechanics and the conditional consequence brief when available. The brief describes hypothetical responses, not known future events. Consider dangers under each response, missing coverage, survival and positioning. Sample counts are not win probabilities. The first-stage ranking is deliberately not supplied; reconsider all offered actions.",
      "criteria": {
        "action_switch_3__pass": "Jolteon: switch to Tyranitar; Excadrill: pass",
        "action_switch_4__pass": "Jolteon: switch to Pelipper; Excadrill: pass"
      }
    }
  }
}
