     return "LIST"
   invite: (nickname, channel) ->
     return "INVITE #{nickname} #{channel}"
-  kick: (nickname, channel, comment) ->
-    if comment
-      return "KICK #{nickname} #{channel} :#{comment}"
-    return "KICK #{nickname} #{channel}"
+  kick: (channel, nickname, reason) ->
+    if reason
+      return "KICK #{channel} #{nickname} :#{reason}"
+    return "KICK #{channel} #{nickname}"
 
   # 3.3 - Sending messages
   privmsg: (msgtarget, text) ->

      return "MODE #{nickname} #{mode}"
    return "MODE #{nickname}"
  service: (nickname, distribution, type, info) ->
    return "SERVICE #{nickname} * #{distribution} #{type} * #{info}"
  quit: (quitmessage) ->
    if quitmessage
      return "QUIT :#{quitmessage}"
    return "QUIT"
  squit: (server, comment) ->
    return "SQUIT #{server} #{comment}"

  # Section 3.2 - Channel operations
  join: (channel, key) ->
    if keys
      return "JOIN #{channel} #{key}"
    return "JOIN #{channel}"
  part: (channel, reason) ->

      return "STATS #{query}"
    return "STATS"
  links: (servermask, remoteserver) ->
    if remoteserver
      return "LINKS #{remoteserver} #{servermask}"
    if servermask
      return "LINKS #{servermask}"
