 
           # TODO: @overload
 
-          if returnValue = /^@return\s+\[(.*?)\](\s+(.*))?/.exec line
+          if returnValue = /^@return\s+\[(.*?)\](\s+(.*))?/i.exec line
             @returnValue =
               type: returnValue[1]
               desc: returnValue[3]
 
-          else if param = /^@param\s+([^ ]*)\s+\[(.*?)\](?:\s+(.*))?/.exec line
+          else if param = /^@param\s+([^ ]*)\s+\[(.*?)\](?:\s+(.*))?/i.exec line
             @params or= []
             @params.push
               type: param[2]
               name: param[1]
               desc: param[3] or ''
 
-          else if param = /^@param\s+\[(.*?)\]\s+([^ ]*)(?:\s+(.*))?/.exec line
+          else if param = /^@param\s+\[(.*?)\]\s+([^ ]*)(?:\s+(.*))?/i.exec line
             @params or= []
             @params.push
               type: param[1]
               name: param[2]
               desc: param[3] or ''
 
-          else if option = /^@option\s+([^ ]*)\s+\[(.*?)\]\s+([^ ]*)(?:\s+(.*))?/.exec line
+          else if option = /^@option\s+([^ ]*)\s+\[(.*?)\]\s+([^ ]*)(?:\s+(.*))?/i.exec line
             @paramsOptions or= {}
             @paramsOptions[option[1]] or= []
 

              name: option[3]
              desc: option[4] or ''

          else if see = /^@see\s+([^\s]*)\s*(.*)?/.exec line
            @see or= []
            @see.push
              reference: see[1]
              label: see[2]

          else if author = /^@author\s+(.*)/.exec line
            @authors or= []
            @authors.push author[1]

          else if copyright = /^@copyright\s+(.*)/.exec line
            @copyright = copyright[1]

          else if note = /^@note\s+(.*)/.exec line
            @notes or= []
            @notes.push note[1]


            @todos or= []
            @todos.push todo[1]

          else if example = /^@example\s+(.*)/i.exec line
            title = example[1]
            code = []

