def whowas(self, nick):
        """
        Runs a WHOWAS on someone.
        Required arguments:
        * nick - Nick to run a WHOWAS on.
        Returns a list:
           [0] The user's nick.
           [1] The user's ident.
           [2] The user's host.
           [3] The user's real name.
        """
        with self.lock:
            self.send('WHOWAS %s' % nick)

            rwhowas = []
            while self.readable():
                msg = self._recv(expected_replies=('314', '312', '369'))
                if msg[0] == '314':
                    raw_whowas = msg[2].split()
                    rwhowas = raw_whowas[0], raw_whowas[1], \
                        raw_whowas[2], raw_whowas[4][1:]
                elif msg[0] == '312':
                    pass
                elif msg[0] == '369':
                    return rwhowas
Runs a WHOWAS on someone.
        Required arguments:
        * nick - Nick to run a WHOWAS on.
        Returns a list:
           [0] The user's nick.
           [1] The user's ident.
           [2] The user's host.
           [3] The user's real name.