def irc_MODE(self, prefix, params):
        """User mode message

        Parameters: <nickname>
        *( ( "+" / "-" ) *( "i" / "w" / "o" / "O" / "r" ) )

        """
        try:
            channelOrUser = params[0].decode(self.encoding)
        except __HOLE__:
            self.sendMessage(
                irc.ERR_NOSUCHNICK, params[0],
                ":No such nickname (could not decode your unicode!)")
            return

        if channelOrUser.startswith('#'):
            def ebGroup(err):
                err.trap(ewords.NoSuchGroup)
                self.sendMessage(
                    irc.ERR_NOSUCHCHANNEL, params[0],
                    ":That channel doesn't exist.")
            d = self.realm.lookupGroup(channelOrUser[1:])
            d.addCallbacks(
                self._channelMode,
                ebGroup,
                callbackArgs=tuple(params[1:]))
        else:
            def ebUser(err):
                self.sendMessage(
                    irc.ERR_NOSUCHNICK,
                    ":No such nickname.")

            d = self.realm.lookupUser(channelOrUser)
            d.addCallbacks(
                self._userMode,
                ebUser,
                callbackArgs=tuple(params[1:]))
dataset/ETHPy150Open kuri65536/python-for-android/python-modules/twisted/twisted/words/service.py/IRCUser.irc_MODE