```json
{
  "sym_variables": [
    ("x0", "hours worked by Hank"),
    ("x1", "hours worked by Peggy"),
    ("x2", "hours worked by Ringo"),
    ("x3", "hours worked by George"),
    ("x4", "hours worked by Mary"),
    ("x5", "hours worked by Dale")
  ],
  "objective_function": "4.9 * x0 + 5.94 * x1 + 7.72 * x2 + 4.66 * x3 + 3.27 * x4 + 1.6 * x5",
  "constraints": [
    "26.28 * x1 + 23.64 * x4 >= 52",
    "23.64 * x4 + 9.17 * x5 >= 24",
    "25.11 * x3 + 9.17 * x5 >= 30",
    "1.93 * x0 + 25.11 * x3 >= 64",
    "1.93 * x0 + 23.64 * x4 >= 43",
    "1.93 * x0 + 9.17 * x5 >= 66",
    "25.11 * x3 + 23.64 * x4 + 9.17 * x5 >= 62",
    "1.93 * x0 + 26.28 * x1 + 9.17 * x5 >= 62",
    "25.11 * x3 + 23.64 * x4 + 9.17 * x5 >= 55",
    "1.93 * x0 + 26.28 * x1 + 9.17 * x5 >= 55",
    "1.93 * x0 + 26.28 * x1 + 18.04 * x2 + 25.11 * x3 + 23.64 * x4 + 9.17 * x5 >= 55",
    "8.14 * x1 + 11.17 * x4 >= 41",
    "12.03 * x0 + 16.01 * x3 >= 70",
    "12.03 * x0 + 0.55 * x2 + 16.01 * x3 >= 78",
    "8.14 * x1 + 16.01 * x3 + 11.0 * x5 >= 78",
    "8.14 * x1 + 0.55 * x2 + 11.0 * x5 >= 78",
    "8.14 * x1 + 0.55 * x2 + 11.17 * x4 >= 78",
    "12.03 * x0 + 0.55 * x2 + 11.17 * x4 >= 78",
    "8.14 * x1 + 11.17 * x4 + 11.0 * x5 >= 78",
    "12.03 * x0 + 0.55 * x2 + 16.01 * x3 >= 76",
    "8.14 * x1 + 16.01 * x3 + 11.0 * x5 >= 76",
    "8.14 * x1 + 0.55 * x2 + 11.0 * x5 >= 76",
    "8.14 * x1 + 0.55 * x2 + 11.17 * x4 >= 76",
    "12.03 * x0 + 0.55 * x2 + 11.17 * x4 >= 76",
    "8.14 * x1 + 11.17 * x4 + 11.0 * x5 >= 76",
    "12.03 * x0 + 0.55 * x2 + 16.01 * x3 >= 56",
    "8.14 * x1 + 16.01 * x3 + 11.0 * x5 >= 56",
    "8.14 * x1 + 0.55 * x2 + 11.0 * x5 >= 56",
    "8.14 * x1 + 0.55 * x2 + 11.17 * x4 >= 56",
    "12.03 * x0 + 0.55 * x2 + 11.17 * x4 >= 56",
    "8.14 * x1 + 11.17 * x4 + 11.0 * x5 >= 56",
    "12.03 * x0 + 0.55 * x2 + 16.01 * x3 >= 86",
    "8.14 * x1 + 16.01 * x3 + 11.0 * x5 >= 86",
    "8.14 * x1 + 0.55 * x2 + 11.0 * x5 >= 86",
    "8.14 * x1 + 0.55 * x2 + 11.17 * x4 >= 86",
    "12.03 * x0 + 0.55 * x2 + 11.17 * x4 >= 86",
    "8.14 * x1 + 11.17 * x4 + 11.0 * x5 >= 86",
    "12.03 * x0 + 0.55 * x2 + 16.01 * x3 >= 78",
    "8.14 * x1 + 16.01 * x3 + 11.0 * x5 >= 78",
    "8.14 * x1 + 0.55 * x2 + 11.0 * x5 >= 78",
    "8.14 * x1 + 0.55 * x2 + 11.17 * x4 >= 78",
    "12.03 * x0 + 0.55 * x2 + 11.17 * x4 >= 78",
    "8.14 * x1 + 11.17 * x4 + 11.0 * x5 >= 78",
    "12.03 * x0 + 0.55 * x2 + 16.01 * x3 >= 81",
    "8.14 * x1 + 16.01 * x3 + 11.0 * x5 >= 81",
    "8.14 * x1 + 0.55 * x2 + 11.0 * x5 >= 81",
    "8.14 * x1 + 0.55 * x2 + 11.17 * x4 >= 81",
    "12.03 * x0 + 0.55 * x2 + 11.17 * x4 >= 81",
    "8.14 * x1 + 11.17 * x4 + 11.0 * x5 >= 81",
    "12.03 * x0 + 8.14 * x1 + 0.55 * x2 + 16.01 * x3 + 11.17 * x4 + 11.0 * x5 >= 81",
    "19.94 * x2 + 25.72 * x5 >= 31",
    "7.94 * x3 + 19.26 * x4 >= 63",
    "26.55 * x1 + 19.26 * x4 >= 55",
    "16.87 * x0 + 7.94 * x3 >= 59",
    "19.26 * x4 + 25.72 * x5 >= 65",
    "16.87 * x0 + 25.72 * x5 >= 62",
    "18.04 * x2 + 25.11 * x3 <= 368",
    "23.64 * x4 + 9.17 * x5 <= 185",
    "1.93 * x0 + 26.28 * x1 + 9.17 * x5 <= 85",
    "1.93 * x0 + 18.04 * x2 + 25.11 * x3 <= 205",
    "1.93 * x0 + 18.04 * x2 + 23.64 * x4 <= 344",
    "26.28 * x1 + 25.11 * x3 + 9.17 * x5 <= 167",
    "18.04 * x2 + 25.11 * x3 + 9.17 * x5 <= 407",
    "26.28 * x1 + 23.64 * x4 + 9.17 * x5 <= 245",
    "18.04 * x2 + 25.11 * x3 + 23.64 * x4 <= 303",
    "16.01 * x3 + 11.0 * x5 <= 395",
    "0.55 * x2 + 16.01 * x3 <= 267",
    "x0 >= 0",
    "x1 >= 0",
    "x2 >= 0",
    "x3 >= 0",
    "x4 >= 0",
    "x5 >= 0"
  ]
}
```

