             //int16_t ls = __shfl_sync(0xffffffff, score3, 31);
             if (thread_idx == 31)
             {
-                first_element_prev_score[0] = score3;
-                //first_element_prev_score[1] = score3;
+                first_element_prev_score = score3;
             }
 
             //if (thread_idx == 0)

                    i = idx;
                }
            }
            //if (read_count == 496)
            //{
            //    for(uint16_t a = 0; a <= CUDAPOA_MAX_SEQUENCE_SIZE; a += 128)
            //    {
            //        printf("%d ", scores[idx * CUDAPOA_MAX_SEQUENCE_SIZE + a]);
            //    }
            //    printf("\n");
            //}
        }

        // Fill in backtrace


    //__shared__ int16_t score_i[1024];
    //__shared__ int16_t score_prev_i[1024];
    __shared__ int16_t first_element_prev_score;

    uint32_t thread_idx = threadIdx.x;

