{
  "name": "First Bell",
  "id": "5d8b9ecb-53d6-55e1-b574-001b92859693",
  "author": "Carry the One",
  "author_id": "daa90218-f802-5f04-85c3-10d10f3ffd1d",
  "temperature": 92,
  "final_weight": 39,
  "last_changed": 1784010252.512745,
  "temporary": false,
  "previous_authors": [],
  "display": {
    "accentColor": "#C98B3F",
    "shortDescription": "Bloom first, hold the peak, ease it down. 8.6 bar, then a lever decline to 36 g.",
    "description": "Bloom first, hold the peak, ease it down. A fast fill and a soak, then a gentle bloom that moves on once pressure falls below 1.6 bar. Pressure climbs to 8.6 bar and holds there with flow capped at 2 ml/s through the first 14 g. Between 14 and 18 g it lets go early if the flow rises. Then pressure eases from 8.6 toward 4.2 bar over 14 g, the way a lever's spring lets go, and a sweet tail at 1.6 ml/s finishes at 36 g."
  },
  "variables": [
    {
      "name": "Peak Pressure",
      "key": "pressure_Peak Pressure",
      "type": "pressure",
      "value": 8.6
    },
    {
      "name": "Hold Flow Cap",
      "key": "flow_Hold Flow Cap",
      "type": "flow",
      "value": 2.0
    },
    {
      "name": "Opening Flow Threshold",
      "key": "flow_Opening Flow Threshold",
      "type": "flow",
      "value": 2.2
    },
    {
      "name": "Target Yield",
      "key": "weight_Target Yield",
      "type": "weight",
      "value": 36
    }
  ],
  "stages": [
    {
      "name": "Fast Fill",
      "key": "fast_fill_1",
      "type": "power",
      "dynamics": {
        "points": [
          [
            0,
            100
          ]
        ],
        "over": "time",
        "interpolation": "curve"
      },
      "limits": [
        {
          "type": "pressure",
          "value": 1.5
        }
      ],
      "exit_triggers": [
        {
          "type": "pressure",
          "value": 0.8,
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "time",
          "value": 1.5,
          "comparison": ">=",
          "relative": true
        }
      ]
    },
    {
      "name": "Soak",
      "key": "soak_2",
      "type": "flow",
      "dynamics": {
        "points": [
          [
            0,
            2.5
          ]
        ],
        "over": "time",
        "interpolation": "linear"
      },
      "limits": [
        {
          "type": "pressure",
          "value": 3.0
        }
      ],
      "exit_triggers": [
        {
          "type": "weight",
          "value": 3,
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "pressure",
          "value": 2.8,
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "time",
          "value": 10,
          "comparison": ">=",
          "relative": true
        }
      ]
    },
    {
      "name": "Gentle Bloom",
      "key": "gentle_bloom_3",
      "type": "flow",
      "dynamics": {
        "points": [
          [
            0,
            0
          ]
        ],
        "over": "time",
        "interpolation": "linear"
      },
      "limits": [],
      "exit_triggers": [
        {
          "type": "pressure",
          "value": 1.6,
          "comparison": "<=",
          "relative": false
        },
        {
          "type": "time",
          "value": 12,
          "comparison": ">=",
          "relative": true
        }
      ]
    },
    {
      "name": "Ramp",
      "key": "ramp_4",
      "type": "pressure",
      "dynamics": {
        "points": [
          [
            0,
            2.0
          ],
          [
            4,
            "$pressure_Peak Pressure"
          ]
        ],
        "over": "time",
        "interpolation": "linear"
      },
      "limits": [
        {
          "type": "flow",
          "value": 4.0
        }
      ],
      "exit_triggers": [
        {
          "type": "time",
          "value": 4,
          "comparison": ">=",
          "relative": true
        },
        {
          "type": "weight",
          "value": 14,
          "comparison": ">=",
          "relative": false
        }
      ]
    },
    {
      "name": "Syrup Load",
      "key": "syrup_load_5",
      "type": "pressure",
      "dynamics": {
        "points": [
          [
            0,
            "$pressure_Peak Pressure"
          ]
        ],
        "over": "time",
        "interpolation": "linear"
      },
      "limits": [
        {
          "type": "flow",
          "value": "$flow_Hold Flow Cap"
        }
      ],
      "exit_triggers": [
        {
          "type": "weight",
          "value": 14,
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "time",
          "value": 12,
          "comparison": ">=",
          "relative": true
        }
      ]
    },
    {
      "name": "Opening Window",
      "key": "opening_window_6",
      "type": "pressure",
      "dynamics": {
        "points": [
          [
            0,
            "$pressure_Peak Pressure"
          ]
        ],
        "over": "time",
        "interpolation": "linear"
      },
      "limits": [
        {
          "type": "flow",
          "value": 2.4
        }
      ],
      "exit_triggers": [
        {
          "type": "flow",
          "value": "$flow_Opening Flow Threshold",
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "weight",
          "value": 18,
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "time",
          "value": 5,
          "comparison": ">=",
          "relative": true
        }
      ]
    },
    {
      "name": "Lever Decline",
      "key": "lever_decline_7",
      "type": "pressure",
      "dynamics": {
        "points": [
          [
            0,
            "$pressure_Peak Pressure"
          ],
          [
            14,
            4.2
          ]
        ],
        "over": "weight",
        "interpolation": "curve"
      },
      "limits": [
        {
          "type": "flow",
          "value": 2.4
        }
      ],
      "exit_triggers": [
        {
          "type": "weight",
          "value": 14,
          "comparison": ">=",
          "relative": true
        },
        {
          "type": "time",
          "value": 20,
          "comparison": ">=",
          "relative": true
        }
      ]
    },
    {
      "name": "Sweet Tail",
      "key": "sweet_tail_8",
      "type": "flow",
      "dynamics": {
        "points": [
          [
            0,
            1.6
          ]
        ],
        "over": "time",
        "interpolation": "linear"
      },
      "limits": [
        {
          "type": "pressure",
          "value": 3.5
        }
      ],
      "exit_triggers": [
        {
          "type": "weight",
          "value": "$weight_Target Yield",
          "comparison": ">=",
          "relative": false
        },
        {
          "type": "time",
          "value": 15,
          "comparison": ">=",
          "relative": true
        }
      ]
    }
  ]
}
