human
Complete the below
def main():

    ''''Main function.'
    '''
assistant
#Here is the Python code you requested.
    args = docopt(__doc__, version='Mackup    {}'.format(VERSION))
    mckp = Mackup()
    app_db = ApplicationsDatabase()
    def printAppHeader(app_name):
        if verbose:
            print '\n{0}    {1}    {0}'.format(header('---'), bold(app_name))
    if args['--force']:
        utils.FORCE_YES = True
    dry_run = args['--dry-run']
    verbose = args['--verbose']
    if args['backup']:
        mckp.check_for_usable_backup_env()
        for app_name in sorted(mckp.get_apps_to_backup()):
            app = ApplicationProfile(mckp, app_db.get_files(app_name), dry_run, verbose)
            printAppHeader(app_name)
            app.backup()
    elif args['restore']:
        mckp.check_for_usable_restore_env()
        mackup_app = ApplicationProfile(mckp, app_db.get_files(MACKUP_APP_NAME), dry_run, verbose)
        printAppHeader(MACKUP_APP_NAME)
        mackup_app.restore()
        mckp = Mackup()
        app_db = ApplicationsDatabase()
        app_names = mckp.get_apps_to_backup()
        app_names.discard(MACKUP_APP_NAME)
        for app_name in sorted(app_names):
            app = ApplicationProfile(mckp, app_db.get_files(app_name), dry_run, verbose)
            printAppHeader(app_name)
            app.restore()
    elif args['uninstall']:
        mckp.check_for_usable_restore_env()
        if (dry_run or utils.confirm('You    are    going    to    uninstall    Mackup.\nEvery    configuration    file,    setting    and    dotfile    managed    by    Mackup    will    be    unlinked    and    moved    back    to    their    original    place,    in    your    home    folder.\nAre    you    sure    ?')):
            app_names = mckp.get_apps_to_backup()
            app_names.discard(MACKUP_APP_NAME)
            for app_name in sorted(app_names):
                app = ApplicationProfile(mckp, app_db.get_files(app_name), dry_run, verbose)
                printAppHeader(app_name)
                app.uninstall()
            mackup_app = ApplicationProfile(mckp, app_db.get_files(MACKUP_APP_NAME), dry_run,...