def witness_update(self, signing_key, url, props, account=None, **kwargs):
    ' Creates/updates a witness\n\n            :param str signing_key: Public signing key\n            :param str url: URL\n            :param dict props: Properties\n            :param str account: (optional) witness account name\n\n            Properties:::\n\n                {\n                    "account_creation_fee": "3.000 CREA",\n                    "maximum_block_size": 65536,\n                    "sbd_interest_rate": 0,\n                }\n\n        '
    if ((not account) and config['default_account']):
        account = config['default_account']
    if (not account):
        raise ValueError('You need to provide an account')
    account = Account(account, crea_instance=self)
    try:
        PublicKey(signing_key, prefix=self.prefix)
    except Exception as e:
        raise e
    if ('account_creation_fee' in props):
        props['account_creation_fee'] = Amount(props['account_creation_fee'], crea_instance=self)
    op = operations.Witness_update(**{'owner': account['name'], 'url': url, 'block_signing_key': signing_key, 'props': props, 'fee': Amount(0, self.crea_symbol, crea_instance=self), 'prefix': self.prefix})
    return self.finalizeOp(op, account, 'active', **kwargs)
Creates/updates a witness

:param str signing_key: Public signing key
:param str url: URL
:param dict props: Properties
:param str account: (optional) witness account name

Properties:::

    {
        "account_creation_fee": "3.000 CREA",
        "maximum_block_size": 65536,
        "sbd_interest_rate": 0,
    }
def witness_update(self, signing_key, url, props, account=None, **kwargs):
    ' Creates/updates a witness\n\n            :param str signing_key: Public signing key\n            :param str url: URL\n            :param dict props: Properties\n            :param str account: (optional) witness account name\n\n            Properties:::\n\n                {\n                    "account_creation_fee": "3.000 CREA",\n                    "maximum_block_size": 65536,\n                    "sbd_interest_rate": 0,\n                }\n\n        '
    if ((not account) and config['default_account']):
        account = config['default_account']
    if (not account):
        raise ValueError('You need to provide an account')
    account = Account(account, crea_instance=self)
    try:
        PublicKey(signing_key, prefix=self.prefix)
    except Exception as e:
        raise e
    if ('account_creation_fee' in props):
        props['account_creation_fee'] = Amount(props['account_creation_fee'], crea_instance=self)
    op = operations.Witness_update(**{'owner': account['name'], 'url': url, 'block_signing_key': signing_key, 'props': props, 'fee': Amount(0, self.crea_symbol, crea_instance=self), 'prefix': self.prefix})
    return self.finalizeOp(op, account, 'active', **kwargs)