```json
{
  "sym_variables": [
    ("x0", "packs of paper plates"),
    ("x1", "lightbulbs"),
    ("x2", "packs of napkins"),
    ("x3", "dish soap bottles"),
    ("x4", "rubber gloves")
  ],
  "objective_function": "8.25 * x0 + 3.87 * x1 + 8.99 * x2 + 5.31 * x3 + 9.91 * x4",
  "constraints": [
    "4 * x0 + 11 * x1 + 13 * x2 + 13 * x3 + 8 * x4 <= 163",
    "8 * x0 + 7 * x1 + 6 * x2 + 3 * x3 + 12 * x4 <= 188",
    "11 * x1 + 13 * x2 + 8 * x4 >= 26",
    "4 * x0 + 11 * x1 + 13 * x2 >= 26",
    "4 * x0 + 13 * x2 + 8 * x4 >= 26",
    "4 * x0 + 13 * x3 + 8 * x4 >= 26",
    "11 * x1 + 13 * x2 + 8 * x4 >= 24",
    "4 * x0 + 11 * x1 + 13 * x2 >= 24",
    "4 * x0 + 13 * x2 + 8 * x4 >= 24",
    "4 * x0 + 13 * x3 + 8 * x4 >= 24",
    "11 * x1 + 13 * x2 + 8 * x4 >= 16",
    "4 * x0 + 11 * x1 + 13 * x2 >= 16",
    "4 * x0 + 13 * x2 + 8 * x4 >= 16",
    "4 * x0 + 13 * x3 + 8 * x4 >= 16",
    "11 * x1 + 13 * x2 + 8 * x4 >= 23",
    "4 * x0 + 11 * x1 + 13 * x2 >= 23",
    "4 * x0 + 13 * x2 + 8 * x4 >= 23",
    "4 * x0 + 13 * x3 + 8 * x4 >= 23",
    "8 * x0 + 3 * x3 >= 23",
    "8 * x0 + 6 * x2 >= 25",
    "7 * x1 + 3 * x3 >= 18",
    "6 * x2 + 3 * x3 >= 15",
    "6 * x2 + 12 * x4 >= 34",
    "7 * x1 + 6 * x2 >= 37",
    "7 * x1 + 12 * x4 >= 21",
    "-9 * x1 + 3 * x4 >= 0",
    "13 * x3 + 8 * x4 <= 147",
    "4 * x0 + 11 * x1 <= 59",
    "4 * x0 + 13 * x3 <= 52",
    "11 * x1 + 8 * x4 <= 108",
    "11 * x1 + 13 * x2 <= 38",
    "4 * x0 + 13 * x2 <= 126",
    "11 * x1 + 13 * x3 <= 157",
    "11 * x1 + 13 * x3 + 8 * x4 <= 53",
    "4 * x0 + 11 * x1 + 13 * x3 <= 162",
    "13 * x2 + 13 * x3 + 8 * x4 <= 138",
    "4 * x0 + 13 * x3 + 8 * x4 <= 45",
    "4 * x0 + 11 * x1 + 8 * x4 <= 130",
    "4 * x0 + 11 * x1 + 13 * x2 + 13 * x3 + 8 * x4 <= 130",
    "8 * x0 + 7 * x1 <= 174",
    "7 * x1 + 12 * x4 <= 101",
    "7 * x1 + 3 * x3 <= 188",
    "3 * x3 + 12 * x4 <= 67",
    "8 * x0 + 7 * x1 + 12 * x4 <= 127",
    "7 * x1 + 6 * x2 + 12 * x4 <= 103",
    "8 * x0 + 6 * x2 + 3 * x3 <= 129",
    "8 * x0 + 3 * x3 + 12 * x4 <= 118",
    "7 * x1 + 6 * x2 + 3 * x3 <= 172",
    "6 * x2 + 3 * x3 + 12 * x4 <= 47",
    "7 * x1 + 3 * x3 + 12 * x4 <= 37",
    "8 * x0 + 6 * x2 + 12 * x4 <= 70",
    "8 * x0 + 7 * x1 + 6 * x2 + 3 * x3 + 12 * x4 <= 70"
  ]
}
```

```python
import gurobipy as gp

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

# Create variables
x0 = model.addVar(vtype=gp.GRB.INTEGER, name="packs of paper plates")
x1 = model.addVar(vtype=gp.GRB.INTEGER, name="lightbulbs")
x2 = model.addVar(vtype=gp.GRB.INTEGER, name="packs of napkins")
x3 = model.addVar(vtype=gp.GRB.INTEGER, name="dish soap bottles")
x4 = model.addVar(vtype=gp.GRB.INTEGER, name="rubber gloves")


# Set objective function
model.setObjective(8.25 * x0 + 3.87 * x1 + 8.99 * x2 + 5.31 * x3 + 9.91 * x4, gp.GRB.MAXIMIZE)

# Add constraints
model.addConstr(4 * x0 + 11 * x1 + 13 * x2 + 13 * x3 + 8 * x4 <= 163, "storage space")
model.addConstr(8 * x0 + 7 * x1 + 6 * x2 + 3 * x3 + 12 * x4 <= 188, "weight")

# ... (rest of the constraints from the JSON "constraints" section)
# Example:
model.addConstr(11 * x1 + 13 * x2 + 8 * x4 >= 26, "c1")
# ... add all other constraints similarly

# Optimize model
model.optimize()

# Print results
if model.status == gp.GRB.OPTIMAL:
    print("Optimal solution found:")
    print(f"packs of paper plates: {x0.x}")
    print(f"lightbulbs: {x1.x}")
    print(f"packs of napkins: {x2.x}")
    print(f"dish soap bottles: {x3.x}")
    print(f"rubber gloves: {x4.x}")
    print(f"Objective value: {model.objVal}")
elif model.status == gp.GRB.INFEASIBLE:
    print("Model is infeasible.")
else:
    print(f"Optimization terminated with status {model.status}")

```