## Problem Description and Formulation

The store owner wants to maximize her total profit from selling Eucalyptus and Citrus hand lotions. The goal is to determine the optimal number of bottles of each lotion to stock.

Let's define the decision variables:

* `E`: number of bottles of Eucalyptus lotion to stock
* `C`: number of bottles of Citrus lotion to stock

The objective function is to maximize the total profit:

* The profit from selling one bottle of Eucalyptus lotion is $1.
* The profit from selling one bottle of Citrus lotion is $4.

The total profit is: `1*E + 4*C`

The constraints are:

* The total number of bottles sold is no more than 1500: `E + C <= 1500`
* The total investment in inventory is no more than $10000:
	+ The cost of one bottle of Eucalyptus lotion is $6.
	+ The cost of one bottle of Citrus lotion is $8.
	+ The total cost is: `6*E + 8*C <= 10000`
* The number of bottles of each lotion cannot be negative: `E >= 0`, `C >= 0`

## Gurobi Code

```python
import gurobi

# Create a new Gurobi model
model = gurobi.Model()

# Define the decision variables
E = model.addVar(lb=0, name="Eucalyptus")
C = model.addVar(lb=0, name="Citrus")

# Define the objective function
model.setObjective(E + 4*C, gurobi.GRB.MAXIMIZE)

# Define the constraints
model.addConstr(E + C <= 1500, name="Total_Bottles")
model.addConstr(6*E + 8*C <= 10000, name="Total_Investment")

# Optimize the model
model.optimize()

# Print the solution
if model.status == gurobi.GRB.OPTIMAL:
    print("Optimal solution found.")
    print(f"Number of bottles of Eucalyptus lotion to stock: {E.varValue}")
    print(f"Number of bottles of Citrus lotion to stock: {C.varValue}")
    print(f"Total profit: {model.objVal}")
else:
    print("No optimal solution found.")
```