public Span getOffset(Span span, float amount, PointerType pointer) {
int direction = (pointer == Pointer.PointerType.FUTURE) ? 1 : -1;
RepeaterWeekend weekend = new RepeaterWeekend();
weekend.setStart(span.getBeginCalendar());
Calendar start = Time.cloneAndAdd(weekend.nextSpan(pointer).getBeginCalendar(), Calendar.SECOND, (amount - 1) * direction * RepeaterWeek.WEEK_SECONDS);
return new Span(start, Time.cloneAndAdd(start, Calendar.SECOND, span.getWidth()));
}