```json
{
  "sym_variables": [
    ("x0", "protein bars"),
    ("x1", "cheeseburgers"),
    ("x2", "rotisserie chickens"),
    ("x3", "eggs")
  ],
  "objective_function": "2*x0**2 + 3*x0*x1 + 5*x0*x2 + 6*x1**2 + 1*x1*x2 + 9*x1*x3 + 5*x2**2 + 3*x2*x3 + 2*x3**2 + 7*x0 + 8*x1 + 5*x2 + 6*x3",
  "constraints": [
    "6*x0**2 + 22*x2**2 >= 41",
    "22*x2 + 10*x3 >= 59",
    "1*x1**2 + 10*x3**2 >= 51",
    "1*x0 + 8*x2 + 11*x3 >= 50",
    "1*x0**2 + 16*x1**2 + 11*x3**2 >= 50",
    "1*x0 + 16*x1 + 8*x2 >= 50",
    "1*x0**2 + 8*x2**2 + 11*x3**2 >= 41",
    "1*x0 + 16*x1 + 11*x3 >= 41",
    "1*x0 + 16*x1 + 8*x2 >= 41",
    "1*x0**2 + 8*x2**2 + 11*x3**2 >= 38",
    "1*x0**2 + 16*x1**2 + 11*x3**2 >= 38",
    "1*x0 + 16*x1 + 8*x2 >= 38",
    "20*x2 + 6*x3 >= 40",
    "1*x1 + 6*x3 >= 20",
    "1*x1 + 20*x2 >= 43",
    "8*x0**2 + 1*x1**2 >= 23",
    "8*x0**2 + 20*x2**2 >= 42",
    "8*x0 + 20*x2 + 6*x3 >= 51",
    "9*x2**2 + 16*x3**2 >= 25",
    "6*x1 + 16*x3 >= 39",
    "15*x0 + 16*x3 >= 22",
    "15*x0 + 6*x1 >= 35",
    "15*x0 + 9*x2 >= 24",
    "15*x0 + 6*x1 + 9*x2 >= 34",
    "6*x1 + 9*x2 + 16*x3 >= 34",
    "15*x0 + 9*x2 + 16*x3 >= 34",
    "15*x0 + 6*x1 + 9*x2 >= 34",
    "6*x1 + 9*x2 + 16*x3 >= 34",
    "15*x0 + 9*x2 + 16*x3 >= 34",
    "15*x0 + 6*x1 + 9*x2 >= 22",
    "6*x1 + 9*x2 + 16*x3 >= 22",
    "15*x0**2 + 9*x2**2 + 16*x3**2 >= 22",
    "20*x1 + 11*x3 >= 16",
    "5*x0 + 20*x1 >= 26",
    "5*x0 + 6*x2 >= 19",
    "20*x1 + 6*x2 >= 31",
    "20*x1 + 6*x2 + 11*x3 >= 37",
    "5*x0 + 6*x2 + 11*x3 >= 37",
    "5*x0 + 20*x1 + 11*x3 >= 37",
    "20*x1 + 6*x2 + 11*x3 >= 25",
    "5*x0 + 6*x2 + 11*x3 >= 25",
    "5*x0 + 20*x1 + 11*x3 >= 25",
    "20*x1 + 6*x2 + 11*x3 >= 22",
    "5*x0 + 6*x2 + 11*x3 >= 22",
    "5*x0**2 + 20*x1**2 + 11*x3**2 >= 22",
    "6*x0**2 + 1*x1**2 <= 255",
    "6*x0**2 + 10*x3**2 <= 242",
    "6*x0**2 + 22*x2**2 <= 176",
    "1*x1**2 + 22*x2**2 + 10*x3**2 <= 157",
    "6*x0**2 + 1*x1**2 + 10*x3**2 <= 224",
    "6*x0 + 22*x2 + 10*x3 <= 103",
    "6*x0 + 1*x1 + 22*x2 + 10*x3 <= 103",
    "16*x1 + 8*x2 <= 202",
    "1*x0 + 8*x2 <= 164",
    "8*x2**2 + 11*x3**2 <= 58",
    "1*x0**2 + 8*x2**2 + 11*x3**2 <= 114",
    "16*x1**2 + 8*x2**2 + 11*x3**2 <= 74",
    "1*x0 + 16*x1 + 8*x2 + 11*x3 <= 74",
    "8*x0 + 20*x2 <= 184",
    "8*x0**2 + 1*x1**2 <= 74",
    "8*x0 + 6*x3 <= 165",
    "1*x1**2 + 20*x2**2 <= 170",
    "8*x0 + 1*x1 + 20*x2 + 6*x3 <= 170",
    "15*x0**2 + 6*x1**2 <= 130",
    "9*x2**2 + 16*x3**2 <= 111",
    "6*x1 + 16*x3 <= 81",
    "6*x1 + 9*x2 <= 89",
    "15*x0 + 9*x2 <= 150",
    "15*x0 + 6*x1 + 9*x2 + 16*x3 <= 150",
    "5*x0**2 + 6*x2**2 <= 83",
    "6*x2**2 + 11*x3**2 <= 156",
    "5*x0 + 11*x3 <= 104",
    "5*x0**2 + 20*x1**2 <= 56",
    "5*x0 + 20*x1 + 11*x3 <= 130",
    "5*x0 + 20*x1 + 6*x2 + 11*x3 <= 130",
    "6*x0 <= 263",
    "1*x0 <= 202",
    "8*x0 <= 206",
    "15*x0 <= 177",
    "5*x0 <= 170",
    "1*x1 <= 263",
    "16*x1 <= 202",
    "1*x1 <= 206",
    "6*x1 <= 177",
    "20*x1 <= 170",
    "22*x2 <= 263",
    "8*x2 <= 202",
    "20*x2 <= 206",
    "9*x2 <= 177",
    "6*x2 <= 170",
    "10*x3 <= 263",
    "11*x3 <= 202",
    "6*x3 <= 206",
    "16*x3 <= 177",
    "11*x3 <= 170"
  ]
}
```

