BLAST Algorithm