def __init__(self, user_name, password, domain_name, challenge_message,<EOL>ntlm_compatibility):
self._user_name = user_name<EOL>self._password = password<EOL>self._domain_name = domain_name<EOL>self._challenge_message = challenge_message<EOL>self._negotiate_flags = challenge_message.negotiate_flags<EOL>self._server_challenge = challenge_message.server_challenge<EOL>self._server_target_info = challenge_message.target_info<EOL>self._ntlm_compatibility = ntlm_compatibility<EOL>self._client_challenge = os.urandom(<NUM_LIT:8>)<EOL>
Constructor for the response computations. This class will compute the
various nt and lm challenge responses.

:param user_name: The user name of the user we are trying to
    authenticate with
:param password: The password of the user we are trying to authenticate
    with
:param domain_name: The domain name of the user account we are
    authenticated with, default is None
:param challenge_message: A ChallengeMessage object that was received
    from the server after the negotiate_message
:param ntlm_compatibility: The Lan Manager Compatibility Level, used to
    determine what NTLM auth version to use, see Ntlm in ntlm.py for
    more details