<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def base_url(self, base_url=None):
 """Return or set `base_url`. Args: base_url (str, optional):
 If set, updates the `base_url`. Otherwise returns current `base_url`. Note: This does not update the `username` attribute. Separately update the username with ``Credentials.username`` or update `base_url` and `username` at the same time with ``Credentials.set``. Example: .. code:: # load credentials saved in previous session # returns current base_url 'https://eschbacher.carto.com/' # updates base_url with new value """

        if base_url:
            # POSTs need to be over HTTPS (e.g., Import API reverts to a GET)
            if urlparse(base_url).scheme != 'https':
                raise ValueError(
		    '`base_url`s need to be over `https`. Update your '
                    '`base_url`.'
		)
            self._base_url = base_url
        else:
            return self._base_url