{
  "id": "premium-2-dozens-french-optimized",
  "name": "2 Dozens - French Optimized",
  "category": "premium",
  "type": "strategy",
  "schemaVersion": "premium_package:2_dozens_french_optimized:1",
  "description": "Two-dozen strategy with FTW/FTL/Dancing behavior modes, optional wait-loss gate, and French outside-bet optimization.",
  "strategyAdapter": "2_dozens_french_optimized",
  "builderMode": "advanced",
  "settings": {
    "currency": "USD",
    "baseUnit": 1.0,
    "bankrollTotal": 0.0,
    "maxBetPerSpin": 0.0
  },
  "sessionGoals": {
    "stopIfNextBetExceedsExposure": true
  },
  "progression": {
    "mode": "flat",
    "step": 0,
    "maxStep": 32
  },
  "reactions": {
    "onWin": "reset_base",
    "onLoss": "increase_step"
  },
  "premiumConfig": {
    "base_unit": 1.0,
    "bet_behavior": "FTL",
    "progression_style": "flat",
    "wait_losses": 0,
    "wait_losses_ftw": 0,
    "wait_losses_ftl": 0,
    "dalembert_up": 2,
    "dalembert_down": 1,
    "reset_back_to_base_mode": "legacy",
    "reset_back_to_base_count": 2
  },
  "stateVars": {},
  "graph": {
    "rules": []
  },
  "packageType": "premium_package",
  "packageVersion": 1,
  "runtimeAdapter": "2_dozens_french_optimized",
  "strategy_adapter": "2_dozens_french_optimized",
  "runtime_adapter": "2_dozens_french_optimized",
  "premiumPackage": {
    "version": 1,
    "strategyId": "premium-2-dozens-french-optimized",
    "adapterId": "2_dozens_french_optimized",
    "sourceSchemaVersion": "premium:2_dozens_french_optimized:1",
    "manifestSchemaVersion": "premium:2_dozens_french_optimized:1",
    "exportStatus": "full",
    "source": "Wootirement website premium strategy hub"
  },
  "premiumManifest": {
    "adapter_id": "2_dozens_french_optimized",
    "strategy_id": "premium-2-dozens-french-optimized",
    "display_name": "2 Dozens - French Optimized",
    "schema_version": "premium:2_dozens_french_optimized:1",
    "purpose": "Two-dozen optimizer with FTW, FTL, Dancing, behavior-set, wait-gate, progression, and bullet recovery support.",
    "package_keys": [
      "id",
      "name",
      "category",
      "type",
      "schemaVersion",
      "strategyAdapter",
      "runtimeAdapter",
      "settings",
      "sessionGoals",
      "premiumConfig",
      "premium_config"
    ],
    "runtime_config_keys": [
      "base_unit",
      "reset_back_to_base_mode",
      "reset_back_to_base_count",
      "safety_rule",
      "safety_wait_spins",
      "bet_behavior",
      "both_start_mode",
      "flat_progression_rule",
      "progression_style",
      "dalembert_up",
      "dalembert_down",
      "custom_progression_steps",
      "start_step",
      "start_units",
      "wait_losses",
      "wait_losses_ftw",
      "wait_losses_ftl",
      "wait_hypothetical_losses",
      "wait_hypothetical_losses_ftw",
      "wait_hypothetical_losses_ftl",
      "wait_reset_mode",
      "behavior_set_enabled",
      "behavior_set_switch_rule",
      "behavior_set_variations",
      "behavior_set_order"
    ],
    "session_goal_keys": [
      "stopLoss",
      "takeProfit",
      "maxSpins",
      "maxStep",
      "drawdownAthPercent",
      "drawdownAthActivateProfit",
      "stopIfNextBetExceedsExposure"
    ],
    "sections": [
      {
        "id": "setup",
        "title": "Setup and target behavior",
        "keys": [
          "base_unit",
          "bet_behavior",
          "wait_losses",
          "wait_reset_mode"
        ]
      },
      {
        "id": "progression",
        "title": "Progression and session rules",
        "keys": [
          "progression_style",
          "flat_progression_rule",
          "dalembert_up",
          "dalembert_down",
          "custom_progression_steps"
        ]
      },
      {
        "id": "behavior_set",
        "title": "Multiple behavior set",
        "keys": [
          "behavior_set_enabled",
          "behavior_set_switch_rule",
          "behavior_set_variations",
          "behavior_set_order"
        ]
      },
      {
        "id": "safety",
        "title": "Safety and goals",
        "keys": [
          "safety_rule",
          "safety_wait_spins",
          "takeProfit",
          "maxStep",
          "stopIfNextBetExceedsExposure"
        ]
      }
    ],
    "supported_progressions": [
      "flat",
      "martingale",
      "triple_martingale",
      "dalembert",
      "custom"
    ],
    "target_behaviors": [
      "FTW",
      "FTL",
      "DANCING",
      "BOTH_FTW_FTL"
    ],
    "variation_keys": [
      "FTW",
      "FTL",
      "DANCING"
    ],
    "export_status": "full",
    "notes": [
      "This runtime does not represent a single fixed dozen. It chooses optimized two-dozen tickets from the selected behavior mode.",
      "Behavior-set mode disables the single global wait gate and uses per-behavior waits."
    ]
  }
}
