def METHOD_NAME(model_locations):
    tested = 0
    files_tested = 0
    errors = 0
    existing_textures = []
    for f in model_locations:
        model_file = load(f)
        if 'textures' in model_file:
            textures = model_file['textures']
            if isinstance(textures, dict):
                files_tested += 1
                for texture in textures.values():
                    if '#' not in texture:
                        res = utils.resource_location(texture)
                        if res.domain == 'tfc':
                            tested += 1
                            path = ASSETS_PATH + 'tfc/textures/%s.png' % res.path
                            if len(glob(path)) == 0:
                                print('Texture file not found. Name: %s Filepath: %s' % (f, path))
                                errors += 1
                            else:
                                existing_textures.append(path)
    for f in glob(ASSETS_PATH + 'tfc/textures/**/*.png', recursive=True):
        f = f.replace('\\', '/')
        if f not in existing_textures and ('block/' in f or 'item/' in f):
            forgiven = False
            for check in TEXTURE_FORGIVENESS_PATHS:
                if check in f:
                    forgiven = True
            if not forgiven:
                print('Texture not matched to any model file: %s' % f)
                errors += 1
    print('Texture Validation: Verified %s files, %s texture entries, found %s errors' % (files_tested, tested, errors))
    return errors