def prov_deps(obj: CWLObjectType, document_loader: Loader, uri: str, basedir: Optional[str]=None) -> CWLObjectType:
    deps = find_deps(obj, document_loader, uri, basedir=basedir)

    def remove_non_cwl(deps: CWLObjectType) -> None:
        if ('secondaryFiles' in deps):
            sec_files = cast(List[CWLObjectType], deps['secondaryFiles'])
            for (index, entry) in enumerate(sec_files):
                if (not (('format' in entry) and (entry['format'] == CWL_IANA))):
                    del sec_files[index]
                else:
                    remove_non_cwl(entry)
    remove_non_cwl(deps)
    return deps
def prov_deps(obj: CWLObjectType, document_loader: Loader, uri: str, basedir: Optional[str]=None) -> CWLObjectType:
    deps = find_deps(obj, document_loader, uri, basedir=basedir)

    def remove_non_cwl(deps: CWLObjectType) -> None:
        if ('secondaryFiles' in deps):
            sec_files = cast(List[CWLObjectType], deps['secondaryFiles'])
            for (index, entry) in enumerate(sec_files):
                if (not (('format' in entry) and (entry['format'] == CWL_IANA))):
                    del sec_files[index]
                else:
                    remove_non_cwl(entry)
    remove_non_cwl(deps)
    return deps