problem = p;
}
public TimeStampedPlan schedule(TotalOrderPlan top)
{
PartialOrderPlan pop = GreedyPartialOrderLifter.lift(top, problem);
MatrixSTN stn = new MatrixSTN(top);
stn.addConstraints(pop.getTemporalConstraints());
//Sort out the Durations
Map states = new Hashtable(); //Maps (Actions => states (which the actions are applied in))
Iterator ait = top.getActions().iterator();