```json
{
  "sym_variables": [
    ("x0", "milligrams of vitamin B3"),
    ("x1", "milligrams of vitamin E"),
    ("x2", "milligrams of vitamin B7"),
    ("x3", "milligrams of vitamin B9")
  ],
  "objective_function": "7*x0**2 + 5*x0*x1 + 8*x0*x2 + 3*x1**2 + 2*x1*x2 + 8*x1*x3 + 7*x2*x3 + 4*x3**2 + 6*x0 + 3*x1 + 2*x3",
  "constraints": [
    "8*x0 + 5*x3 >= 16",
    "7*x1 + 5*x3 >= 11",
    "7*x1 + 3*x2 + 5*x3 >= 22",
    "7*x1 + 6*x3 >= 7",
    "3*x0 + 8*x2 >= 12",
    "8*x2 + 6*x3 >= 10",
    "3*x0**2 + 7*x1**2 + 8*x2**2 >= 10",
    "3*x0**2 + 7*x1**2 + 6*x3**2 >= 10",
    "3*x0 + 7*x1 + 8*x2 >= 9",
    "3*x0 + 7*x1 + 6*x3 >= 9",
    "6*x0 + 3*x3 >= 11",
    "6*x1 + 3*x3 >= 10",
    "6*x1 + 6*x2 >= 14",
    "6*x0 + 6*x1 + 3*x3 >= 21",
    "-10*x0**2 - 5*x2**2 + 8*x3**2 >= 0",
    "8*x0**2 + 7*x1**2 <= 110",
    "7*x1 + 3*x2 <= 82",
    "8*x0**2 + 3*x2**2 <= 65",
    "8*x0**2 + 7*x1**2 + 5*x3**2 <= 64",
    "8*x0 + 7*x1 + 3*x2 + 5*x3 <= 64",
    "7*x1 + 6*x3 <= 41",
    "3*x0 + 7*x1 <= 54",
    "3*x0 + 6*x3 <= 70",
    "3*x0 + 7*x1 + 8*x2 + 6*x3 <= 70",
    "6*x0 + 6*x2 <= 66",
    "6*x1**2 + 3*x3**2 <= 35",
    "6*x1 + 6*x2 <= 52",
    "6*x0 + 6*x1 + 6*x2 + 3*x3 <= 52",
    "3*x1 + 1*x2 <= 17",
    "2*x0**2 + 3*x3**2 <= 17",
    "2*x0 + 1*x2 <= 22",
    "1*x2 + 3*x3 <= 26",
    "3*x1 + 1*x2 + 3*x3 <= 28",
    "2*x0 + 3*x1 + 3*x3 <= 21",
    "2*x0 + 1*x2 + 3*x3 <= 37",
    "2*x0 + 3*x1 + 1*x2 + 3*x3 <= 37"
  ]
}
```

```python
import gurobipy as gp

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

# Create variables
vitamin_b3 = m.addVar(lb=0, name="vitamin_b3")
vitamin_e = m.addVar(lb=0, name="vitamin_e")
vitamin_b7 = m.addVar(lb=0, vtype=gp.GRB.INTEGER, name="vitamin_b7")
vitamin_b9 = m.addVar(lb=0, name="vitamin_b9")


# Set objective function
obj = 7*vitamin_b3**2 + 5*vitamin_b3*vitamin_e + 8*vitamin_b3*vitamin_b7 + 3*vitamin_e**2 + 2*vitamin_e*vitamin_b7 + 8*vitamin_e*vitamin_b9 + 7*vitamin_b7*vitamin_b9 + 4*vitamin_b9**2 + 6*vitamin_b3 + 3*vitamin_e + 2*vitamin_b9
m.setObjective(obj, gp.GRB.MAXIMIZE)

# Add constraints
resource_constraints = {
    'r0': {'upper_bound': 127, 'x0': 8, 'x1': 7, 'x2': 3, 'x3': 5},
    'r1': {'upper_bound': 76, 'x0': 3, 'x1': 7, 'x2': 8, 'x3': 6},
    'r2': {'upper_bound': 87, 'x0': 6, 'x1': 6, 'x2': 6, 'x3': 3},
    'r3': {'upper_bound': 41, 'x0': 2, 'x1': 3, 'x2': 1, 'x3': 3}
}

constraints = [
    8*vitamin_b3 + 5*vitamin_b9 >= 16,
    7*vitamin_e + 5*vitamin_b9 >= 11,
    7*vitamin_e + 3*vitamin_b7 + 5*vitamin_b9 >= 22,
    7*vitamin_e + 6*vitamin_b9 >= 7,
    3*vitamin_b3 + 8*vitamin_b7 >= 12,
    8*vitamin_b7 + 6*vitamin_b9 >= 10,
    3*vitamin_b3**2 + 7*vitamin_e**2 + 8*vitamin_b7**2 >= 10,
    3*vitamin_b3**2 + 7*vitamin_e**2 + 6*vitamin_b9**2 >= 10,
    3*vitamin_b3 + 7*vitamin_e + 8*vitamin_b7 >= 9,
    3*vitamin_b3 + 7*vitamin_e + 6*vitamin_b9 >= 9,
    6*vitamin_b3 + 3*vitamin_b9 >= 11,
    6*vitamin_e + 3*vitamin_b9 >= 10,
    6*vitamin_e + 6*vitamin_b7 >= 14,
    6*vitamin_b3 + 6*vitamin_e + 3*vitamin_b9 >= 21,
    -10*vitamin_b3**2 - 5*vitamin_b7**2 + 8*vitamin_b9**2 >= 0,
    8*vitamin_b3**2 + 7*vitamin_e**2 <= 110,
    7*vitamin_e + 3*vitamin_b7 <= 82,
    8*vitamin_b3**2 + 3*vitamin_b7**2 <= 65,
    8*vitamin_b3**2 + 7*vitamin_e**2 + 5*vitamin_b9**2 <= 64,
    8*vitamin_b3 + 7*vitamin_e + 3*vitamin_b7 + 5*vitamin_b9 <= 64,
    7*vitamin_e + 6*vitamin_b9 <= 41,
    3*vitamin_b3 + 7*vitamin_e <= 54,
    3*vitamin_b3 + 6*vitamin_b9 <= 70,
    3*vitamin_b3 + 7*vitamin_e + 8*vitamin_b7 + 6*vitamin_b9 <= 70,
    6*vitamin_b3 + 6*vitamin_b7 <= 66,
    6*vitamin_e**2 + 3*vitamin_b9**2 <= 35,
    6*vitamin_e + 6*vitamin_b7 <= 52,
    6*vitamin_b3 + 6*vitamin_e + 6*vitamin_b7 + 3*vitamin_b9 <= 52,
    3*vitamin_e + 1*vitamin_b7 <= 17,
    2*vitamin_b3**2 + 3*vitamin_b9**2 <= 17,
    2*vitamin_b3 + 1*vitamin_b7 <= 22,
    1*vitamin_b7 + 3*vitamin_b9 <= 26,
    3*vitamin_e + 1*vitamin_b7 + 3*vitamin_b9 <= 28,
    2*vitamin_b3 + 3*vitamin_e + 3*vitamin_b9 <= 21,
    2*vitamin_b3 + 1*vitamin_b7 + 3*vitamin_b9 <= 37,
    2*vitamin_b3 + 3*vitamin_e + 1*vitamin_b7 + 3*vitamin_b9 <= 37
]

for constraint in constraints:
    m.addConstr(constraint)


# 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 %d" % m.status)

```