struct RecognizedCommand { char const* text; myirc::IrcCommand command; std::size_t min_args; std::size_t max_args; }; %% 001, myirc::IrcCommand::RPL_WELCOME, 2, 2 002, myirc::IrcCommand::RPL_YOURHOST, 2, 2 003, myirc::IrcCommand::RPL_CREATED, 2, 2 004, myirc::IrcCommand::RPL_MYINFO, 5, 6 005, myirc::IrcCommand::RPL_ISUPPORT, 2, 15 008, myirc::IrcCommand::RPL_SNOMASK, 3, 3 010, myirc::IrcCommand::RPL_REDIR, 4, 4 015, myirc::IrcCommand::RPL_MAP, 2, 2 017, myirc::IrcCommand::RPL_MAPEND, 2, 2 043, myirc::IrcCommand::RPL_SAVENICK, 3, 3 200, myirc::IrcCommand::RPL_TRACELINK, 5, 5 201, myirc::IrcCommand::RPL_TRACECONNECTING, 4, 4 202, myirc::IrcCommand::RPL_TRACEHANDSHAKE, 4, 4 203, myirc::IrcCommand::RPL_TRACEUNKNOWN, 6, 6 204, myirc::IrcCommand::RPL_TRACEOPERATOR, 7, 7 205, myirc::IrcCommand::RPL_TRACEUSER, 7, 7 206, myirc::IrcCommand::RPL_TRACESERVER, 8, 8 208, myirc::IrcCommand::RPL_TRACENEWTYPE, 4, 4 209, myirc::IrcCommand::RPL_TRACECLASS, 4, 4 211, myirc::IrcCommand::RPL_STATSLINKINFO 212, myirc::IrcCommand::RPL_STATSCOMMANDS, 5, 5 213, myirc::IrcCommand::RPL_STATSCLINE, 8, 8 214, myirc::IrcCommand::RPL_STATSNLINE 215, myirc::IrcCommand::RPL_STATSILINE, 8, 8 216, myirc::IrcCommand::RPL_STATSKLINE, 6, 6 217, myirc::IrcCommand::RPL_STATSQLINE, 5, 5 218, myirc::IrcCommand::RPL_STATSYLINE, 10, 10 219, myirc::IrcCommand::RPL_ENDOFSTATS, 3, 3 220, myirc::IrcCommand::RPL_STATSPLINE, 6, 6 221, myirc::IrcCommand::RPL_UMODEIS, 2, 2 224, myirc::IrcCommand::RPL_STATSFLINE 225, myirc::IrcCommand::RPL_STATSDLINE, 4, 4 234, myirc::IrcCommand::RPL_SERVLIST 235, myirc::IrcCommand::RPL_SERVLISTEND 241, myirc::IrcCommand::RPL_STATSLLINE, 7, 7 242, myirc::IrcCommand::RPL_STATSUPTIME, 2, 2 243, myirc::IrcCommand::RPL_STATSOLINE, 7, 7 244, myirc::IrcCommand::RPL_STATSHLINE, 7, 7 245, myirc::IrcCommand::RPL_STATSSLINE 247, myirc::IrcCommand::RPL_STATSXLINE, 5, 5 248, myirc::IrcCommand::RPL_STATSULINE, 5, 5 249, myirc::IrcCommand::RPL_STATSDEBUG, 3, 3 250, myirc::IrcCommand::RPL_STATSCONN, 2, 2 251, myirc::IrcCommand::RPL_LUSERCLIENT, 2, 2 252, myirc::IrcCommand::RPL_LUSEROP, 3, 3 253, myirc::IrcCommand::RPL_LUSERUNKNOWN, 3, 3 254, myirc::IrcCommand::RPL_LUSERCHANNELS, 3, 3 255, myirc::IrcCommand::RPL_LUSERME, 2, 2 256, myirc::IrcCommand::RPL_ADMINME, 3, 3 257, myirc::IrcCommand::RPL_ADMINLOC1, 2, 2 258, myirc::IrcCommand::RPL_ADMINLOC2, 2, 2 259, myirc::IrcCommand::RPL_ADMINEMAIL, 2, 2 261, myirc::IrcCommand::RPL_TRACELOG 262, myirc::IrcCommand::RPL_ENDOFTRACE, 3, 3 263, myirc::IrcCommand::RPL_LOAD2HI, 3, 3 265, myirc::IrcCommand::RPL_LOCALUSERS, 4, 4 266, myirc::IrcCommand::RPL_GLOBALUSERS, 4, 4 270, myirc::IrcCommand::RPL_PRIVS, 3, 3 276, myirc::IrcCommand::RPL_WHOISCERTFP, 3, 3 281, myirc::IrcCommand::RPL_ACCEPTLIST, 1, 15 282, myirc::IrcCommand::RPL_ENDOFACCEPT, 2, 2 300, myirc::IrcCommand::RPL_NONE 301, myirc::IrcCommand::RPL_AWAY, 3, 3 302, myirc::IrcCommand::RPL_USERHOST, 2, 2 303, myirc::IrcCommand::RPL_ISON, 2, 2 304, myirc::IrcCommand::RPL_TEXT 305, myirc::IrcCommand::RPL_UNAWAY, 2, 2 306, myirc::IrcCommand::RPL_NOWAWAY, 2, 2 310, myirc::IrcCommand::RPL_WHOISHELPOP, 3, 3 311, myirc::IrcCommand::RPL_WHOISUSER, 6, 6 312, myirc::IrcCommand::RPL_WHOISSERVER, 4, 4 313, myirc::IrcCommand::RPL_WHOISOPERATOR, 3, 3 314, myirc::IrcCommand::RPL_WHOWASUSER, 6, 6 369, myirc::IrcCommand::RPL_ENDOFWHOWAS, 3, 3 316, myirc::IrcCommand::RPL_WHOISCHANOP 317, myirc::IrcCommand::RPL_WHOISIDLE, 5, 5 318, myirc::IrcCommand::RPL_ENDOFWHOIS, 3, 3 319, myirc::IrcCommand::RPL_WHOISCHANNELS, 3, 3 320, myirc::IrcCommand::RPL_WHOISSPECIAL, 3, 3 321, myirc::IrcCommand::RPL_LISTSTART, 3, 3 322, myirc::IrcCommand::RPL_LIST, 4, 4 323, myirc::IrcCommand::RPL_LISTEND, 2, 2 324, myirc::IrcCommand::RPL_CHANNELMODEIS, 3, 3 325, myirc::IrcCommand::RPL_CHANNELMLOCK, 4, 4 328, myirc::IrcCommand::RPL_CHANNELURL 329, myirc::IrcCommand::RPL_CREATIONTIME, 3, 3 330, myirc::IrcCommand::RPL_WHOISLOGGEDIN, 4, 4 331, myirc::IrcCommand::RPL_NOTOPIC, 3, 3 332, myirc::IrcCommand::RPL_TOPIC, 3, 3 333, myirc::IrcCommand::RPL_TOPICWHOTIME, 4, 4 338, myirc::IrcCommand::RPL_WHOISACTUALLY, 4, 4 341, myirc::IrcCommand::RPL_INVITING, 3, 3 342, myirc::IrcCommand::RPL_SUMMONING 346, myirc::IrcCommand::RPL_INVITELIST, 5, 5 347, myirc::IrcCommand::RPL_ENDOFINVITELIST, 3, 3 348, myirc::IrcCommand::RPL_EXCEPTLIST, 5, 5 349, myirc::IrcCommand::RPL_ENDOFEXCEPTLIST, 3, 3 351, myirc::IrcCommand::RPL_VERSION, 4, 4 352, myirc::IrcCommand::RPL_WHOREPLY, 8, 8 354, myirc::IrcCommand::RPL_WHOSPCRPL 315, myirc::IrcCommand::RPL_ENDOFWHO, 3, 3 353, myirc::IrcCommand::RPL_NAMREPLY, 4, 4 360, myirc::IrcCommand::RPL_WHOWASREAL, 3, 3 366, myirc::IrcCommand::RPL_ENDOFNAMES, 3, 3 361, myirc::IrcCommand::RPL_KILLDONE 362, myirc::IrcCommand::RPL_CLOSING, 3, 3 363, myirc::IrcCommand::RPL_CLOSEEND, 3, 3 364, myirc::IrcCommand::RPL_LINKS, 4, 4 365, myirc::IrcCommand::RPL_ENDOFLINKS, 3, 3 367, myirc::IrcCommand::RPL_BANLIST, 5, 5 368, myirc::IrcCommand::RPL_ENDOFBANLIST, 3, 3 371, myirc::IrcCommand::RPL_INFO, 2, 2 372, myirc::IrcCommand::RPL_MOTD, 2, 2 373, myirc::IrcCommand::RPL_INFOSTART 374, myirc::IrcCommand::RPL_ENDOFINFO, 2, 2 375, myirc::IrcCommand::RPL_MOTDSTART, 2, 2 376, myirc::IrcCommand::RPL_ENDOFMOTD, 2, 2 378, myirc::IrcCommand::RPL_WHOISHOST, 3, 3 381, myirc::IrcCommand::RPL_YOUREOPER, 2, 2 382, myirc::IrcCommand::RPL_REHASHING, 3, 3 384, myirc::IrcCommand::RPL_MYPORTIS 385, myirc::IrcCommand::RPL_NOTOPERANYMORE 386, myirc::IrcCommand::RPL_RSACHALLENGE, 2, 2 391, myirc::IrcCommand::RPL_TIME, 3, 3 392, myirc::IrcCommand::RPL_USERSSTART 393, myirc::IrcCommand::RPL_USERS 394, myirc::IrcCommand::RPL_ENDOFUSERS 395, myirc::IrcCommand::RPL_NOUSERS 396, myirc::IrcCommand::RPL_HOSTHIDDEN 401, myirc::IrcCommand::ERR_NOSUCHNICK, 3, 3 402, myirc::IrcCommand::ERR_NOSUCHSERVER, 3, 3 403, myirc::IrcCommand::ERR_NOSUCHCHANNEL, 3, 3 404, myirc::IrcCommand::ERR_CANNOTSENDTOCHAN, 3, 3 405, myirc::IrcCommand::ERR_TOOMANYCHANNELS, 3, 3 406, myirc::IrcCommand::ERR_WASNOSUCHNICK, 3, 3 407, myirc::IrcCommand::ERR_TOOMANYTARGETS, 3, 3 409, myirc::IrcCommand::ERR_NOORIGIN, 2, 2 410, myirc::IrcCommand::ERR_INVALIDCAPCMD, 3, 3 411, myirc::IrcCommand::ERR_NORECIPIENT, 2, 2 412, myirc::IrcCommand::ERR_NOTEXTTOSEND, 2, 2 413, myirc::IrcCommand::ERR_NOTOPLEVEL, 3, 3 414, myirc::IrcCommand::ERR_WILDTOPLEVEL, 3, 3 415, myirc::IrcCommand::ERR_MSGNEEDREGGEDNICK, 3, 3 416, myirc::IrcCommand::ERR_TOOMANYMATCHES, 3, 3 421, myirc::IrcCommand::ERR_UNKNOWNCOMMAND, 3, 3 422, myirc::IrcCommand::ERR_NOMOTD, 2, 2 423, myirc::IrcCommand::ERR_NOADMININFO 424, myirc::IrcCommand::ERR_FILEERROR 431, myirc::IrcCommand::ERR_NONICKNAMEGIVEN, 2, 2 432, myirc::IrcCommand::ERR_ERRONEUSNICKNAME, 3, 3 433, myirc::IrcCommand::ERR_NICKNAMEINUSE, 3, 3 435, myirc::IrcCommand::ERR_BANNICKCHANGE, 3, 3 436, myirc::IrcCommand::ERR_NICKCOLLISION, 3, 3 437, myirc::IrcCommand::ERR_UNAVAILRESOURCE, 3, 3 438, myirc::IrcCommand::ERR_NICKTOOFAST, 4, 4 440, myirc::IrcCommand::ERR_SERVICESDOWN, 3, 3 441, myirc::IrcCommand::ERR_USERNOTINCHANNEL, 4, 4 442, myirc::IrcCommand::ERR_NOTONCHANNEL, 3, 3 443, myirc::IrcCommand::ERR_USERONCHANNEL, 4, 4 444, myirc::IrcCommand::ERR_NOLOGIN 445, myirc::IrcCommand::ERR_SUMMONDISABLED 446, myirc::IrcCommand::ERR_USERSDISABLED 451, myirc::IrcCommand::ERR_NOTREGISTERED, 2, 2 456, myirc::IrcCommand::ERR_ACCEPTFULL, 2, 2 457, myirc::IrcCommand::ERR_ACCEPTEXIST, 3, 3 458, myirc::IrcCommand::ERR_ACCEPTNOT, 3, 3 461, myirc::IrcCommand::ERR_NEEDMOREPARAMS, 3, 3 462, myirc::IrcCommand::ERR_ALREADYREGISTRED, 2, 2 463, myirc::IrcCommand::ERR_NOPERMFORHOST 464, myirc::IrcCommand::ERR_PASSWDMISMATCH, 2, 2 465, myirc::IrcCommand::ERR_YOUREBANNEDCREEP, 2, 2 466, myirc::IrcCommand::ERR_YOUWILLBEBANNED 467, myirc::IrcCommand::ERR_KEYSET 470, myirc::IrcCommand::ERR_LINKCHANNEL, 4, 4 471, myirc::IrcCommand::ERR_CHANNELISFULL, 3, 3 472, myirc::IrcCommand::ERR_UNKNOWNMODE, 3, 3 473, myirc::IrcCommand::ERR_INVITEONLYCHAN, 3, 3 474, myirc::IrcCommand::ERR_BANNEDFROMCHAN, 3, 3 475, myirc::IrcCommand::ERR_BADCHANNELKEY, 3, 3 476, myirc::IrcCommand::ERR_BADCHANMASK 477, myirc::IrcCommand::ERR_NEEDREGGEDNICK, 3, 3 478, myirc::IrcCommand::ERR_BANLISTFULL, 4, 4 479, myirc::IrcCommand::ERR_BADCHANNAME, 3, 3 480, myirc::IrcCommand::ERR_THROTTLE, 3, 3 481, myirc::IrcCommand::ERR_NOPRIVILEGES, 2, 2 482, myirc::IrcCommand::ERR_CHANOPRIVSNEEDED, 3, 3 483, myirc::IrcCommand::ERR_CANTKILLSERVER, 2, 2 484, myirc::IrcCommand::ERR_ISCHANSERVICE, 4, 4 485, myirc::IrcCommand::ERR_BANNEDNICK 486, myirc::IrcCommand::ERR_NONONREG, 3, 3 489, myirc::IrcCommand::ERR_VOICENEEDED, 3, 3 491, myirc::IrcCommand::ERR_NOOPERHOST, 2, 2 492, myirc::IrcCommand::ERR_CANNOTSENDTOUSER, 2, 2 494, myirc::IrcCommand::ERR_OWNMODE, 3, 3 501, myirc::IrcCommand::ERR_UMODEUNKNOWNFLAG, 2, 2 502, myirc::IrcCommand::ERR_USERSDONTMATCH, 2, 2 503, myirc::IrcCommand::ERR_GHOSTEDCLIENT 504, myirc::IrcCommand::ERR_USERNOTONSERV, 3, 3 513, myirc::IrcCommand::ERR_WRONGPONG, 2, 2 517, myirc::IrcCommand::ERR_DISABLED, 3, 3 524, myirc::IrcCommand::ERR_HELPNOTFOUND, 3, 3 670, myirc::IrcCommand::RPL_STARTTLS, 2, 2 671, myirc::IrcCommand::RPL_WHOISSECURE, 3, 3 691, myirc::IrcCommand::ERR_STARTTLS, 2, 2 702, myirc::IrcCommand::RPL_MODLIST, 5, 5 703, myirc::IrcCommand::RPL_ENDOFMODLIST, 2, 2 704, myirc::IrcCommand::RPL_HELPSTART, 3, 3 705, myirc::IrcCommand::RPL_HELPTXT, 3, 3 706, myirc::IrcCommand::RPL_ENDOFHELP, 3, 3 707, myirc::IrcCommand::ERR_TARGCHANGE, 3, 3 708, myirc::IrcCommand::RPL_ETRACEFULL, 10, 10 709, myirc::IrcCommand::RPL_ETRACE, 8, 8 710, myirc::IrcCommand::RPL_KNOCK, 4, 4 711, myirc::IrcCommand::RPL_KNOCKDLVR, 3, 3 712, myirc::IrcCommand::ERR_TOOMANYKNOCK, 3, 3 713, myirc::IrcCommand::ERR_CHANOPEN, 3, 3 714, myirc::IrcCommand::ERR_KNOCKONCHAN, 3, 3 715, myirc::IrcCommand::ERR_KNOCKDISABLED, 2, 2 716, myirc::IrcCommand::ERR_TARGUMODEG, 3, 3 717, myirc::IrcCommand::RPL_TARGNOTIFY 718, myirc::IrcCommand::RPL_UMODEGMSG, 4, 4 720, myirc::IrcCommand::RPL_OMOTDSTART, 2, 2 721, myirc::IrcCommand::RPL_OMOTD, 2, 2 722, myirc::IrcCommand::RPL_ENDOFOMOTD, 2, 2 723, myirc::IrcCommand::ERR_NOPRIVS, 3, 3 724, myirc::IrcCommand::RPL_TESTMASK 725, myirc::IrcCommand::RPL_TESTLINE, 5, 5 726, myirc::IrcCommand::RPL_NOTESTLINE 727, myirc::IrcCommand::RPL_TESTMASKGECO, 6, 6 728, myirc::IrcCommand::RPL_QUIETLIST, 6, 6 729, myirc::IrcCommand::RPL_ENDOFQUIETLIS, 4, 4 730, myirc::IrcCommand::RPL_MONONLINE, 2, 2 731, myirc::IrcCommand::RPL_MONOFFLINE, 2, 2 732, myirc::IrcCommand::RPL_MONLIST, 2, 2 733, myirc::IrcCommand::RPL_ENDOFMONLIS, 2, 2 734, myirc::IrcCommand::ERR_MONLISTFULL, 4, 4 740, myirc::IrcCommand::RPL_RSACHALLENGE2, 2, 2 741, myirc::IrcCommand::RPL_ENDOFRSACHALLENGE2, 2, 2 742, myirc::IrcCommand::ERR_MLOCKRESTRICTE, 5, 5 743, myirc::IrcCommand::ERR_INVALIDBAN, 5, 5 744, myirc::IrcCommand::ERR_TOPICLOCK 750, myirc::IrcCommand::RPL_SCANMATCHED, 3, 3 751, myirc::IrcCommand::RPL_SCANUMODES, 8, 8 900, myirc::IrcCommand::RPL_LOGGEDIN, 4, 4 901, myirc::IrcCommand::RPL_LOGGEDOUT, 3, 3 902, myirc::IrcCommand::ERR_NICKLOCKED, 2, 2 903, myirc::IrcCommand::RPL_SASLSUCCESS, 2, 2 904, myirc::IrcCommand::ERR_SASLFAIL, 2, 2 905, myirc::IrcCommand::ERR_SASLTOOLONG, 2, 2 906, myirc::IrcCommand::ERR_SASLABORTED, 2, 2 907, myirc::IrcCommand::ERR_SASLALREADY, 2, 2 908, myirc::IrcCommand::RPL_SASLMECHS, 3, 3 ACCOUNT, myirc::IrcCommand::ACCOUNT, 1, 1 AUTHENTICATE, myirc::IrcCommand::AUTHENTICATE, 1, 1 AWAY, myirc::IrcCommand::AWAY, 0, 1 BATCH, myirc::IrcCommand::BATCH BOUNCER, myirc::IrcCommand::BOUNCER CAP, myirc::IrcCommand::CAP, 1, 15 CHGHOST, myirc::IrcCommand::CHGHOST, 2, 2 ERROR, myirc::IrcCommand::ERROR, 1, 1 INVITE, myirc::IrcCommand::INVITE, 2, 2 JOIN, myirc::IrcCommand::JOIN, 1, 3 KICK, myirc::IrcCommand::KICK, 3, 3 KILL, myirc::IrcCommand::KILL, 2, 2 MODE, myirc::IrcCommand::MODE, 2, 15 NICK, myirc::IrcCommand::NICK, 1, 1 NOTICE, myirc::IrcCommand::NOTICE, 2, 2 PART, myirc::IrcCommand::PART, 1, 2 PING, myirc::IrcCommand::PING, 1, 1 PONG, myirc::IrcCommand::PONG, 1, 2 PRIVMSG, myirc::IrcCommand::PRIVMSG, 2, 2 QUIT, myirc::IrcCommand::QUIT, 1, 1 SETNAME, myirc::IrcCommand::SETNAME, 1, 1 TAGMSG, myirc::IrcCommand::TAGMSG, 1, 1 TOPIC, myirc::IrcCommand::TOPIC, 2, 2 WALLOPS, myirc::IrcCommand::WALLOPS, 1, 1