$coord_length) ? strlen($hsp['Hsp_query-to']) + 3 : $coord_length;
      // Now foreach chink determined above...
      foreach (array_keys($query) as $k) {
        // Determine the current coordinates.
        $coord['qstart'] = $hsp['Hsp_query-from'] + ($k * 60);
        $coord['qstart'] = ($k == 0) ? $coord['qstart'] : $coord['qstart'];
        
        // code added to fix the range issue
        // Cordinates can increase or decrease
        if($hsp['Hsp_hit-from'] < $hsp['Hsp_hit-to']) {
            $coord['hstart'] = $hsp['Hsp_hit-from'] + ($k * 60);    
          }
          else {
            $coord['hstart'] = $hsp['Hsp_hit-from'] - ($k * 60);
          }
//          $coord['qstop'] = $hsp['Hsp_query-from'] + (($k + 1) * 60) - 1;
//          $coord['qstop'] = ($coord['qstop'] > $hsp['Hsp_query-to']) ? $hsp['Hsp_query-to'] : $coord['qstop'];
      
          if ($hsp['Hsp_hit-from'] < $hsp['Hsp_hit-to']) {
            $coord['hstop'] = $hsp['Hsp_hit-from'] + (($k + 1) * 60) - 1;
            $coord['hstop'] = ($coord['hstop'] > $hsp['Hsp_hit-to']) ? $hsp['Hsp_hit-to'] : $coord['hstop'];
          
          }
          else {
            $coord['hstop'] = $hsp['Hsp_hit-from'] - (($k + 1) * 60) + 1;
            $coord['hstop'] = ($coord['hstop'] < $hsp['Hsp_hit-to']) ? $hsp['Hsp_hit-to'] : $coord['hstop'];
          }
          
          // Pad these coordinates to ensure columned display.
          foreach ($coord as $ck => $val) {
            $pad_type = (preg_match('/start/', $ck)) ? STR_PAD_LEFT : STR_PAD_RIGHT;
            $coord[$ck] = str_pad($val, $coord_length, '#', $pad_type);
            $coord[$ck] =  str_replace('#', ' ', $coord[$ck]);
          }
      ?>