Prosecution Insights
Last updated: April 19, 2026
Application No. 18/209,579

SYSTEMS AND METHODS TO AUTOMATE CNC PROGRAMMING

Final Rejection §101
Filed
Jun 14, 2023
Examiner
SHECHTMAN, SEAN P
Art Unit
2896
Tech Center
2800 — Semiconductors & Electrical Systems
Assignee
Av Gauge & Fixture Inc.
OA Round
2 (Final)
75%
Grant Probability
Favorable
3-4
OA Rounds
3y 2m
To Grant
98%
With Interview

Examiner Intelligence

Grants 75% — above average
75%
Career Allow Rate
650 granted / 866 resolved
+7.1% vs TC avg
Strong +22% interview lift
Without
With
+22.4%
Interview Lift
resolved cases with interview
Typical timeline
3y 2m
Avg Prosecution
21 currently pending
Career history
887
Total Applications
across all art units

Statute-Specific Performance

§101
11.9%
-28.1% vs TC avg
§103
30.1%
-9.9% vs TC avg
§102
28.6%
-11.4% vs TC avg
§112
23.9%
-16.1% vs TC avg
Black line = Tech Center average estimate • Based on career data from 866 resolved cases

Office Action

§101
DETAILED ACTION 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 . Election/Restrictions Applicant’s election of Group II, claims 12-24, 48-60 in the reply filed on 8/26/25 is acknowledged. Because applicant did not distinctly and specifically point out the supposed errors in the restriction requirement, the election has been treated as an election without traverse (MPEP § 818.01(a)). Claims 1-11, 25-47, 61-72, are withdrawn from further consideration pursuant to 37 CFR 1.142(b) as being drawn to a nonelected group, there being no allowable generic or linking claim. Election was made without traverse in the reply filed on 8/26/25. 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. Claim(s) 12-24, 48-60 rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The claim recites 12, 48. A program, data processing system and method executed by a processor in a data processing system for programming a computer numerical control machine to create a detail from a stock block based on design specifications for the detail, wherein the stock block includes a plurality of sides including a left side, a right side, a front, a back, a top and a bottom, the method comprising: a memory configured to store the design specifications for the detail; retrieving the design specifications from memory; creating a stock model from the design specifications; setting leads and links to active datum on the stock model; determining from the design specifications what machine will be used to create the detail; determining from the design specifications what material will be used to create the detail; importing tool templates for the machine and the material that will be used to create the detail; activating atop workplane; activating a top toolpath folder; creating the PowerMill block with a Z minimum set to a maximum surface Z; determining whether stock needs to be removed from the top of the stock block; if it is determined that stock needs to be removed from the top of the stock block, applying a 12 mm pocketing template; determining whether a raised boss is present; if it is determined that a raised boss is present, creating a PowerMill block with a boss expansion; if it is determined that a raised boss is not present, creating the PowerMill block without the boss expansion; applying a 12 mm pocketing template; and resetting the leads and links. 13. The method of claim 12, wherein the step of determining whether a raised boss is present comprises: activating the top workplane; creating the PowerMill block; creating a shallow-type PowerMill boundary on the surfaces; converting the boundary to PowerMill polylines; and for each polyline: determining whether the polyline Y size is smaller than the surface Y size; and if it is determined that the polyline Y size is smaller than the surface Y size, determining that a raised boss is present. 14. The method of claim 12, further comprising: creating cardinal workplanes; identifying planar surfaces on the detail; for each planar surface: determining an IJK value; determining whether the IJK value is a cardinal value; and if it is determined that the IJK value is a cardinal value, creating a new angled workplane; determining a total number of workplanes; determining whether the total number of workplanes is greater than 6; and if it is determined that the total number of workplanes is greater than 6: for each workplane: extracting a Z vector from the workplane; determining I, J and K values for the Z vector; determining whether the K value is greater than 0; and if it is determined that the K value is greater than 0: capping the holes; activating the workplane; creating the PowerMill block; selecting all flat surfaces; activating a PowerMill contact point boundary for each flat surface; activating the top workplane; creating a bounding box from a PowerMill block around the active boundary; determining whether the J value is equal to 0; if it is determined that the J value is equal to 0:  determining whether a bounding box X size is greater than 9;  if it is determined that the bounding box X size is greater than 9, applying a 12 mm Area Clearance and 12 Z level templates; and  if it is determined that the bounding box X size is not greater than 9, applying a 12 mm Z level template; and  if it is determined that the J value is not equal to 0:  determining whether the I value is equal to 0; and  if it is determined that the I value is equal to 0:  determining whether a bounding box Y size is greater than 9;  if it is determined that the bounding box Y size is greater than 9, applying the 12 mm Area Clearance and 12 Z level templates; and  if it is determined that the bounding box Y size is not greater than 9, applying the 12 mm Z level template. 15. The method of claim 12, further comprising for each side of the stock block: activating a workplane for the side; creating the PowerMill block to surfaces of the stock model; creating the bounding box from the surface data; creating featuresets for holes on the side of the detail; creating a list of hole diameters for the holes on the side of the detail; activating a toolpath folder for the side; activating a 2d toolpath folder; creating the PowerMill block from the surfaces on the stock model; for each diameter in the list of hole diameters, applying a 2d templates; and deleting all uncalculated toolpaths. 16. The method of claim 12, further comprising: determining whether scribe lines are present in the design specifications; and if it is determined that scribe lines are present, creating scribing toolpaths. 17. The method of claim 16, further comprising organizing the scribe toolpaths based on workplanes. 18. The method of claim 12, further comprising creating countersinks required from the bottom of the stock. 19. The method of claim 12, further comprising: determining whether stock needs to be removed from the left and right sides of the stock block; and if it is determined that stock needs to be removed from the left and right sides of the stock block: creating the PowerMill block around the stock model, wherein the PowerMill block has an X negative and an X positive expanded; applying the 12 mmZLevel template; and resetting the leads and links to the active datum. 20. The method of claim 19, wherein if it is determined that stock does not need to be removed from the left and right sides of the stock block: determining whether stock needs to be removed from the left side of the stock block; and if it is determined that stock needs to be removed from the left side of the stock block: creating the PowerMill block around the stock model, wherein the PowerMill block has the X negative expanded; applying the 12 mmZLevel template; and resetting the leads and links to the active datum. 21. The method of claim 19, wherein if it is determined that stock does not need to be removed from the left and right sides of the stock block: determining whether stock needs to be removed from the right side of the stock block; and if it is determined that stock needs to be removed from the right side of the stock block: creating the PowerMill block around the stock model, wherein the PowerMill block has the X positive expanded; applying the 12 mmZLevel template; and resetting the leads and links to the active datum. 22. The method of claim 12, further comprising: determining whether stock needs to be removed from one side of the stock block, wherein the one side comprises the bottom, the front or the back of the stock block; and if it is determined that stock needs to be removed from the one side of the stock block: activating the workplane for the one side; activating the toolpath folder for the one side; creating the PowerMill block around the stock model; applying the 12 mm pocketing template; and resetting the leads and links to the active datum. 23. The method of claim 12, further comprising: determining whether a mirror image of the detail is required; and if it is determined that a mirror image of the detail is required: creating a mirror toolpath folder; activating the mirror toolpath folder; and for each toolpath folder: mirroring all toolpaths in the toolpath folder about the Y axis; and storing the mirrored toolpaths into the mirror toolpath folder. 24. The method of claim 12, further comprising: for each toolpath folder: determining whether the toolpath folder is empty; and if it is determined that the toolpath folder is empty, deleting the toolpath folder; creating numeric control programs from the toolpath folders; writing tool information to a text file; compiling the numeric control programs into G code; and saving the PowerMill project. 48. A non-transitory computer readable medium containing instructions for controlling a data processing system to perform a method for automating programming of a computer numerical control machine to create a detail from a stock block based on design specifications for the detail, wherein the stock block includes a plurality of sides including a left side, a right side, a front, a back, a top and a bottom, the method comprising: creating a stock model from the design specifications; setting leads and links to active datum on the stock model; determining from the design specifications what machine will be used to create the detail; determining from the design specifications what material will be used to create the detail; importing tool templates for the machine and the material that will be used to create the detail; activating atop workplane; activating a top toolpath folder; creating the PowerMill block with a Z minimum set to a maximum surface Z; determining whether stock needs to be removed from the top of the stock block; if it is determined that stock needs to be removed from the top of the stock block, applying a 12 mm pocketing template; determining whether a raised boss is present; if it is determined that a raised boss is present, creating a PowerMill block with a boss expansion; if it is determined that a raised boss is not present, creating the PowerMill block without the boss expansion; applying a 12 mm pocketing template; and resetting the leads and links. 49. The non-transitory computer readable medium of claim 48 wherein the method further comprises: activating the top workplane; creating the PowerMill block; creating a shallow-type PowerMill boundary on the surfaces; converting the boundary to PowerMill polylines; and for each polyline: determining whether the polyline Y size is smaller than the surface Y size; and if it is determined that the polyline Y size is smaller than the surface Y size, determining that a raised boss is present. 50. The non-transitory computer readable medium of claim 48 wherein the method further comprises: creating cardinal workplanes; identifying planar surfaces on the detail; for each planar surface: determining an IJK value; determining whether the IJK value is a cardinal value; and if it is determined that the IJK value is a cardinal value, creating a new angled workplane; determining a total number of workplanes; determining whether the total number of workplanes is greater than 6; and if it is determined that the total number of workplanes is greater than 6: for each workplane: extracting a Z vector from the workplane; determining I, J and K values for the Z vector; determining whether the K value is greater than 0; and if it is determined that the K value is greater than 0: capping the holes; activating the workplane; creating the PowerMill block; selecting all flat surfaces; activating a PowerMill contact point boundary for each flat surface; activating the top workplane; creating a bounding box from a PowerMill block around the active boundary; determining whether the J value is equal to 0; if it is determined that the J value is equal to 0:  determining whether a bounding box X size is greater than 9;  if it is determined that the bounding box X size is greater than 9, applying a 12 mm Area Clearance and 12 Z level templates; and  if it is determined that the bounding box X size is not greater than 9, applying a 12 mm Z level template; and  if it is determined that the J value is not equal to 0:  determining whether the I value is equal to 0; and  if it is determined that the I value is equal to 0:  determining whether a bounding box Y size is greater than 9;  if it is determined that the bounding box Y size is greater than 9, applying the 12 mm Area Clearance and 12 Z level templates; and  if it is determined that the bounding box Y size is not greater than 9, applying the 12 mm Z level template. 51. The non-transitory computer readable medium of claim 48 wherein the method further comprises: activating a workplane for the side; creating the PowerMill block to surfaces of the stock model; creating the bounding box from the surface data; creating featuresets for holes on the side of the detail; creating a list of hole diameters for the holes on the side of the detail; activating a toolpath folder for the side; activating a 2d toolpath folder; creating the PowerMill block from the surfaces on the stock model; for each diameter in the list of hole diameters, applying a 2d templates; and deleting all uncalculated toolpaths. 52. The non-transitory computer readable medium of claim 48 wherein the method further comprises: determining whether scribe lines are present in the design specifications; and if it is determined that scribe lines are present, creating scribing toolpaths. 53. The non-transitory computer readable medium of claim 52 wherein the method further comprises organizing the scribe toolpaths based on workplanes. 54. The non-transitory computer readable medium of claim 48 wherein the method further comprises creating countersinks required from the bottom of the stock. 55. The non-transitory computer readable medium of claim 48 wherein the method further comprises: determining whether stock needs to be removed from the left and right sides of the stock block; and if it is determined that stock needs to be removed from the left and right sides of the stock block: creating the PowerMill block around the stock model, wherein the PowerMill block has an X negative and an X positive expanded; applying the 12 mmZLevel template; and resetting the leads and links to the active datum. 56. The non-transitory computer readable medium of claim 55 wherein if it is determined that stock does not need to be removed from the left and right sides of the stock block: determining whether stock needs to be removed from the left side of the stock block; and if it is determined that stock needs to be removed from the left side of the stock block: creating the PowerMill block around the stock model, wherein the PowerMill block has the X negative expanded; applying the 12 mmZLevel template; and resetting the leads and links to the active datum. 57. The non-transitory computer readable medium of claim 55 wherein if it is determined that stock does not need to be removed from the left and right sides of the stock block: determining whether stock needs to be removed from the right side of the stock block; and if it is determined that stock needs to be removed from the right side of the stock block: creating the PowerMill block around the stock model, wherein the PowerMill block has the X positive expanded; applying the 12 mmZLevel template; and resetting the leads and links to the active datum. 58. The non-transitory computer readable medium of claim 48 wherein the method further comprises: determining whether stock needs to be removed from one side of the stock block, wherein the one side comprises the bottom, the front or the back of the stock block; and if it is determined that stock needs to be removed from the one side of the stock block: activating the workplane for the one side; activating the toolpath folder for the one side; creating the PowerMill block around the stock model; applying the 12 mm pocketing template; and resetting the leads and links to the active datum. 59. The non-transitory computer readable medium of claim 48 wherein the method further comprises: determining whether a mirror image of the detail is required; and if it is determined that a mirror image of the detail is required: creating a mirror toolpath folder; activating the mirror toolpath folder; and for each toolpath folder: mirroring all toolpaths in the toolpath folder about the Y axis; and storing the mirrored toolpaths into the mirror toolpath folder. 60. The non-transitory computer readable medium of claim 48 wherein the method further comprises: for each toolpath folder: determining whether the toolpath folder is empty; and if it is determined that the toolpath folder is empty, deleting the toolpath folder; creating numeric control programs from the toolpath folders; writing tool information to a text file; compiling the numeric control programs into G code; and saving the PowerMill project. The limitations above, as drafted, is a process or function that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting by a data processing system/program/processor nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the data processing system/program/processor language, setting and determining in the context of this claim encompasses a user thinking about or manually making calculations on the design. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea. This judicial exception is not integrated into a practical application. In particular, the claim only recites the additional element(s) – data processing system/program/processor. The data processing system/program/processor is recited at a high-level of generality (i.e., as a generic processor performing a generic computer function) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The claim does 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 element(s) of data processing system/program/processor amounts to no more than mere instructions to apply the exception using a generic computer component. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. The claim is not patent eligible. Allowable Subject Matter The following is a statement of reasons for the indication of allowable subject matter: While U.S. Pub. No. 2018/0259935 to Saitou teaches 12,48. A program and method in a data processing system for automating programming of a computer numerical control machine to create a detail from a stock block based on design specifications for the detail, wherein the stock block includes a plurality of sides including a left side, a right side, a front, a back, a top and a bottom, the method comprising: creating a stock model from the design specifications; setting leads and links to active datum on the stock model; determining from the design specifications what machine will be used to create the detail; determining from the design specifications what material will be used to create the detail; importing tool templates for the machine and the material that will be used to create the detail (); activating atop workplane; activating a top toolpath folder; creating the block with a maximum surface Z (Abstract, paragraphs 28-120). And, U.S. Pub. No. 2008/0004745 to Nasu teaches 12,48. A program and method in a data processing system for automating programming of a computer numerical control machine to create a detail from a stock block based on design specifications for the detail, wherein the stock block includes a plurality of sides including a left side, a right side, a front, a back, a top and a bottom, the method comprising: creating a stock model from the design specifications; setting leads and links to active datum on the stock model; determining from the design specifications what machine will be used to create the detail; determining from the design specifications what material will be used to create the detail; importing tool templates for the machine and the material that will be used to create the detail; activating atop workplane; activating a top toolpath folder; determining whether stock needs to be removed from the top of the stock block (Figs. 5-9, 18-19, paragraphs 32-84). Neither Saitou nor Nasu, taken either alone or in obvious combination, disclose all the claimed features of applicant’s instant invention, specifically including: 12,48. A program, data processing system and method in a data processing system for programming a computer numerical control machine to create a detail from a stock block based on design specifications for the detail, wherein the stock block includes a plurality of sides including a left side, a right side, a front, a back, a top and a bottom, the method comprising: creating a stock model from the design specifications; setting leads and links to active datum on the stock model; determining from the design specifications what machine will be used to create the detail; determining from the design specifications what material will be used to create the detail; importing tool templates for the machine and the material that will be used to create the detail; activating atop workplane; activating a top toolpath folder; creating the PowerMill block with a Z minimum set to a maximum surface Z; determining whether stock needs to be removed from the top of the stock block; if it is determined that stock needs to be removed from the top of the stock block, applying a 12 mm pocketing template; determining whether a raised boss is present; if it is determined that a raised boss is present, creating a PowerMill block with a boss expansion; if it is determined that a raised boss is not present, creating the PowerMill block without the boss expansion; applying a 12 mm pocketing template; and resetting the leads and links. It is for these reasons that applicant’s invention defines over the prior art of record. Response to Arguments Applicant's arguments filed 12/22/25 have been fully considered but they are not persuasive. Applicant argues the addition of the processor to the claims makes the claims statutory. The examiner disagrees. The limitations above, as drafted, is a process or function that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting by a data processing system/program/processor nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the data processing system/program/processor language, setting and determining in the context of this claim encompasses a user thinking about or manually making calculations on the design. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea. This judicial exception is not integrated into a practical application. In particular, the claim only recites the additional element(s) – data processing system/program/processor. The data processing system/program/processor is recited at a high-level of generality (i.e., as a generic processor performing a generic computer function) such that it amounts no more than mere instructions to apply the exception using a generic computer component. Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. The claim does 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 element(s) of data processing system/program/processor amounts to no more than mere instructions to apply the exception using a generic computer component. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. The claim is not patent eligible. Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to SEAN P SHECHTMAN whose telephone number is (571)272-3754. The examiner can normally be reached 9:30am-6:00pm, M-F. 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, William Kraig can be reached at 571-272-8660. 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. /Sean Shechtman/ Primary Examiner, Art Unit 2896
Read full office action

