var Number Sun = 0;
var Number Mon = 1;
var Number Tues= 2;
var Number Wed = 3;
var Number Thurs = 4;
var Number Fri = 5;
var Number Sat = 6;
var Duration SLADuration = [Call Type - SLA Hours - Tier 1];
var Number SLAStartingDay = DayOfWeek(ToDate([SLA Start Date]));
var Text SLACalculationMethod = [Call Type - SLA Calculation Method];
var Text MonBHStart = ToText([Call Type - SLA Hours Start - Monday]);
var Text MonBHEnd = ToText([Call Type - SLA Hours End - Monday]);
var Text TuesBHStart = ToText([Call Type - SLA Hours Start - Tuesday]);
var Text TuesBHEnd = ToText([Call Type - SLA Hours End - Tuesday]);
var Text WedBHStart = ToText([Call Type - SLA Hours Start - Wednesday]);
var Text WedBHEnd = ToText([Call Type - SLA Hours End - Wednesday]);
var Text ThursBHStart = ToText([Call Type - SLA Hours Start - Thursday]);
var Text ThursBHEnd = ToText([Call Type - SLA Hours End - Thursday]);
var Text FriBHStart = ToText([Call Type - SLA Hours Start - Friday]);
var Text FriBHEnd = ToText([Call Type - SLA Hours End - Friday]);
var Text SatBHStart = ToText([Call Type - SLA Hours Start - Saturday]);
var Text SatBHEnd = ToText([Call Type - SLA Hours End - Saturday]);
var Text SunBHStart = ToText([Call Type - SLA Hours Start - Sunday]);
var Text SunBHEnd = ToText([Call Type - SLA Hours End - Sunday]);
var Text DayOneBHStart = if($SLAStartingDay = $Mon, $TuesBHStart, $SLAStartingDay = $Tues, $WedBHStart, $SLAStartingDay = $Wed, $ThursBHStart, $SLAStartingDay = $Thurs, $FriBHStart, $SLAStartingDay = $Fri, $SatBHStart, $SLAStartingDay = $Sat, $SunBHStart, $SLAStartingDay = $Sun, $MonBHStart, "08:00");
var Text DayOneBHEnd = if($SLAStartingDay = $Mon, $TuesBHEnd, $SLAStartingDay = $Tues, $WedBHEnd, $SLAStartingDay = $Wed, $ThursBHEnd, $SLAStartingDay = $Thurs, $FriBHEnd, $SLAStartingDay = $Fri, $SatBHEnd, $SLAStartingDay = $Sat, $SunBHEnd, $SLAStartingDay = $Sun, $MonBHEnd, "18:00");
var Text DayTwoBHStart = if($SLAStartingDay = $Mon, $WedBHStart, $SLAStartingDay = $Tues, $ThursBHStart, $SLAStartingDay = $Wed, $FriBHStart, $SLAStartingDay = $Thurs, $SatBHStart, $SLAStartingDay = $Fri, $SunBHStart, $SLAStartingDay = $Sat, $MonBHStart, $SLAStartingDay = $Sun, $TuesBHStart, "08:00");
var Text DayTwoBHEnd = if($SLAStartingDay = $Mon, $WedBHEnd, $SLAStartingDay = $Tues, $ThursBHEnd, $SLAStartingDay = $Wed, $FriBHEnd, $SLAStartingDay = $Thurs, $SatBHEnd, $SLAStartingDay = $Fri, $SunBHEnd, $SLAStartingDay = $Sat, $MonBHEnd, $SLAStartingDay = $Sun, $TuesBHEnd, "18:00");
var Text DayThreeBHStart = if($SLAStartingDay = $Mon, $ThursBHStart, $SLAStartingDay = $Tues, $FriBHStart, $SLAStartingDay = $Wed, $SatBHStart, $SLAStartingDay = $Thurs, $SunBHStart, $SLAStartingDay = $Fri, $MonBHStart, $SLAStartingDay = $Sat, $TuesBHStart, $SLAStartingDay = $Sun, $WedBHStart, "08:00");
var Text DayThreeBHEnd = if($SLAStartingDay = $Mon, $ThursBHEnd, $SLAStartingDay = $Tues, $FriBHEnd, $SLAStartingDay = $Wed, $SatBHEnd, $SLAStartingDay = $Thurs, $SunBHEnd, $SLAStartingDay = $Fri, $MonBHEnd, $SLAStartingDay = $Sat, $TuesBHEnd, $SLAStartingDay = $Sun, $WedBHEnd, "18:00");
var Text DayFourBHStart = if($SLAStartingDay = $Mon, $FriBHStart, $SLAStartingDay = $Tues, $SatBHStart, $SLAStartingDay = $Wed, $SunBHStart, $SLAStartingDay = $Thurs, $MonBHStart, $SLAStartingDay = $Fri, $TuesBHStart, $SLAStartingDay = $Sat, $WedBHStart, $SLAStartingDay = $Sun, $ThursBHStart, "08:00");
var Text DayFourBHEnd = if($SLAStartingDay = $Mon, $FriBHEnd, $SLAStartingDay = $Tues, $SatBHEnd, $SLAStartingDay = $Wed, $SunBHEnd, $SLAStartingDay = $Thurs, $MonBHEnd, $SLAStartingDay = $Fri, $TuesBHEnd, $SLAStartingDay = $Sat, $WedBHEnd, $SLAStartingDay = $Sun, $ThursBHEnd, "18:00");
var Text DayFiveBHStart = if($SLAStartingDay = $Mon, $SatBHStart, $SLAStartingDay = $Tues, $SunBHStart, $SLAStartingDay = $Wed, $MonBHStart, $SLAStartingDay = $Thurs, $TuesBHStart, $SLAStartingDay = $Fri, $WedBHStart, $SLAStartingDay = $Sat, $ThursBHStart, $SLAStartingDay = $Sun, $FriBHStart, "08:00");
var Text DayFiveBHEnd = if($SLAStartingDay = $Mon, $SatBHEnd, $SLAStartingDay = $Tues, $SunBHEnd, $SLAStartingDay = $Wed, $MonBHEnd, $SLAStartingDay = $Thurs, $TuesBHEnd, $SLAStartingDay = $Fri, $WedBHEnd, $SLAStartingDay = $Sat, $ThursBHEnd, $SLAStartingDay = $Sun, $FriBHEnd, "18:00");
var Text DaySixBHStart = if($SLAStartingDay = $Mon, $SunBHStart, $SLAStartingDay = $Tues, $MonBHStart, $SLAStartingDay = $Wed, $TuesBHStart, $SLAStartingDay = $Thurs, $WedBHStart, $SLAStartingDay = $Fri, $ThursBHStart, $SLAStartingDay = $Sat, $FriBHStart, $SLAStartingDay = $Sun, $SatBHStart, "08:00");
var Text DaySixBHEnd = if($SLAStartingDay = $Mon, $SunBHEnd, $SLAStartingDay = $Tues, $MonBHEnd, $SLAStartingDay = $Wed, $TuesBHEnd, $SLAStartingDay = $Thurs, $WedBHEnd, $SLAStartingDay = $Fri, $ThursBHEnd, $SLAStartingDay = $Sat, $FriBHEnd, $SLAStartingDay = $Sun, $SatBHEnd, "18:00");
var Text DaySevenBHStart = if($SLAStartingDay = $Mon, $MonBHStart, $SLAStartingDay = $Tues, $TuesBHStart, $SLAStartingDay = $Wed, $WedBHStart, $SLAStartingDay = $Thurs, $ThursBHStart, $SLAStartingDay = $Fri, $FriBHStart, $SLAStartingDay = $Sat, $SatBHStart, $SLAStartingDay = $Sun, $SunBHStart, "08:00");
var Text DaySevenBHEnd = if($SLAStartingDay = $Mon, $MonBHEnd, $SLAStartingDay = $Tues, $TuesBHEnd, $SLAStartingDay = $Wed, $WedBHEnd, $SLAStartingDay = $Thurs, $ThursBHEnd, $SLAStartingDay = $Fri, $FriBHEnd, $SLAStartingDay = $Sat, $SatBHEnd, $SLAStartingDay = $Sun, $SunBHEnd, "18:00");
var DateTime SLAStartingDate = If($SLACalculationMethod = "SLA - EOD", ToTimestamp(ToDate([SLA Start Date]), ToTimeOfDay($DaySevenBHEnd)), [SLA Start Date]);
var Duration DayZeroBHAvailable = If(ToTimeOfDay($DaySevenBHEnd) >= ToTimeOfDay($SLAStartingDate) and ToTimeOfDay($DaySevenBHEnd) <> ToTimeOfDay("23:59"), (ToTimeOfDay($DaySevenBHEnd) - ToTimeOfDay($SLAStartingDate)), ToTimeOfDay($DaySevenBHEnd) >= ToTimeOfDay($SLAStartingDate), (ToTimeOfDay($DaySevenBHEnd) - ToTimeOfDay($SLAStartingDate)) + Minutes(1), Hours(0));
var Duration DayOneBHAvailable = If(ToTimeOfDay($DayOneBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DayOneBHEnd) - ToTimeOfDay($DayOneBHStart)) + Minutes(1), ToTimeOfDay($DayOneBHEnd) - ToTimeOfDay($DayOneBHStart));
var Duration DayTwoBHAvailable = If(ToTimeOfDay($DayTwoBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DayTwoBHEnd) - ToTimeOfDay($DayTwoBHStart)) + Minutes(1), ToTimeOfDay($DayTwoBHEnd) - ToTimeOfDay($DayTwoBHStart));
var Duration DayThreeBHAvailable = If(ToTimeOfDay($DayThreeBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DayThreeBHEnd) - ToTimeOfDay($DayThreeBHStart)) + Minutes(1), ToTimeOfDay($DayThreeBHEnd) - ToTimeOfDay($DayThreeBHStart));
var Duration DayFourBHAvailable = If(ToTimeOfDay($DayFourBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DayFourBHEnd) - ToTimeOfDay($DayFourBHStart)) + Minutes(1), ToTimeOfDay($DayFourBHEnd) - ToTimeOfDay($DayFourBHStart));
var Duration DayFiveBHAvailable = If(ToTimeOfDay($DayFiveBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DayFiveBHEnd) - ToTimeOfDay($DayFiveBHStart)) + Minutes(1), ToTimeOfDay($DayFiveBHEnd) - ToTimeOfDay($DayFiveBHStart));
var Duration DaySixBHAvailable = If(ToTimeOfDay($DaySixBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DaySixBHEnd) - ToTimeOfDay($DaySixBHStart)) + Minutes(1), ToTimeOfDay($DaySixBHEnd) - ToTimeOfDay($DaySixBHStart));
var Duration DaySevenBHAvailable = If(ToTimeOfDay($DaySevenBHEnd) = ToTimeOfDay("23:59"), (ToTimeOfDay($DaySevenBHEnd) - ToTimeOfDay($DaySevenBHStart)) + Minutes(1), ToTimeOfDay($DaySevenBHEnd) - ToTimeOfDay($DaySevenBHStart));
If(
ToMinutes($SLADuration) <= ToMinutes($DayZeroBHAvailable) and ToMinutes($DayZeroBHAvailable) >= 0,
$SLAStartingDate + Minutes(ToMinutes($SLADuration)),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)),
$SLAStartingDate + Days(1) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DayOneBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable)),
$SLAStartingDate + Days(2) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DayTwoBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable)),
$SLAStartingDate + Days(3) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DayThreeBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable)),
$SLAStartingDate + Days(4) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DayFourBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable)),
$SLAStartingDate + Days(5) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DayFiveBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable)),
$SLAStartingDate + Days(6) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySixBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(7) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(8) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable) + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(9) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable) + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(10) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable) + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(11) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable) + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(12) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable) + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)),
$SLAStartingDate + Days(13) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable) + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(14) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable) + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(15) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*2 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(16) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*2 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(17) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*2 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(18) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*2 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(19) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*2 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*2),
$SLAStartingDate + Days(20) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*2 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(21) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*2 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(22) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*3 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(23) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*3 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(24) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*3 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(25) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*3 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(26) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*3 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*3),
$SLAStartingDate + Days(27) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*3 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(28) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*3 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(29) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*4 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(30) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*4 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(31) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*4 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(32) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*4 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(33) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*4 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*5 + ToMinutes($DaySevenBHAvailable)*4),
$SLAStartingDate + Days(34) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*4 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*5 + ToMinutes($DaySevenBHAvailable)*5),
$SLAStartingDate + Days(35) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*5 + ToMinutes($DaySevenBHAvailable)*4 + (ToMinutes(ToTimeOfDay($SLAStartingDate) - ToTimeOfDay($DaySevenBHStart)))))),
ToMinutes($SLADuration) <= (ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*6 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*5 + ToMinutes($DaySevenBHAvailable)*5),
$SLAStartingDate + Days(36) + Minutes(ToMinutes($SLADuration)-((ToMinutes($DayZeroBHAvailable) + ToMinutes($DayOneBHAvailable)*5 + ToMinutes($DayTwoBHAvailable)*5 + ToMinutes($DayThreeBHAvailable)*5 + ToMinutes($DayFourBHAvailable)*5 + ToMinutes($DayFiveBHAvailable)*5 + ToMinutes($DaySixBHAvailable)*5 + ToMinutes($DaySevenBHAvailable)*5 + (ToMi