```python
import gurobipy as gp

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

# Create variables
hank = model.addVar(vtype=gp.GRB.INTEGER, name="hank")
peggy = model.addVar(vtype=gp.GRB.INTEGER, name="peggy")
ringo = model.addVar(vtype=gp.GRB.INTEGER, name="ringo")
george = model.addVar(vtype=gp.GRB.INTEGER, name="george")
mary = model.addVar(vtype=gp.GRB.INTEGER, name="mary")
dale = model.addVar(vtype=gp.GRB.INTEGER, name="dale")


# Set objective function
model.setObjective(4.9 * hank + 5.94 * peggy + 7.72 * ringo + 4.66 * george + 3.27 * mary + 1.6 * dale, gp.GRB.MINIMIZE)

# Add constraints

model.addConstr(26.28 * peggy + 23.64 * mary >= 52)
model.addConstr(23.64 * mary + 9.17 * dale >= 24)
model.addConstr(25.11 * george + 9.17 * dale >= 30)
model.addConstr(1.93 * hank + 25.11 * george >= 64)
model.addConstr(1.93 * hank + 23.64 * mary >= 43)
model.addConstr(1.93 * hank + 9.17 * dale >= 66)
model.addConstr(25.11 * george + 23.64 * mary + 9.17 * dale >= 62)
model.addConstr(1.93 * hank + 26.28 * peggy + 9.17 * dale >= 62)
model.addConstr(25.11 * george + 23.64 * mary + 9.17 * dale >= 55)
model.addConstr(1.93 * hank + 26.28 * peggy + 9.17 * dale >= 55)
model.addConstr(1.93 * hank + 26.28 * peggy + 18.04 * ringo + 25.11 * george + 23.64 * mary + 9.17 * dale >= 55)
model.addConstr(8.14 * peggy + 11.17 * mary >= 41)
model.addConstr(12.03 * hank + 16.01 * george >= 70)


# ... (rest of the constraints from the JSON)


model.addConstr(18.04 * ringo + 25.11 * george <= 368)
model.addConstr(23.64 * mary + 9.17 * dale <= 185)
# ... (rest of the upper bound constraints)

# Optimize model
model.optimize()

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

```