async def expn(
        self, address: str, timeout: DefaultNumType = _default
    ) -> SMTPResponse:
        """
        Send an SMTP EXPN command, which expands a mailing list.
        Not many servers support this command.

        :raises SMTPResponseException: on unexpected server response code
        """
        await self._ehlo_or_helo_if_needed()

        parsed_address = parse_address(address)

        async with self._command_lock:
            response = await self.execute_command(
                b"EXPN", parsed_address.encode("ascii"), timeout=timeout
            )

        if response.code != SMTPStatus.completed:
            raise SMTPResponseException(response.code, response.message)

        return response
Send an SMTP EXPN command, which expands a mailing list.
        Not many servers support this command.

        :raises SMTPResponseException: on unexpected server response code