protected boolean pickAndExecuteAnAction() {
		if (ordering)
		{
			SendOrder(outGoingList);
		}
		synchronized(orders)
		{
		for (Order order : orders) 
		{	
			synchronized(cookingAreas)
			{
			for(CookingArea cookingArea: cookingAreas)
			{
				synchronized(platingAreas)
				{
				for(PlatingArea platingArea: platingAreas)	
				{
					if (order.s==state.pending && !cookingArea.isOccupied)
					{
						TryToCookFood(order, cookingArea);
						return true;
					}
					if (order.s==state.done && !platingArea.isOccupied)
					{
						PlateIt(order, platingArea);
						return true;
					}
				}
				}
			}
			}
		}
		}
		return false;
	}