```json
{
  "sym_variables": [
    ("x0", "milligrams of vitamin A"),
    ("x1", "milligrams of vitamin C"),
    ("x2", "milligrams of potassium"),
    ("x3", "milligrams of vitamin B4"),
    ("x4", "milligrams of vitamin B3"),
    ("x5", "milligrams of vitamin B5")
  ],
  "objective_function": "1.24 * x0 + 3.7 * x1 + 2.15 * x2 + 5.04 * x3 + 1.77 * x4 + 9.43 * x5",
  "constraints": [
    "13 * x0 + 8 * x1 >= 8",
    "8 * x1 + 10 * x2 >= 21",
    "10 * x2 + 9 * x5 >= 14",
    "13 * x0 + 8 * x1 + 8 * x3 >= 21",
    "8 * x1 + 8 * x3 + 4 * x4 >= 21",
    "10 * x2 + 8 * x3 + 9 * x5 >= 21",
    "13 * x0 + 10 * x2 + 9 * x5 >= 21",
    "8 * x3 + 4 * x4 + 9 * x5 >= 21",
    "13 * x0 + 8 * x1 + 9 * x5 >= 21",
    "13 * x0 + 8 * x3 + 9 * x5 >= 21",
    "13 * x0 + 8 * x1 + 10 * x2 >= 21",
    "13 * x0 + 8 * x3 + 4 * x4 >= 21",
    "10 * x2 + 4 * x4 + 9 * x5 >= 21",
    "8 * x1 + 4 * x4 + 9 * x5 >= 21",
    "8 * x1 + 10 * x2 + 4 * x4 >= 21",
    "13 * x0 + 8 * x1 + 8 * x3 >= 16",
    "8 * x1 + 8 * x3 + 4 * x4 >= 16",
    "10 * x2 + 8 * x3 + 9 * x5 >= 16",
    "13 * x0 + 10 * x2 + 9 * x5 >= 16",
    "8 * x3 + 4 * x4 + 9 * x5 >= 16",
    "13 * x0 + 8 * x1 + 9 * x5 >= 16",
    "13 * x0 + 8 * x3 + 9 * x5 >= 16",
    "13 * x0 + 8 * x1 + 10 * x2 >= 16",
    "13 * x0 + 8 * x3 + 4 * x4 >= 16",
    "10 * x2 + 4 * x4 + 9 * x5 >= 16",
    "8 * x1 + 4 * x4 + 9 * x5 >= 16",
    "8 * x1 + 10 * x2 + 4 * x4 >= 16",
    "10 * x0 + 14 * x1 >= 18",
    "8 * x2 + 11 * x3 >= 42",
    "10 * x0 + 8 * x4 >= 48",
    "8 * x2 + 8 * x4 >= 23",
    "14 * x1 + 8 * x2 >= 55",
    "8 * x4 + 10 * x5 >= 41",
    "11 * x3 + 10 * x5 >= 31",
    "14 * x1 + 11 * x3 >= 52",
    "14 * x1 + 8 * x4 >= 54",
    "10 * x0 + 11 * x3 >= 34",
    "11 * x3 + 8 * x4 + 10 * x5 >= 33",
    "10 * x0 + 11 * x3 + 10 * x5 >= 33",
    "11 * x3 + 8 * x4 + 10 * x5 >= 50",
    "10 * x0 + 11 * x3 + 10 * x5 >= 50",
    "10 * x0 + 14 * x1 + 8 * x2 + 11 * x3 + 8 * x4 + 10 * x5 >= 50",
    "2 * x3 - 10 * x5 >= 0",
    "-6 * x3 + 6 * x4 >= 0",
    "4 * x4 + 9 * x5 <= 120",
    "8 * x3 + 9 * x5 <= 102",
    "13 * x0 + 4 * x4 <= 100",
    "10 * x2 + 4 * x4 + 9 * x5 <= 38",
    "13 * x0 + 8 * x1 + 9 * x5 <= 71",
    "8 * x1 + 8 * x3 + 9 * x5 <= 48",
    "13 * x0 + 10 * x2 + 9 * x5 <= 23",
    "13 * x0 + 8 * x1 + 4 * x4 <= 46",
    "13 * x0 + 10 * x2 + 4 * x4 <= 81",
    "8 * x1 + 8 * x3 + 4 * x4 <= 113",
    "13 * x0 + 8 * x1 + 8 * x3 <= 128",
    "13 * x0 + 8 * x3 + 9 * x5 <= 119",
    "13 * x0 + 8 * x3 + 4 * x4 <= 22",
    "13 * x0 + 8 * x1 + 10 * x2 <= 103",
    "8 * x1 + 10 * x2 + 9 * x5 <= 116",
    "10 * x2 + 8 * x3 + 4 * x4 <= 53",
    "13 * x0 + 10 * x2 + 8 * x3 <= 114",
    "13 * x0 + 4 * x4 + 9 * x5 <= 109",
    "8 * x1 + 10 * x2 + 8 * x3 <= 67",
    "10 * x0 + 8 * x2 + 11 * x3 <= 87"
  ]
}
```

