$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]);
            }
        ?>