public void remove(Integer start, Integer end){
		Interval toRemove = new Interval(start,end);
		List<Interval> affected = new LinkedList<Interval>();
		
		for (Interval currInterval : sched){
			if (!currInterval.isDisjoint(toRemove))
				affected.add(currInterval);
			if (currInterval.start > toRemove.end)
				break;
		}
		
		for (Interval interval : affected){
			sched.remove(interval);
			Interval aux = interval.subtract(toRemove);
			if (interval.isEmpty() == false){
				sched.add(interval);
				if (aux.isEmpty() == false)
					sched.add(aux);
			}
		}
	}