def update_account(mongo, username, load_extras=True):
    """ Update Account. 
    
    If load_extras is True, update:
     - followers, followings
     - curation stats
     - withdrawal routers, conversion requests

    """
    a = Account(username)
    account = {
        **typify(a.export(load_extras=load_extras)),
        'account': username,
        'updatedAt': dt.datetime.utcnow(),
    }
    if type(account['json_metadata']) is dict:
        account['json_metadata'] = \
            strip_dot_from_keys(account['json_metadata'])
    if not load_extras:
        account = {'$set': account}
    try:
        mongo.Accounts.update({'name': a.name}, account, upsert=True)
    except WriteError:
        # likely an invalid profile
        account['json_metadata'] = {}
        mongo.Accounts.update({'name': a.name}, account, upsert=True)
        print("Invalidated json_metadata on %s" % a.name)
def update_account(mongo, steem, username, load_extras=True):
    """ Update Account. If load_extras """
    a = Account(username, steem_instance=steem)
    account = {
        **typify(a.export(load_extras=load_extras)),
        'account': username,
        'updatedAt': dt.datetime.utcnow(),
    }
    if not load_extras:
        account = {'$set': account}
    mongo.Accounts.update({'name': a.name}, account, upsert=True)