       )
 
   parse: (txt=txt) =>
-    ##console.log ('PARSED')
+    #console.log ('PARSED')
     lineA = txt.split "\n"
     myGateKeeper = undefined
     currUserAgentGroup = false
     groupGroupsA = []
-
-    #dirty function, wordk
-    #copyrules = (groupname) ->
-    #  myGateKeeper.groups[groupname].rules = currUserAgentGroup.rules;
-    #  #console.log 'groupname '+groupname
 
     evaluate = (line, nr) =>
       line = _.trim line
       unless _(line).startsWith('#')
         unless line == ''
           #kvA = line.split ":"
-          # get rid of anythiny behind an #
 
           doublepoint=line.indexOf(':')
           if _(line).includes('#')
+	    # get rid of anything behind an #
             kvA = [line.substr(0,doublepoint), line.substr(doublepoint+1,line.indexOf('#')-(doublepoint+1))];
           else
             kvA = [line.substr(0,doublepoint), line.substr(doublepoint+1)];

#http://code.google.com/web/controlcrawlindex/docs/robots_txt.html
EventEmitter = require('events').EventEmitter
parseUri = require './lib/parseuri.js'
_ =  require "underscore"
_.mixin require 'underscore.string'
#helper functions
##console.log 'HHHHHHHHHHHHHEEEEEEEEEEEEEEELLLLLLLLLLLLOOOOOOOOOOO'
#a special escape function
#special as is does not escape *
RegExp.specialEscape = (str) ->

              @emit "crawled", txt
              @parse txt
            null
        else
            @emit "error", new Error 'invalid status code - is: HTTP '+res.statusCode+' - should: HTTP 200'
    #set the headers
