What types of elements make up nucleic acids?