```python
import gurobipy as gp

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

# Create variables
protein_bars = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="protein_bars")
cheeseburgers = m.addVar(lb=0, vtype=gp.GRB.CONTINUOUS, name="cheeseburgers")
rotisserie_chickens = m.addVar(lb=0, vtype=gp.GRB.INTEGER, name="rotisserie_chickens")
eggs = m.addVar(lb=0, vtype=gp.GRB.INTEGER, name="eggs")


# Set objective function
m.setObjective(2*protein_bars**2 + 3*protein_bars*cheeseburgers + 5*protein_bars*rotisserie_chickens + 6*cheeseburgers**2 + 1*cheeseburgers*rotisserie_chickens + 9*cheeseburgers*eggs + 5*rotisserie_chickens**2 + 3*rotisserie_chickens*eggs + 2*eggs**2 + 7*protein_bars + 8*cheeseburgers + 5*rotisserie_chickens + 6*eggs, gp.GRB.MAXIMIZE)

# Add constraints
m.addConstr(6*protein_bars**2 + 22*rotisserie_chickens**2 >= 41)
m.addConstr(22*rotisserie_chickens + 10*eggs >= 59)
m.addConstr(1*cheeseburgers**2 + 10*eggs**2 >= 51)
# ... (add all other constraints similarly)
m.addConstr(6 * protein_bars <= 263)
m.addConstr(1 * protein_bars <= 202)
# ... (add all resource constraints similarly)


# Optimize model
m.optimize()

# Print results
if m.status == gp.GRB.OPTIMAL:
    print('Obj: %g' % m.objVal)
    print('protein_bars:', protein_bars.x)
    print('cheeseburgers:', cheeseburgers.x)
    print('rotisserie_chickens:', rotisserie_chickens.x)
    print('eggs:', eggs.x)

elif m.status == gp.GRB.INFEASIBLE:
    print('Optimization problem is infeasible.')
else:
    print('Optimization ended with status %d' % m.status)

```