def add_flanking_seqs(self, ref_seq, new_start, new_end):
        '''Adds new_start many nucleotides at the start, and new_end many nucleotides
        at the end from the appropriate nucleotides in reference sequence ref_seq.'''
        if new_start > self.POS or new_end < self.ref_end_pos():
            raise Error('new start and end positions must not try to shrink VCF record. new_start=' + str(new_start) + ', new_end=' + str(new_end) + '. VCF=' + str(self))

        new_start_nucleotides = ref_seq[new_start:self.POS]
        new_end_nucleotodes = ref_seq[self.ref_end_pos() + 1:new_end + 1]
        self.POS = new_start
        self.REF = new_start_nucleotides + self.REF + new_end_nucleotodes
        self.ALT = [new_start_nucleotides + x + new_end_nucleotodes for x in self.ALT]
Adds new_start many nucleotides at the start, and new_end many nucleotides
        at the end from the appropriate nucleotides in reference sequence ref_seq.