@staticmethod
def _select_choice(codon, selection):
    """
        This function, based upon the codon, makes a choice from the list.
        The determination is based upon the module of the codon to the length
        of the list of choices.  For example, if the codon is 10 and the list
        is 7 choices long, then the selection would be from selection[3].  This
        ensures that for every codon for every selection there is some choice.

        """
    if isinstance(selection, list):
        return selection[codon % len(selection)]
    else:
        msg = 'selection. %s, must be a list' % selection
        raise ValueError(msg)
