<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_authorization_url(self, client_id=None, instance_id=None, redirect_uri=None, region=None, scope=None, state=None):
 """Generate authorization URL. Args: client_id (str):
 OAuth2 client ID. Defaults to ``None``. instance_id (str):
 App Instance ID. Defaults to ``None``. redirect_uri (str):
 Redirect URI. Defaults to ``None``. region (str):
 App Region. Defaults to ``None``. scope (str):
 Permissions. Defaults to ``None``. state (str):
 UUID to detect CSRF. Defaults to ``None``. Returns: str, str: Auth URL, state """

        client_id = client_id or self.client_id
        instance_id = instance_id or self.instance_id
        redirect_uri = redirect_uri or self.redirect_uri
        region = region or self.region
        scope = scope or self.scope
        state = state or str(uuid.uuid4())
        self.state = state
        return Request(
            'GET',
            self.auth_base_url,
            params={
                'client_id': client_id,
                'instance_id': instance_id,
                'redirect_uri': redirect_uri,
                'region': region,
                'response_type': 'code',
                'scope': scope,
                'state': state
            }
        ).prepare().url, state