```json
{
  "sym_variables": [
    ("x0", "eggs"),
    ("x1", "tomatoes"),
    ("x2", "chicken breasts"),
    ("x3", "strawberries")
  ],
  "objective_function": "4.88 * x0 + 2.72 * x1 + 4.85 * x2 + 8.32 * x3",
  "constraints": [
    "15.3 * x0 + 15.41 * x1 + 17.27 * x3 >= 68",
    "15.3 * x0 + 15.41 * x1 + 25.41 * x2 >= 68",
    "15.41 * x1 + 25.41 * x2 + 17.27 * x3 >= 68",
    "15.3 * x0 + 15.41 * x1 + 17.27 * x3 >= 80",
    "15.3 * x0 + 15.41 * x1 + 25.41 * x2 >= 80",
    "15.41 * x1 + 25.41 * x2 + 17.27 * x3 >= 80",
    "15.3 * x0 + 15.41 * x1 + 17.27 * x3 >= 51",
    "15.3 * x0 + 15.41 * x1 + 25.41 * x2 >= 51",
    "15.41 * x1 + 25.41 * x2 + 17.27 * x3 >= 51",
    "5.49 * x2 + 1.55 * x3 >= 71",
    "2.33 * x1 + 4.53 * x2 >= 18",
    "25.18 * x0 + 4.53 * x2 >= 41",
    "25.18 * x0 + 2.33 * x1 >= 39",
    "2.33 * x1 + 4.53 * x2 + 2.26 * x3 >= 42",
    "23.23 * x0 + 3.71 * x3 >= 32",
    "23.23 * x0 + 15.92 * x1 + 26.77 * x2 >= 42",
    "15.92 * x1 + 26.77 * x2 + 3.71 * x3 >= 42",
    "23.23 * x0 + 15.92 * x1 + 26.77 * x2 >= 46",
    "15.92 * x1 + 26.77 * x2 + 3.71 * x3 >= 46",
    "8.08 * x2 + 14.37 * x3 >= 25",
    "7.4 * x0 + 2.61 * x1 >= 19",
    "7.4 * x0 + 8.08 * x2 >= 36",
    "2.61 * x1 + 14.37 * x3 >= 28",
    "7.4 * x0 + 14.37 * x3 >= 15",
    "7.4 * x0 + 2.61 * x1 + 8.08 * x2 >= 31",
    "15.41 * x1 + 25.41 * x2 <= 321",
    "15.3 * x0 + 17.27 * x3 <= 255",
    "15.3 * x0 + 25.41 * x2 <= 325",
    "15.3 * x0 + 15.41 * x1 <= 148",
    "25.41 * x2 + 17.27 * x3 <= 246",
    "15.3 * x0 + 15.41 * x1 + 25.41 * x2 + 17.27 * x3 <= 246",
    "13.57 * x1 + 1.55 * x3 <= 301",
    "15.91 * x0 + 5.49 * x2 <= 286",
    "15.91 * x0 + 13.57 * x1 + 5.49 * x2 + 1.55 * x3 <= 286",
    "25.18 * x0 + 4.53 * x2 <= 182",
    "2.33 * x1 + 2.26 * x3 <= 195",
    "25.18 * x0 + 2.33 * x1 + 4.53 * x2 + 2.26 * x3 <= 195",
    "15.92 * x1 + 3.71 * x3 <= 172",
    "23.23 * x0 + 3.71 * x3 <= 149",
    "23.23 * x0 + 26.77 * x2 <= 163",
    "26.77 * x2 + 3.71 * x3 <= 85",
    "23.23 * x0 + 15.92 * x1 <= 164",
    "23.23 * x0 + 26.77 * x2 + 3.71 * x3 <= 148",
    "23.23 * x0 + 15.92 * x1 + 26.77 * x2 <= 60",
    "23.23 * x0 + 15.92 * x1 + 26.77 * x2 + 3.71 * x3 <= 60",
    "7.4 * x0 + 2.61 * x1 <= 179",
    "2.61 * x1 + 8.08 * x2 <= 105",
    "2.61 * x1 + 14.37 * x3 <= 109",
    "8.08 * x2 + 14.37 * x3 <= 111",
    "7.4 * x0 + 2.61 * x1 + 14.37 * x3 <= 87",
    "7.4 * x0 + 2.61 * x1 + 8.08 * x2 + 14.37 * x3 <= 87",
    "x1 == int",
    "x2 == int",
    "x3 == int"

  ]
}
```