Prosecution Timeline

Jun 14, 2023
Application Filed
Oct 17, 2025
Non-Final Rejection — §101
Dec 22, 2025
Response Filed
Jan 24, 2026
Final Rejection — §101 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12596411
Cooling Subsystems for Peripheral Devices
2y 5m to grant Granted Apr 07, 2026
Patent 12572119
ACOUSTIC MONITORING FOR DETECTION OF ANOMALOUS OPERATION OF CLEANING MACHINES
2y 5m to grant Granted Mar 10, 2026
Patent 12560911
ACCELERATED RETURN TO STEADY STATE FOR CONTINUOUS MANUFACTURING PROCESSES
2y 5m to grant Granted Feb 24, 2026
Patent 12560917
INFORMATION PROCESSING APPARATUS, PLANT CONTROL METHOD, AND NON-TRANSITORY COMPUTER-READABLE RECORDING MEDIUM
2y 5m to grant Granted Feb 24, 2026
Patent 12551252
APPARATUS AND METHOD OF AN OSTEOTOMY FOR DENTAL IMPLANT
2y 5m to grant Granted Feb 17, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
75%
Grant Probability
98%
With Interview (+22.4%)
3y 2m
Median Time to Grant
Moderate
PTA Risk
Based on 866 resolved cases by this examiner. Grant probability derived from career allow 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