cigar = ka_global_core(s_ref, l_ref, s_read, c->l_qseq, &par, &score, &n_cigar);
if (score <= 0) { // realignment failed
free(cigar); free(s_ref); free(s_read);
cigar = ka_global_core(s_ref, l_ref, s_read, c->l_qseq, &par, &score, &n_cigar);
if (score <= 0) { // realignment failed
free(cigar); free(s_ref); free(s_read);