def append_on_chord(self, on_chord, root):
root_val = note_to_val(root)<EOL>on_chord_val = note_to_val(on_chord) - root_val<EOL>list_ = list(self.components)<EOL>for idx, val in enumerate(list_):<EOL><INDENT>if val % <NUM_LIT:12> == on_chord_val:<EOL><INDENT>self.components.remove(val)<EOL>break<EOL><DEDENT><DEDENT>if on_chord_val > root_val:<EOL><INDENT>on_chord_val -= <NUM_LIT:12><EOL><DEDENT>if on_chord_val not in self.components:<EOL><INDENT>self.components.insert(<NUM_LIT:0>, on_chord_val)<EOL><DEDENT>
Append on chord

        To create Am7/G
        q = Quality('m7')
        q.append_on_chord('G', root='A')

        :param str on_chord: bass note of the chord
        :param str root: root note of the chord