Prosecution Insights
Last updated: August 17, 2026
Application No. 18/741,995

FILE DEEP COMPARE TOOL REALIZATION

Non-Final OA §101§103
Filed
Jun 13, 2024
Priority
Feb 28, 2024 — CN 202410223579.1
Examiner
UPADHYAYA, JAMIE ALEXANDER
Art Unit
4100
Tech Center
4100
Assignee
Dell Products L.P.
OA Round
1 (Non-Final)
Grant Probability
Favorable
1-2
OA Rounds

Examiner Intelligence

Grants only 0% of cases
0%
Career Allowance Rate
0 granted / 0 resolved
-60.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
Avg Prosecution
2 currently pending
Career history
2
Total Applications
across all art units

Statute-Specific Performance

§103
100.0%
+60.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 0 resolved cases

Office Action

§101 §103
DETAILED ACTION This action is in response to the application filed on 6/13/2024. Claims 1-20 are pending. Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Priority Receipt is acknowledged of certified copies of papers required by 37 CFR 1.55. Specification The disclosure is objected to because of the following informalities: 'file deep compare system' and 'deep file compare system' are used interchangeably and should be made consistent with terminology used in claims. Appropriate correction is required. Claim Objections Claim 14 objected to because of the following informalities: 'at least on' should read 'at least one'. Appropriate correction is required. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Regarding claim 1, the limitations “generating [] human readable files from binary files, wherein the plurality of files comprises the binary files” and “determining [] the subset of changed files within the plurality of files, using the human readable files” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. The limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, this limitation recites and falls within the “Mental Processes” grouping of abstract ideas under Prong 1. Under Prong 2, this judicial exception is not integrated into a practical application. The additional elements “by a deep file compare system” and “wherein the method is performed by at least one processing device comprising a processor coupled to a memory.” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components. See MPEP 2106.05(f). The additional elements “receiving a plurality of files and a request to generate a patch installation package incorporating a subset of changed files for installation, wherein the plurality of files comprises the subset of changed files and a subset of unchanged files;” and “outputting [] the subset of changed files for generation of the patch installation package incorporating the subset of changed files [].” do nothing more than add insignificant extra solution activity to the judicial exception of merely receiving and outputting data/information. See MPEP 2106.05(g). Accordingly, the additional elements do not integrate the recited judicial exception into a practical application and the claim is therefore directed to the judicial exception. Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of “by a deep file compare system” and “wherein the method is performed by at least one processing device comprising a processor coupled to a memory.” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, and as for the limitations “receiving a plurality of files and a request to generate a patch installation package incorporating a subset of changed files for installation, wherein the plurality of files comprises the subset of changed files and a subset of unchanged files;” and “outputting [] the subset of changed files for generation of the patch installation package incorporating the subset of changed files [].” the courts have identified merely transmitting and displaying data/information is well-understood, routine and conventional activity. See MPEP 2106.05(d). The recitation of generic computer instruction and computer components to apply the judicial exception, and merely transmitting and displaying data do not amount to significantly more, thus, cannot provide an inventive concept. Accordingly, the claims are not patent eligible under 35 USC 101. Regarding claim 2, the limitation “stripping binary files to assembly level data to generate the human readable files.” recites an additional mental process. Under Step 2A prong 2, the limitation contains no additional elements to consider integration into a practical application nor under Step 2B having an inventive concept. Regarding claim 3, the limitation “removing symbol tables and debugging information from the binary files.” recites an additional mental process. Under Step 2A prong 2, the limitation contains no additional elements to consider integration into a practical application nor under Step 2B having an inventive concept. Regarding claim 4, the limitation “parsing binary data section structures of the binary files to create parsed binary files;” and “and applying filter rules to the parsed binary files to identify changed binary files” recites additional mental processes. Under Step 2A prong 2, the limitation contains no additional elements to consider integration into a practical application nor under Step 2B having an inventive concept. Regarding claim 5, the limitation “performing an assembly language level comparison to identify at least one unchanged file in the plurality of files.” recites an additional mental process. Under Step 2A prong 2, the limitation contains no additional elements to consider integration into a practical application nor under Step 2B having an inventive concept. Regarding claim 6, the limitation, “classifying the plurality of files into a plurality of file types, wherein the plurality of file types comprises at least general file type, binary file type, compressed file type, and symlink file type.” recites an additional mental process. Under Step 2A prong 2, the limitation contains no additional elements to consider integration into a practical application nor under Step 2B having an inventive concept. Regarding claim 7, the limitation, “classifying the plurality of files []” recites an additional mental process. Under Step 2A prong 2, the limitation contains no additional elements to consider integration into a practical application nor under Step 2B having an inventive concept. The additional element “using python-magic with Multipurpose Internet Mail Extensions (MIME) protocol.” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 8, the limitation, “classifying [] the plurality of files into file types [] recites an additional mental process. The additional element “by a Schema State Machine (SSM)” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. The additional element “wherein the SSM dynamically applies setup configurations to the classified files.” is recited at a high level of generality, thus is merely applying the judicial exception or abstract idea. See MPEP 2106.05(f). Therefore, this additional element does not integrate the judicial exception into a practical application under Prong 1, nor amount to significantly more under step 2B. Regarding claim 9, the additional element “wherein a JavaScript Object Notation (JSON) setup file specifies the setup configurations to apply to each of the file types.” is recited at a high level of generality, thus is merely applying the judicial exception or abstract idea. See MPEP 2106.05(f). Therefore, this additional element does not integrate the judicial exception into a practical application under Prong 1, nor amount to significantly more under step 2B. Regarding claim 10, the additional element “transmitting [] each of the classified files to a compare module, comprising a plurality of sub processes.” recites additional insignificant extra solution activity of transmitting data. See MPEP 2106.05(g). Under Step 2B, according to MPEP 2106.05(d), the courts have identified transmitting data as well-understood, conventional, routine activity. Thus, the “transmitting” function recited in the claim amounts to mere data gathering which is neither a practical application under prong 2, nor amount to significantly more under step 2B. The additional element “by the SSM” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 11, the additional element “wherein the plurality of sub processes comprises a compression sub process, a general sub process, a binary sub process, a delete sub process, a permission sub process, a symlink sub process, and a new add sub process.” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 12 the additional elements “receiving [] at least one compressed file from the SSM” and “transmitting [] the at least one decompressed file to at least one of the plurality of sub processes.” recite additional insignificant extra solution activity of receiving data. See MPEP 2106.05(g). Under Step 2B, according to MPEP 2106.05(d), the courts have identified receiving data as well-understood, conventional, routine activity. Thus, the “receiving” function recited in the claim amounts to mere data gathering which is neither a practical application under prong 2, nor amount to significantly more under step 2B. The additional elements “recursively decompressing [] the at least one compressed file” and “by the compression sub process” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 13, the additional elements “receiving [] at least one symbolic link file from the SSM”, “recursively retrieving [] at least one symbolic link associated with the at least one symbolic link file” and “and transmitting [] the at least one symbolic link and at least one target file associated with the at least one symbolic link file to a comparison module to identify changed symbolic link files.” recite additional insignificant extra solution activity of receiving and transmitting data. See MPEP 2106.05(g). Under Step 2B, according to MPEP 2106.05(d), the courts have identified receiving and transmitting data as well-understood, conventional, routine activity. Thus, the “receiving” and “transmitting” functions recited in the claim amounts to mere data gathering which is neither a practical application under prong 2, nor amount to significantly more under step 2B. The additional element “by a symlink sub process” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 14, the limitation “skipping Python™ metadata associated with the at least one Python™ compiled file when performing a comparison process on the at least one Python™ compiled file.” recites an additional mental process. The additional element “receiving [] at least on Python™ compiled file from the SSM” recite additional insignificant extra solution activity of receiving data. See MPEP 2106.05(g). Under Step 2B, according to MPEP 2106.05(d), the courts have identified receiving data as well-understood, conventional, routine activity. Thus, the “receiving” functions recited in the claim amounts to mere data gathering which is neither a practical application under prong 2, nor amount to significantly more under step 2B. The additional element “by a binary sub process” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 15, the limitation “and applying dependency schema rules to the output of the compare module.” recites an additional mental process. The additional element “post processing [] output from the compare module” is recited at a high level of generality, thus is merely applying the judicial exception or abstract idea. See MPEP 2106.05(f). Therefore, this additional element does not integrate the judicial exception into a practical application under Prong 1, nor amount to significantly more under step 2B. The additional element “by the deep file compare system” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 16, the additional element “based on the output from the compare module, adding [] at least one required script file required by the patch installation package.” is recited at a high level of generality, thus is merely applying the judicial exception or abstract idea. See MPEP 2106.05(f). Therefore, this additional element does not integrate the judicial exception into a practical application under Prong 1, nor amount to significantly more under step 2B. The additional element “by the deep file compare system” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 17, the limitation “and performing a comparison process on at least one of file permissions associated with the file and folder permissions associated with a folder associated with the file.” recites an additional mental process. The additional element “receiving [] a file” recites additional insignificant extra solution activity of receiving data. See MPEP 2106.05(g). Under Step 2B, according to MPEP 2106.05(d), the courts have identified receiving data as well-understood, conventional, routine activity. Thus, the “receiving” function recited in the claim amounts to mere data gathering which is neither a practical application under prong 2, nor amount to significantly more under step 2B. The additional element “by a permission sub process” is recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claim 18, the additional elements “providing [] the subset of changed files as input to a patch installation package generator system.” recites additional insignificant extra solution activity of receiving, transmitting, or storing data. See MPEP 2106.05(g). Under Step 2B, according to MPEP 2106.05(d), the courts have identified storing data as well-understood, conventional, routine activity. Thus, the “providing” function recited in the claim amounts to mere data gathering which is neither a practical application under prong 2, nor amount to significantly more under step 2B. The additional element “by the deep file compare system” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Regarding claims 19 and 20, their mental processes and insignificant extra-solution activity are analyzed similarly to claim 1. The additional respective elements “at least one processing device comprising a processor coupled to a memory; the at least one processing device being configured” and “A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components for applying the judicial exception which is neither a practical application under prong 2, nor amount to significantly more under step 2B for the same reasons given for the rejection of claim 1. Thus claims 1-20 are not patent eligible. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1, 6-8, 10, 12, 13, 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Laron et al. (US 20240289121 A1) hereinafter Laron in view of Gu et al. (US 20060112113 A1) hereinafter Gu. Regarding claim 1, Laron discloses a method comprising: receiving a plurality of files and a request to generate a patch installation package incorporating a subset of changed files for installation, wherein the plurality of files comprises the subset of changed files and a subset of unchanged files; (e.g. Laron teaches a method of generating a patch package by incorporating a original archive element/file(s) and a destination archive element/file(s) and updating/installing the original file(s) into the destination file(s) by applying patch/change data and associated patch instructions (i.e. add, delete, unaltered) (Laron [0006] lines 6-9). The original archive element is typically a multitude of files (Laron [0108]) and may contain changes (i.e. deletions) (Laron [0185] lines 1-5) or be unchanged or ‘unaltered’. (Laron [0185] lines 8-14)) and outputting, by the deep file compare system, the subset of changed files for generation of the patch installation package incorporating the subset of changed files, wherein the method is performed by at least one processing device comprising a processor coupled to a memory. (e.g. Laron teaches a differencing/comparison module outputting patch data of changed files (Laron [0153]) as patch applying module(s) use patch data and patch instructions to reconstruct the destination archive element from the original archive element. (Laron [0159])) Laron does not disclose: generating, by a deep file compare system, human readable files from binary files, wherein the plurality of files comprises the binary files; determining, by the deep file compare system, the subset of changed files within the plurality of files, using the human readable files; However, Gu discloses: generating, by a deep file compare system, human readable files from binary files, wherein the plurality of files comprises the binary files; (e.g. Image processing module receives original and new SFS images (binaries) (Gu [0027] lines 1-3) and parses the images to extract information pertaining to the file system structure (Gu [0027] lines 11-13). This extracted file system structure is stored in a 'hint file' (Gu [0030] lines 11-13) which contains file name and location information (human-readable information) when it is outputted/generated by the image processing module (Gu [0029]); where ‘hint file’ is viewed as a human-readable file. determining, by the deep file compare system, the subset of changed files within the plurality of files, using the human readable files; (e.g. "The information of the static file system structure" (stored in the human-readable 'hint file' as mentioned above) is "used in differencing and updating operations" (Gu [0027] lines 7-11) where differences between original and new portions (which contain ‘file portions’ viewed as files (Gu [0028] lines 13-15)) are produced by a difference engine and subsequently encoded into a delta file (Gu [0031] lines 8-13). Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Laron’s patch generation system to incorporate the teachings of Gu by including “generating, by a deep file compare system, human readable files from binary files, wherein the plurality of files comprises the binary files; determining, by the deep file compare system, the subset of changed files within the plurality of files, using the human readable files” because the hint file would enable generation of a mapping or alignment between original images and new images (Gu [0030] lines 1-4 and lines 11-15). Regarding claim 6, Laron in view of Gu discloses: determining, by the deep file compare system, the subset of changed files comprises: classifying the plurality of files into a plurality of file types, wherein the plurality of file types comprises at least general file type, binary file type, compressed file type, and symlink file type. (e.g. Laron teaches identifying/determining structural/file types including directory/archive (general), compressed, link (symlink) and data (binary). (Laron [0047])) Regarding claim 7, Laron in view of Gu discloses: classifying the plurality of files into a plurality of file types comprises: classifying the plurality of files using python-magic with Multipurpose Internet Mail Extensions (MIME) protocol. (e.g. Laron determines file/data types using ‘magic numbers’ (Laron [0144] lines 1-3), which are file headers that identify file types, and formatting into a ‘mime-types’ accepted standard (Laron [0186] lines 4-7), which suggest utilizing relevant software/techniques such as python-magic (uses magic numbers to identify file types) and MIME protocol (uses an ISO standard file type format).) Regarding claim 8, Laron in view of Gu discloses: determining, by the deep file compare system, the subset of changed files comprises: classifying, by a Schema State Machine (SSM), the plurality of files into file types, wherein the SSM dynamically applies setup configurations to the classified files. (e.g. Laron determines file/data types using ‘magic numbers’ (Laron [0144] lines 1-3), which are file headers that identify file types, and formatting into a ‘mime-types’ accepted standard (Laron [0186] lines 4-7), which suggest utilizing relevant software/techniques such as python-magic (uses magic numbers to identify file types) and MIME protocol (uses an ISO standard file type format). Additionally, Laron discusses patch generator policies/rules/schema (Laron [0117]) that apply to various modules including ‘content identifying module’ (Laron [0143]) which identifies/determines data/file types. Furthermore, patch instructions (i.e. add, delete, etc.) and file setup configuration data (i.e. ‘8-bit/color RGBA, non-interlaced’ for a PNG/data/binary file type) are stored in a dictionary data structure. (Laron [0190] lines 15-17)) Regarding claim 10, Laron in view of Gu discloses: transmitting, by the SSM, each of the classified files to a compare module, comprising a plurality of sub processes. (e.g. Laron inputs grouped/identified/classified archive elements/files into the differencing/compare module (Laron [0023] lines 4,5) which comprises ‘delta-compression algorithms’ to generate patch data. (Laron [0152] lines 3-5)) Regarding claim 12, Laron in view of Gu discloses: receiving, by a compression sub process, at least one compressed file from the SSM; (e.g. Laron teaches a ‘compression module’ (Laron [0113]) that compresses archive elements i.e. files) recursively decompressing, by the compression sub process, the at least one compressed file; (e.g. Laron decompresses a destination element/file resulting in multiple internal elements/files, any one of which may also be a compressed file. (Laron [0074-0075])) and transmitting, by the compression sub process, the at least one decompressed file to at least one of the plurality of sub processes. (e.g. Laron decompresses and may subsequently unpack files in an iterative process (Laron, FIG. 2a).) Regarding claim 13, Laron in view of Gu discloses: receiving, by a symlink sub process, at least one symbolic link file from the SSM; (e.g. Laron identifies link/symlink files (Laron [0047])) recursively retrieving, by the symlink sub process, at least one symbolic link associated with the at least one symbolic link file; (e.g. Laron teaches obtaining another element/file from the destination archive structure/file(s) (Laron [0057]). Furthermore, an iterative process may unpack a destination element/file(s) (i.e. link/symlink file) resulting in multiple internal elements/files, any one of which may also require unpacking (Laron [0076-0079]) and subsequent obtaining of link/symlink file from symbolic link.) and transmitting, by the symlink sub process, the at least one symbolic link and at least one target file associated with the at least one symbolic link file to a comparison module to identify changed symbolic link files. (e.g. Laron teaches obtaining another element/file from the destination archive structure/files (Laron [0057]). Furthermore, Laron inputs grouped/identified/classified archive elements/files into the differencing/compare module (Laron [0023] lines 4,5) comprising ‘delta-compression algorithms’ to generate patch data. (Laron [0152] lines 3-5)) Regarding claim 18, Laron in view of Gu discloses: outputting, by the deep file compare system, the subset of changed files comprises: providing, by the deep file compare system, the subset of changed files as input to a patch installation package generator system. (e.g. Laron teaches a differencing/compare module that generates/outputs differencing/patch/change data between an original/source archive element/files and destination archive element/files (Laron [0153]) to generate a patch package comprising patch data and patch instructions. (Laron, FIG. 1a)) Regarding claim 19, it is a system claim having similar limitations as cited in claim 1. Thus claim 19 is also rejected under the same rationale as cited in the rejection of claim 1. Regarding claim 20, it is a computer program product claim having similar limitations as cited in in claim 1. Thus claim 20 is also rejected under the same rationale as cited in the rejection of claim 1. Claims 2, 4 are rejected under 35 U.S.C. 103 as being unpatentable over Laron, in view of Gu, as applied to claim 1 above, and further in view of Yang (US 20250117479 A1) hereinafter Yang. Regarding claim 2, Laron in view of Gu does not disclose: stripping binary files to assembly level data to generate the human readable files However, Yang discloses stripping binary files to assembly level data to generate the human readable files. (e.g. Yang discloses “Binary stripping can be performed on the binaries as indicated at 312 to produce stripped binaries 314. This mimics the real-world software deployment process, which results in stripped binaries.” (Yang [0041]) Yang additionally discloses "FIG. 8 shows binary code represented in different formats starting with stripped binaries 314. Extraction of the stripped binaries 314 can produce machine code 804. Disassembly of the stripped binaries 314 produces assembly code 806" (Yang [0064] lines 1-5); where ‘assembly code’ resulting from the 'disassembly of the stripped binaries' is viewed as a human-readable format/file.) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of Yang by including “stripping binary files to assembly level data to generate the human readable files.” because it would enable the comprehension of 'binary code semantics' (Yang [0063] lines 1-2) or logical code structure instead of incidental binary changes. Regarding claim 4, Laron as modified by Gu and Yang discloses: parsing binary data section structures of the binary files to create parsed binary files; (e.g. Laron teaches a differencing/comparison module that locates/parses identical data/binary portions/sections. (Laron [0201] lines 5-9)) and applying filter rules to the parsed binary files to identify changed binary files. (e.g. Furthermore, differencing/compare module encodes/filters data portions/sections (Laron [0201] lines 5-9) using an encoder module/codec/filter (Laron [0129] lines 1-5 and [0118] lines 1-4) Claim 3, 5 is rejected under 35 U.S.C. 103 as being unpatentable over Laron in view of Gu and Yang, as applied to claim 2 above, and in further view of Sahu et al. (US 20250272211 A1) hereinafter Sahu. Regarding claim 3, Laron in view of Gu and Yang does not disclose: removing symbol tables and debugging information from the binary files. However, Sahu discloses: removing symbol tables and debugging information from the binary files. (e.g. “In yet another embodiment, the target binary code 202 may be a stripped binary code i.e., it may be stripped of the debug symbol table and/or the DLL to, for example, save space.” (Sahu [0050] lines 1-4)) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu and Yang to incorporate the teachings of Sahu by including “removing symbol tables and debugging information from the binary files.” to benefit from saving space in binary files at the cost of the ability to map ‘function names to specific memory addresses’ (Sahu [0002] lines 8-15). Regarding claim 5, Laron in view of Gu and Yang discloses: [] to identify at least one unchanged file in the plurality of files. (e.g. The specifics of “at least one unchanged file in the plurality of files” can be seen above in claim 1 with discussion of the ‘unaltered’ patch instruction where an ‘unchanged file’ is described as ‘unaltered.’) Laron in view of Gu and Yang does not disclose: performing an assembly language level comparison However, Sahu discloses: performing an assembly language level comparison (e.g. the ‘comparator’ compares 'target assembly' code with other assembly codes to produce a heuristic/similarity match between the assembly codes (Sahu [0061] lines 1-8) which is used to identify similarities/differences/changes between the assembly codes; where assembly code is viewed as “assembly language level.”) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu and Yang to incorporate the teachings of Sahu by including “performing an assembly language level comparison” to trace and monitor functions in binary codes (Sahu [0005] lines 1-3). Claim 9 is rejected under 35 USC over Laron in view of Gu, as applied to claim 8 above, and in further view of Seksenov et al. (US 20210240818 A1) hereinafter Seksenov. Regarding claim 9, Laron in view of Gu discloses: [] specifies the setup configurations to apply to each of the file types. (e.g. Content identifying module identifies file data type and related metadata (i.e. ‘8-bit/color RGBA, non-interlaced’) which are included in a patch-instruction (i.e. {action=Update; Dtype=“data”; name=“filel.png”; metadata=“8-bit/color RGBA, non-interlaced”}) (Laron [0190] lines 6-11 and lines 14-17); where “patch-instruction” is viewed as a “setup configuration” based on file type.) Laron in view of Gu does not teach: a JavaScript Object Notation (JSON) setup file used in setup configurations However, Seksenov discloses a JavaScript Object Notation (JSON) used in setup configurations (e.g. a configuration file or JSON file controls appearance and discoverability of [software] components (Seksenov [0133] lines 1-7) and includes component type, version number, script/component dependencies, permissions, required hardware/software features, etc. (Seksenov [0133] lines 7-22) any of which would be required in a file setup process among various files.) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of Seksenov by including a JavaScript Object Notation (JSON) setup file to enable the appearance and discoverability of [software] components (Seksenov [0133] lines 1-7). Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over Laron, in view of Gu, as applied to claim 10 above, and in further view of Haq et al. ('Survey of Binary Code Similarity') hereinafter Haq and Sahu. Regarding claim 14, Laron in view of Gu discloses: receiving, by a binary sub process, at least on Python compiled file from the SSM; (Note: Assuming ‘at least on’ is intended by the applicant to read as ‘at least one.’ e.g. Laron teaches a situation where JAR (Java ARchive) files may contain java classes object code/bytecode/binaries (Laron [0227] lines 1-4 and lines 6-10); this suggests other binaries could be used i.e. Python compiled files/binaries.) Laron as modified by Gu does not disclose: [] when performing a comparison process on the at least one Python compiled file. However, Haq discloses [] when performing a comparison process on the at least one Python compiled file. (e.g. EXEDIFF is a diffing/differencing/comparison tool that computes/compares similarity between assembly code/instructions (Haq, page 7, paragraph 2, lines 1-5) by disassembling/converting raw bytes (i.e. Python compiled bytes) into instructions for patch delta generation between executables/binaries. (Haq, page 7, paragraph 2, lines 16-19); where Python compiled files may be treated as executables/binaries.) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of Haq by including “[] when performing a comparison process on the at least one Python compiled file.” to “identify direct changes in the source code” from “secondary changes due to the compilation process” (Haq, page 7, paragraph 2, lines 5-8). Laron in view of Gu and Haq does not disclose: skipping Python metadata associated with the at least one Python [] However, Sahu discloses skipping Python metadata associated with the at least one Python compiled file [] (e.g. “In yet another embodiment, the target binary code 202 may be a stripped binary code (i.e. Python compiled file), it may be stripped of the debug symbol table and/or the DLL to, for example, save space.” (Sahu [0050] lines 1-4); where Python compiled files may be treated as binary code.) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu and Haq to incorporate the teachings of Sahu by including “skipping Python metadata associated with the at least one Python compiled file []” to benefit from saving space in binary files at the cost of the ability to map ‘function names to specific memory addresses’ (Sahu [0002] lines 8-15). Claims 11, 17 are rejected under 35 U.S.C. 103 as being unpatentable over Laron in view of Gu, as applied to claim 10 above, and in further view of PowerShell Help ("Identifying NTFS Folder Permission Differences") hereinafter PowerShell. Regarding Claim 11, Laron in view of Gu disclose: the plurality of sub processes comprises a compression sub process, a general sub process, a binary sub process, a delete sub process, [], a symlink sub process, and a new add sub process. (e.g. Laron discloses a compression module and other general modules (Laron, FIG. 1a), differencing/comparing binary suites/files (Laron [0098] lines 6-8), add and delete instructions during the updating (Laron [0008] lines 4-6) and identifying link/symlink files. (Laron [0187])) Laron in view of Gu does not disclose: the plurality of sub processes that comprise [] a permission sub process However, PowerShell discloses the plurality of sub processes that comprise [] a permission sub process (e.g. PowerShell discloses a ‘Get-ACL’ (Get Access Control List) command/process which retrieves file ACL/permission data. (PowerShell, donj February 19, 2021, 11:09am #2)) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of PowerShell by including the plurality of sub processes that comprise [] a permission sub process to ensure secure updates (Laron [0003] lines 3-9). Regarding claim 17, Laron in view of Gu does not disclose: receiving, by a permission sub process, a file; and performing a comparison process on at least one of file permissions associated with the file and folder permissions associated with a folder associated with the file. However, PowerShell discloses receiving, by a permission sub process, a file; and performing a comparison process on at least one of file permissions associated with the file and folder permissions associated with a folder associated with the file. (e.g. PowerShell discloses a code/process comparing parent file (i.e. folder) ACLs/permissions to child file permissions (i.e. file) by retrieving a ‘difference object’ for files whose ACLs/permissions differ from their associated parent folder. (PowerShell, (donj February 19, 2021, 11:09am #2)) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of PowerShell by including “receiving, by a permission sub process, a file; and performing a comparison process on at least one of file permissions associated with the file and folder permissions associated with a folder associated with the file.” to ensure secure updates (Laron [0003] lines 3-9). Claims 15, 16 are rejected under 35 U.S.C. 103 as being unpatentable over Laron in view of Gu, as applied to claim 10 above, and in further view of Rusev et al. (US 20210019133 A1) hereinafter Rusev. Regarding claim 15, Laron in view of Gu discloses: post processing, by the deep file compare system, output from the compare module; (e.g. multiple differencing/compare modules/systems are applied to archive elements/files which results in multiple patch packages (Laron [0025]) and may subsequently identify (post process) the outputted packages to determine the most efficient package (Laron [0027])). Laron in view of Gu does not disclose: and applying dependency schema rules to the output of the compare module. However, Rusev discloses and applying dependency schema rules to the output of the compare module. (e.g. Rusev discloses a manifest file (schema rules) that references/applies components/dependencies (i.e. scripts) for inclusion in the generated/outputted update package. (Rusev [0049] lines 7-12)) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of Rusev to include “and applying dependency schema rules to the output of the compare module.” to enable the management of file lifecycle phases (Rusev [0049] lines 4-7). Regarding claim 16, Laron in view of Gu and Rusev discloses: applying dependency schema rules to the output of the compare module comprises: based on the output from the compare module, adding, by the deep file compare system, at least one required script file required by the patch installation package. (e.g. Rusev discloses a manifest file (schema rules) that references/applies components/dependencies (i.e. scripts) for inclusion in the generated/outputted update package. (Rusev [0049] lines 7-12)) Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the patch generation system of Laron in view of Gu to incorporate the teachings of Rusev to include “applying dependency schema rules to the output of the compare module comprises: based on the output from the compare module, adding, by the deep file compare system, at least one required script file required by the patch installation package.” to enable the management of file lifecycle phases (Rusev [0049] lines 4-7). Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to JAMIE A UPADHYAYA whose telephone number is (571) 270-0864. The examiner can normally be reached Monday-Friday 830am-430pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, CHAT DO can be reached at (571) 272-3721. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /J.A.U./Examiner, Art Unit 2193 /Chat C Do/Supervisory Patent Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Jun 13, 2024
Application Filed
Aug 05, 2026
Non-Final Rejection mailed — §101, §103 (current)

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
Grant Probability
Low
PTA Risk
Based on 0 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month