How does a frameshift mutation differ from a base pair substitution? 
a. It involves the insertion or deletion of nucleotides, shifting the reading frame. 
b. It changes a single nucleotide within the codon 
c. It replaces one purine with another purine 
d. It results in a silent mutation