The attributes element ("element") and isotope ("isotope") define atomic number and mass number, respectively. Elements are selected from a subset of those approved by IUPAC (Figure ). An atom whose element is unknown must have an element attribute equal to None. The isotope attribute is an optional integer value representing an atom's nuclear mass number, defined as the sum of proton and neutron count. Setting the isotope property to None means that the element's isotopic composition equals natural abundance. Otherwise, the lower bound of the value of isotope is one. This lower limit allows for physically nonsensical states such as atoms of negative implied neutron count (e.g., carbon-5). Implementations may reject such atomic states as invalid. The hydrogens attribute sets an atom's mode of hydrogen suppression. Hydrogen suppression replaces an atomic hydrogen of natural isotopic abundance and its associated bond with an integer tally associated with the parent atom. Even so, a suppressed hydrogen and its bond are understood to be present. The high relative abundance and regular bonding of hydrogen atoms makes hydrogen suppression an effective technique for increasing information density. Two mutually-exclusive types of suppressed hydrogen are supported: virtual hydrogen and implicit hydrogen.