Forms an adverb from the input adjective, f.ex. "happy" => "happily".
    Adverbs are generated using rules from: http://www.edufind.com/english-grammar/forming-adverbs-adjectives/

    :param adjective: adjective
    :return: adverb form of the input adjective

def form_adverb_from_adjective(adjective):
    """
    Forms an adverb from the input adjective, f.ex. "happy" => "happily".
    Adverbs are generated using rules from: http://www.edufind.com/english-grammar/forming-adverbs-adjectives/

    :param adjective: adjective
    :return: adverb form of the input adjective
    """

    # If the adjective ends in -able, -ible, or -le, replace the -e with -y
    if adjective.endswith("able") or adjective.endswith("ible") or adjective.endswith("le"):
        return adjective[:-1] + "y"

    # If the adjective ends in -y, replace the y with i and add -ly
    elif adjective.endswith("y"):
        return adjective[:-1] + "ily"

    # If the adjective ends in -ic, add -ally
    elif adjective.endswith("ic"):
        return adjective[:-2] + "ally"

    # In most cases, an adverb is formed by adding -ly to an adjective
    return adjective + "ly"