You don\'t need to check against all of those address types... a wildcard match check against the full mask (address type 5, which is nick!ident@host) will catch all banmasks that match you. I\'d also suggest using linebreaks rather than pipes ( | ), they keep multiline code much tidier :) Also, if you use network-specific commands (not all networks have chanserv, and not all networks with chanserv have protect and deprotect), you should specify what network they\'re for.