if ($type eq "conditional") {
  $stateall = $stateless0+$stateless1+$stateless2;
  if ($stateall == 0) { #all stateless
    $k = 0; #counter for new subdomains created 
    $jstartT = 0;
    $jstartF = 0; #left-off indices for 2nd component subdomains
    for ($i=0; $i<$range0cnt; $i++) { #intersect subdomains
      $testTrue = $valIntcpt0[$i];
      $foundany = 0;
      if ($testTrue) {  # test is true on this subdomain
        $jstart = $jstartT;
        $jend = $range1cnt;
      } else {
        $jstart = $jstartF;
        $jend = $range1cnt;
      }
      IL: 
      for ($j=$jstart; $j<$jend; $j++) { # find any intersections with the proper component
        if ($testTrue) {
          @int = intersect(($subDleft0[$i],$subDright0[$i]),($subDleft1[$j],$subDright1[$j]));
          $runIntcpt = $runIntcpt1;
          $runSlope = $runSlope1;
          $valIntcpt = $valIntcpt1;
          $valSlope = $valSlope1;
        } else {
          @int = intersect(($subDleft0[$i],$subDright0[$i]),($subDleft2[$j],$subDright2[$j]));
          $runIntcpt = $runIntcpt2;
          $runSlope = $runSlope2;
          $valIntcpt = $valIntcpt2;
          $valSlope = $valSlope2;
        }
#debug
#print "@int \n";
        if (notnull(@int)) { #add to list of new subdomains
#debug
#if ($int[1]-$int[0] < .00001) {print "small intersection [$int[0], $int[1])\n";}
          $foundany = 1;
          $range3[$k] = "$int[0] $int[1] ";
          if ($Rely) { #reliability; just the intercept
            $thtimeSlope[$k] = 0;
            $thtimeIntcpt[$k] = $runIntcpt[$j] * $runIntcpt0[$i];
          } else {
            $thtimeSlope[$k] = $runSlope[$j] + $runSlope0[$i];
            $thtimeIntcpt[$k] = $runIntcpt[$j] + $runIntcpt0[$i];
          }
          $thvalSlope[$k] = $valSlope[$j];
          $thvalIntcpt[$k] = $valIntcpt[$j];
          $range3[$k] = $range3[$k] .dec15::dump15s($thvalSlope[$k]).dec15::dump15s($thvalIntcpt[$k])
             .dec15::dump15s($thtimeSlope[$k]).dec15::dump15s($thtimeIntcpt[$k])."TRUE";
          $k++;
        } else { #null intersection
          if ($foundany) {
            if ($testTrue) {
              $jstartT = $j - 1;  #next time start where one was found
            } else {
              $jstartF = $j - 1;  
            }
            last IL;  #can't be any more this time
          }
        }
      }
    }
    $range3cnt = $k;
  } else { #cases with state
    $stateless3 = 1;
    $limit1 = $insubcount1;
    $limit1 = $range1cnt if ($stateless1);
    $limit2 = $insubcount2;
    $limit2 = $range1cnt if ($stateless2);
    die "Conditional synthesis involving state not yet implemented" if ($stateall < 3);
  }
