'Inserts a new rule that assigns the given tag to words with the given affix,
e.g., Morphology.append("RB", "-ly").'

def insert(self, i, tag, affix, cmd=u'hassuf', tagged=None):

    if (affix.startswith(u'-') and affix.endswith(u'-')):
        (affix, cmd) = (affix[(+ 1):(-1)], u'char')
    if affix.startswith(u'-'):
        (affix, cmd) = (affix[(+ 1):0], u'hassuf')
    if affix.endswith(u'-'):
        (affix, cmd) = (affix[(+ 0):(-1)], u'haspref')
    if tagged:
        r = [tagged, affix, (u'f' + cmd.lstrip(u'f')), tag, u'x']
    else:
        r = [affix, cmd.lstrip(u'f'), tag, u'x']
    lazylist.insert(self, i, r)
