 +}
 +
 +static void md_blkrd_free2(blkrd_free_list2_t *l2){
-+  blkrd_free_list_t * lists[2] = { l2->blkrd_free_list1, l2->blkrd_free_list2 };
++  blkrd_free_list_t * p, *next;
++  p = l2->blkrd_free_list2;
++  while(p){
++    next = p->next;
++    md_free(((blkrd_t*)p)->line_pos, sizeof(line_pos_t)+sizeof(((blkrd_t*)p)->line_pos->pos[0])*DEFAULT_N_LINES, mem_blkrdAlloc);
++    md_free(p, sizeof(blkrd_t), mem_blkrdAlloc);
++    p = next;
++  }
 +  int i;
-+  for (i=0; i<2; i++) {
-+    blkrd_free_list_t * p, *next;
-+    p = lists[i];
++  for(i=0; i<n_block_reader; i++) {
++    p = l2->blkrd_free_list1[i];
 +    while(p){
 +      next = p->next;
 +      md_free(((blkrd_t*)p)->line_pos, sizeof(line_pos_t)+sizeof(((blkrd_t*)p)->line_pos->pos[0])*DEFAULT_N_LINES, mem_blkrdAlloc);

+      char * const start = q2->block;
+      char * const end = q2->block + q2->block_len;
+      line_pos_t * line_pos = q2->line_pos;
+
+      // find new line chars
+      for(p=start; p < end; ) {

+    qname_hash_bucket = md_malloc(sizeof(*qname_hash_bucket)*QNAME_HASH_SIZE, mem_bamGetQnameId1, 1);
+}
+PROFILE_MEM_INIT();
+fprintf(stderr, "(I) sam-to-bam $Rev: 84 $\n");
+#if !defined(DEBUG_POS)
+fprintf(stderr, "(I) **** built with no DEBUG_POS feature\n");
+#endif
