def __init__(self, subdomain, username, password, ssl=False, currentUser=None):
self.base_url = "<STR_LIT>" % ("<STR_LIT:s>" if ssl else "<STR_LIT>", subdomain)<EOL>self._settings = {<EOL>"<STR_LIT>": subdomain,<EOL>"<STR_LIT:username>": username,<EOL>"<STR_LIT:password>": password,<EOL>"<STR_LIT>": ssl<EOL>}<EOL>self._user = currentUser<EOL>self._users = {}<EOL>self._rooms = {}<EOL>if not self._user:<EOL><INDENT>_connection = Connection(url="<STR_LIT>" % self.base_url, user=username, password=password)<EOL>user = _connection.get(key="<STR_LIT:user>")<EOL><DEDENT>self._connection = Connection(<EOL>base_url=self.base_url, <EOL>user=self._user.token if self._user else user["<STR_LIT>"], <EOL>password="<STR_LIT:x>"<EOL>)<EOL>if self._user:<EOL><INDENT>self._user.set_connection(self._connection)<EOL><DEDENT>else:<EOL><INDENT>self._user = User(self, user["<STR_LIT:id>"], current=True)<EOL>self._user.token = user["<STR_LIT>"]<EOL><DEDENT>
Initialize.

        Args:
            subdomain (str): Campfire subdomain
            username (str): User
            password (str): pasword

        Kwargs:
            ssl (bool): enabled status of SSL
            currentUser (:class:`User`): If specified, don't auto load current user, use this one instead