```python
import gurobipy as gp

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

# Create variables
eggs = m.addVar(vtype=gp.GRB.CONTINUOUS, name="eggs")
tomatoes = m.addVar(vtype=gp.GRB.INTEGER, name="tomatoes")
chicken_breasts = m.addVar(vtype=gp.GRB.INTEGER, name="chicken_breasts")
strawberries = m.addVar(vtype=gp.GRB.INTEGER, name="strawberries")


# Set objective function
m.setObjective(4.88 * eggs + 2.72 * tomatoes + 4.85 * chicken_breasts + 8.32 * strawberries, gp.GRB.MAXIMIZE)

# Add constraints
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 17.27 * strawberries >= 68)
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 25.41 * chicken_breasts >= 68)
m.addConstr(15.41 * tomatoes + 25.41 * chicken_breasts + 17.27 * strawberries >= 68)
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 17.27 * strawberries >= 80)
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 25.41 * chicken_breasts >= 80)
m.addConstr(15.41 * tomatoes + 25.41 * chicken_breasts + 17.27 * strawberries >= 80)
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 17.27 * strawberries >= 51)
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 25.41 * chicken_breasts >= 51)
m.addConstr(15.41 * tomatoes + 25.41 * chicken_breasts + 17.27 * strawberries >= 51)
m.addConstr(5.49 * chicken_breasts + 1.55 * strawberries >= 71)
m.addConstr(2.33 * tomatoes + 4.53 * chicken_breasts >= 18)
m.addConstr(25.18 * eggs + 4.53 * chicken_breasts >= 41)
m.addConstr(25.18 * eggs + 2.33 * tomatoes >= 39)
m.addConstr(2.33 * tomatoes + 4.53 * chicken_breasts + 2.26 * strawberries >= 42)
m.addConstr(23.23 * eggs + 3.71 * strawberries >= 32)
m.addConstr(23.23 * eggs + 15.92 * tomatoes + 26.77 * chicken_breasts >= 42)
m.addConstr(15.92 * tomatoes + 26.77 * chicken_breasts + 3.71 * strawberries >= 42)
m.addConstr(23.23 * eggs + 15.92 * tomatoes + 26.77 * chicken_breasts >= 46)
m.addConstr(15.92 * tomatoes + 26.77 * chicken_breasts + 3.71 * strawberries >= 46)
m.addConstr(8.08 * chicken_breasts + 14.37 * strawberries >= 25)
m.addConstr(7.4 * eggs + 2.61 * tomatoes >= 19)
m.addConstr(7.4 * eggs + 8.08 * chicken_breasts >= 36)
m.addConstr(2.61 * tomatoes + 14.37 * strawberries >= 28)
m.addConstr(7.4 * eggs + 14.37 * strawberries >= 15)
m.addConstr(7.4 * eggs + 2.61 * tomatoes + 8.08 * chicken_breasts >= 31)
m.addConstr(15.41 * tomatoes + 25.41 * chicken_breasts <= 321)
m.addConstr(15.3 * eggs + 17.27 * strawberries <= 255)
m.addConstr(15.3 * eggs + 25.41 * chicken_breasts <= 325)
m.addConstr(15.3 * eggs + 15.41 * tomatoes <= 148)
m.addConstr(25.41 * chicken_breasts + 17.27 * strawberries <= 246)
m.addConstr(15.3 * eggs + 15.41 * tomatoes + 25.41 * chicken_breasts + 17.27 * strawberries <= 246)
m.addConstr(13.57 * tomatoes + 1.55 * strawberries <= 301)
m.addConstr(15.91 * eggs + 5.49 * chicken_breasts <= 286)
m.addConstr(15.91 * eggs + 13.57 * tomatoes + 5.49 * chicken_breasts + 1.55 * strawberries <= 286)
m.addConstr(25.18 * eggs + 4.53 * chicken_breasts <= 182)
m.addConstr(2.33 * tomatoes + 2.26 * strawberries <= 195)
m.addConstr(25.18 * eggs + 2.33 * tomatoes + 4.53 * chicken_breasts + 2.26 * strawberries <= 195)
m.addConstr(15.92 * tomatoes + 3.71 * strawberries <= 172)
m.addConstr(23.23 * eggs + 3.71 * strawberries <= 149)
m.addConstr(23.23 * eggs + 26.77 * chicken_breasts <= 163)
m.addConstr(26.77 * chicken_breasts + 3.71 * strawberries <= 85)
m.addConstr(23.23 * eggs + 15.92 * tomatoes <= 164)
m.addConstr(23.23 * eggs + 26.77 * chicken_breasts + 3.71 * strawberries <= 148)
m.addConstr(23.23 * eggs + 15.92 * tomatoes + 26.77 * chicken_breasts <= 60)
m.addConstr(23.23 * eggs + 15.92 * tomatoes + 26.77 * chicken_breasts + 3.71 * strawberries <= 60)
m.addConstr(7.4 * eggs + 2.61 * tomatoes <= 179)
m.addConstr(2.61 * tomatoes + 8.08 * chicken_breasts <= 105)
m.addConstr(2.61 * tomatoes + 14.37 * strawberries <= 109)
m.addConstr(8.08 * chicken_breasts + 14.37 * strawberries <= 111)
m.addConstr(7.4 * eggs + 2.61 * tomatoes + 14.37 * strawberries <= 87)
m.addConstr(7.4 * eggs + 2.61 * tomatoes + 8.08 * chicken_breasts + 14.37 * strawberries <= 87)


# Optimize model
m.optimize()

# Print results
if m.status == gp.GRB.OPTIMAL:
    print('Objective Value:', m.objVal)
    for v in m.getVars():
        print(f'{v.varName}: {v.x}')
elif m.status == gp.GRB.INFEASIBLE:
    print("The model is infeasible.")
else:
    print(f"Optimization ended with status {m.status}")

```
