if (!previous.equals(estimatedResult)) {
if (!previous.isEqual(estimatedResult)) { System.out.println("Inside compareResults... results are !.equals..." + "\n previous result: " + previous + " estimated result: " + estimatedResult);
  public void compareResults(AllocationResult estimatedResult, Task withdraw,                             Inventory inv, LogisticsInventoryPG thePG) {    PlanElement prevPE = withdraw.getPlanElement();    if (prevPE == null) {      Allocation alloc = inventoryPlugin.getPlanningFactory().              createAllocation(withdraw.getPlan(), withdraw, inv,                               estimatedResult, myRole);      inventoryPlugin.publishAdd(alloc);    } else {      AllocationResult previous = prevPE.getEstimatedResult();      if (!previous.equals(estimatedResult)) {        prevPE.setEstimatedResult(estimatedResult);        inventoryPlugin.publishChange(prevPE);      } else {        // otherwise leave it alone and don't bother to update the PG        return;      }    }//     updatePG(withdraw, thePG);  }