A method to align a next generation sequencing read to a reference sequence, comprising steps of: (a) receiving a sequencing read; (b) performing a first alignment of the sequencing read to a reference sequence so as to identify a target sequence within the reference sequence whereto the sequencing read maps; (c) identifying a target sequence within the reference sequence whereto the sequencing read maps; (d) generating a first anchor sequence and a second anchor sequence, wherein each does not match to any part of the target sequence, wherein the length of the first or the second anchor sequence is at least 4 nucleotides and is directly proportional to a proportion of matching bases in the respective anchor sequence and bases between the variant and an end of the sequencing read; (e) generating an extended sequencing read by attaching the first anchor sequence to the upstream region of the sequencing read and the second anchor sequence to the downstream region of the sequencing read; (f) generating an extended target sequence by attaching the first anchor sequence to the upstream region of the target sequence and the second anchor sequence to the downstream region of the target sequence; (g) performing a second alignment obtained by creating a high score in the alignment of the anchor sequences in the extended sequencing read to the extended target sequence, wherein the sequencing read is forced to align to the correct region of the reference sequence; (h) identifying a position where one or more bases are different between the extended sequencing read and the extended target sequence based on the second alignment result; and (i) calling a corrected variant based on the identification in step (h). (a) receiving a sequencing read; (b) performing a first alignment of the sequencing read to a reference sequence so as to identify a target sequence within the reference sequence whereto the sequencing read maps; (c) identifying a target sequence within the reference sequence whereto the sequencing read maps; (d) generating a first anchor sequence and a second anchor sequence, wherein each does not match to any part of the target sequence, wherein the length of the first or the second anchor sequence is at least 4 nucleotides and is directly proportional to a proportion of matching bases in the respective anchor sequence and bases between the variant and an end of the sequencing read; (e) generating an extended sequencing read by attaching the first anchor sequence to the upstream region of the sequencing read and the second anchor sequence to the downstream region of the sequencing read; (f) generating an extended target sequence by attaching the first anchor sequence to the upstream region of the target sequence and the second anchor sequence to the downstream region of the target sequence; (g) performing a second alignment obtained by creating a high score in the alignment of the anchor sequences in the extended sequencing read to the extended target sequence, wherein the sequencing read is forced to align to the correct region of the reference sequence; (h) identifying a position where one or more bases are different between the extended sequencing read and the extended target sequence based on the second alignment result; and (i) calling a corrected variant based on the identification in step (h).