def add_days_worked(start, days):
 step = get_step(start)
 (weeks, plus) = divmod(days, 5)
 end = (start + (((weeks * 7) + plus) * step))
 if (weekday(end) >= 5):
  end += (2 * step)
 end += (len([x for x in get_national_holidays(start, (end + step)) if (weekday(x) < 5)]) * step)
 if (weekday(end) >= 5):
  end += (2 * step)
 return end

def add_days_worked ( start , days ) : step = get_step ( start ) ( weeks , plus ) = divmod ( days , 5 ) end = ( start + ( ( ( weeks * 7 ) + plus ) * step ) ) if ( weekday ( end ) >= 5 ) : end += ( 2 * step ) end += ( len ( [ x for x in get_national_holidays ( start , ( end + step ) ) if ( weekday ( x ) < 5 ) ] ) * step ) if ( weekday ( end ) >= 5 ) : end += ( 2 * step ) return end
adds date but try to only take days worked into account .