```python
import gurobipy as gp

# Create a new model
m = gp.Model("vitamin_optimization")

# Create variables
vitamin_a = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="vitamin_a")
vitamin_c = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="vitamin_c")
potassium = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="potassium")
vitamin_b4 = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="vitamin_b4")
vitamin_b3 = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="vitamin_b3")
vitamin_b5 = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="vitamin_b5")


# Set objective function
m.setObjective(1.24 * vitamin_a + 3.7 * vitamin_c + 2.15 * potassium + 5.04 * vitamin_b4 + 1.77 * vitamin_b3 + 9.43 * vitamin_b5, gp.GRB.MINIMIZE)

# Add constraints

# Cardiovascular support index constraints (simplified and deduplicated)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 8 * vitamin_b4 >= 16)
m.addConstr(8 * vitamin_c + 8 * vitamin_b4 + 4 * vitamin_b3 >= 16)
m.addConstr(10 * potassium + 8 * vitamin_b4 + 9 * vitamin_b5 >= 16)
m.addConstr(13 * vitamin_a + 10 * potassium + 9 * vitamin_b5 >= 16)
m.addConstr(8 * vitamin_b4 + 4 * vitamin_b3 + 9 * vitamin_b5 >= 16)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 9 * vitamin_b5 >= 16)
m.addConstr(13 * vitamin_a + 8 * vitamin_b4 + 9 * vitamin_b5 >= 16)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 10 * potassium >= 16)
m.addConstr(13 * vitamin_a + 8 * vitamin_b4 + 4 * vitamin_b3 >= 16)
m.addConstr(10 * potassium + 4 * vitamin_b3 + 9 * vitamin_b5 >= 16)
m.addConstr(8 * vitamin_c + 4 * vitamin_b3 + 9 * vitamin_b5 >= 16)
m.addConstr(8 * vitamin_c + 10 * potassium + 4 * vitamin_b3 >= 16)


# Digestive support index constraints (simplified and deduplicated)
m.addConstr(10 * vitamin_a + 14 * vitamin_c >= 18)
m.addConstr(8 * potassium + 11 * vitamin_b4 >= 42)
m.addConstr(10 * vitamin_a + 8 * vitamin_b3 >= 48)
m.addConstr(8 * potassium + 8 * vitamin_b3 >= 23)
m.addConstr(14 * vitamin_c + 8 * potassium >= 55)
m.addConstr(8 * vitamin_b3 + 10 * vitamin_b5 >= 41)
m.addConstr(11 * vitamin_b4 + 10 * vitamin_b5 >= 31)
m.addConstr(14 * vitamin_c + 11 * vitamin_b4 >= 52)
m.addConstr(14 * vitamin_c + 8 * vitamin_b3 >= 54)
m.addConstr(10 * vitamin_a + 11 * vitamin_b4 >= 34)
m.addConstr(11 * vitamin_b4 + 8 * vitamin_b3 + 10 * vitamin_b5 >= 50)
m.addConstr(10 * vitamin_a + 11 * vitamin_b4 + 10 * vitamin_b5 >= 50)
m.addConstr(10 * vitamin_a + 14 * vitamin_c + 8 * potassium + 11 * vitamin_b4 + 8 * vitamin_b3 + 10 * vitamin_b5 >= 50)

# Other constraints
m.addConstr(2 * vitamin_b4 - 10 * vitamin_b5 >= 0)
m.addConstr(-6 * vitamin_b4 + 6 * vitamin_b3 >= 0)
m.addConstr(4 * vitamin_b3 + 9 * vitamin_b5 <= 120)
m.addConstr(8 * vitamin_b4 + 9 * vitamin_b5 <= 102)
m.addConstr(13 * vitamin_a + 4 * vitamin_b3 <= 100)
m.addConstr(10 * potassium + 4 * vitamin_b3 + 9 * vitamin_b5 <= 38)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 9 * vitamin_b5 <= 71)
m.addConstr(8 * vitamin_c + 8 * vitamin_b4 + 9 * vitamin_b5 <= 48)
m.addConstr(13 * vitamin_a + 10 * potassium + 9 * vitamin_b5 <= 23)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 4 * vitamin_b3 <= 46)
m.addConstr(13 * vitamin_a + 10 * potassium + 4 * vitamin_b3 <= 81)
m.addConstr(8 * vitamin_c + 8 * vitamin_b4 + 4 * vitamin_b3 <= 113)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 8 * vitamin_b4 <= 128)
m.addConstr(13 * vitamin_a + 8 * vitamin_b4 + 9 * vitamin_b5 <= 119)
m.addConstr(13 * vitamin_a + 8 * vitamin_b4 + 4 * vitamin_b3 <= 22)
m.addConstr(13 * vitamin_a + 8 * vitamin_c + 10 * potassium <= 103)
m.addConstr(8 * vitamin_c + 10 * potassium + 9 * vitamin_b5 <= 116)
m.addConstr(10 * potassium + 8 * vitamin_b4 + 4 * vitamin_b3 <= 53)
m.addConstr(13 * vitamin_a + 10 * potassium + 8 * vitamin_b4 <= 114)
m.addConstr(13 * vitamin_a + 4 * vitamin_b3 + 9 * vitamin_b5 <= 109)
m.addConstr(8 * vitamin_c + 10 * potassium + 8 * vitamin_b4 <= 67)
m.addConstr(10 * vitamin_a + 8 * potassium + 11 * vitamin_b4 <= 87)



# Optimize model
m.optimize()

# Print results
if m.status == gp.GRB.OPTIMAL:
    print('Obj: %g' % m.objVal)
    for v in m.getVars():
        print('%s %g' % (v.varName, v.x))
elif m.status == gp.GRB.INFEASIBLE:
    print("The model is infeasible.")
else:
    print("Optimization ended with status:", m.status)

```