def METHOD_NAME(top):
    for root, dirs, files in os.walk(top):
        for file in files:
            if FilePatternH.match(file):
                 AnalyzeErrorCodes(os.path.join(root, file))
    ResolveErrors()
    for key in Errors:
        #print key,"==>",Errors[key]
        if (key.find("ERROR_BASE") > 1): continue
        if Codes.has_key(Errors[key]):
            raise Exception("duplicate error code: "+ str(key) +" --> " + str(Errors[key]) + "=" + Codes[Errors[key]])
        Codes[Errors[key]] = key
    sorted_keys = Codes.keys()
    sorted_keys.sort()
    sorted_keys.reverse()
    last = 0
    for code in sorted_keys:
        if type(code) != int:
        	continue
        if code != last-1:
            print 
        print code,"==>", Codes[code]
        last = code