Prosecution Insights
Last updated: July 17, 2026
Application No. 18/974,318

Data Structure Format Manipulation for Database Systems

Final Rejection §103
Filed
Dec 09, 2024
Examiner
HTAY, LIN LIN M
Art Unit
2153
Tech Center
2100 — Computer Architecture & Software
Assignee
Salesforce Inc.
OA Round
2 (Final)
72%
Grant Probability
Favorable
3-4
OA Rounds
1y 8m
Est. Remaining
97%
With Interview

Examiner Intelligence

Grants 72% — above average
72%
Career Allowance Rate
217 granted / 301 resolved
+17.1% vs TC avg
Strong +25% interview lift
Without
With
+24.7%
Interview Lift
resolved cases with interview
Typical timeline
3y 3m
Avg Prosecution
21 currently pending
Career history
337
Total Applications
across all art units

Statute-Specific Performance

§101
0.6%
-39.4% vs TC avg
§103
94.7%
+54.7% vs TC avg
§102
3.8%
-36.2% vs TC avg
§112
0.4%
-39.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 301 resolved cases

Office Action

§103
CTFR 18/974,318 CTFR 90225 Notice of Pre-AIA or AIA Status 07-03-aia AIA 15-10-aia The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA. The Amendment filed on 03/27/26 has been received and entered. Application No. 18/974,318 of which claims 1-20 are pending in the application, all of which are ready for examination by the examiner. Response to Amendment Applicant’s amendment necessitated new grounds of rejection. Applicant’s response, filed on 03/27/26, with respect to 101 rejections directed to an abstract idea of claims 1-20 have been fully considered and are persuasive. The rejections are withdrawn. This action is made final in view of the new grounds of rejection. Response to Arguments Applicant's arguments with respect to 35 USC § 101 rejections of claims 1-20 have been fully considered and are persuasive. The rejections are withdrawn in light of Applicant’s amendments and arguments. 07-38 Applicant’s arguments with respect to 35 USC § 103 rejections of claims 1-20 have been fully considered but are moot because the arguments do not apply to any of the references being used in the current rejection. Claim Rejections - 35 USC § 103 07-06 AIA 15-10-15 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 07-20-aia AIA 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 of this title, 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. 07-21-aia AIA Claim s 1-4, 8-10, and 14-17 are rejected under 35 U.S.C. 103 as being unpatentable over Ruff et al. (U.S. PGPub 2016/0062954; hereinafter “Ruff”) in view of Sundaresan et al. (U.S. Patent 11,188,364; hereinafter “Sundaresan”) . As per claims 1 and 14 , Ruff discloses a non-transitory computer-readable medium having program instructions stored thereon that are capable of causing a computer system to perform operations comprising: analyzing, by the JIT compiler, a call stack associated with the one or more function calls to determine whether to pass the data structure in a first format or a second format; (See paras. 60, 382, wherein methods of parameters being passed to a function and determining formatting by implementer in which “each implementer can decide consistent with teachings herein whether to store the multiple TruncatedNum values and to perform the output formatting 494 at the end, or whether to use each value as it comes and to perform the formatting 494 for that triplet before iterating 342 to the next triplet” [0382] are disclosed, also See paras. 674, 844, wherein determining desired output process are disclosed, also See para. 985, 997, 1053, wherein process of passing parameter for output buffer and pointer and analyzing processes in which “parameters 918 are passed on the stack in reverse order, and when the ngFormat( ) command is called 544, the address of the very next instruction is passed on the stack and then ngFormat receives control” [0997] and “a small prefix function 1040, 936 will first be called to decide, depending on the sign of the number and the specified rule (default or set by user preference), whether to write a prefix character, and to also make sure the number is positive (converted from negative as necessary). Then a function 936 to format the unsigned version of the number will be called” [1053] are disclosed; as taught by Ruff.) and based on the analyzing, inserting, by the JIT compiler, one or more operators into the received program instructions to cause the data structure to be passed in the determined format to the one or more functions in response to execution of the program instructions by the database system. (See paras. 674, 867, wherein executing instruction process in which “NextCommand pointer (sometimes referred to as EntryPtr) which is initialized to point to the first instruction to execute (at Entry 0). Each instruction uses a 32-bit pointer to a specific code label (defining either a function call or a jump destination; this depends on whether the implementation uses calls 544 or jumps 398 to execute instructions 116, as described herein, although the code label could be the same in either case) which is accessed either directly or indirectly from the table to perform a specific function” [0867] are disclosed, also See paras. 56, 935-936, wherein format-command string are disclosed; as taught by Ruff.) However, Ruff fails to disclose receiving, for just-in-time (JIT) compilation by a JIT compiler, program instructions defined in a procedural language of a database system, wherein the received program instructions include one or more function calls that pass a data structure as an input parameter for one or more functions. On the other hand, Sundaresan teaches receiving, for just-in-time (JIT) compilation by a JIT compiler, program instructions defined in a procedural language of a database system, wherein the received program instructions include one or more function calls that pass a data structure as an input parameter for one or more functions. (See col. 5, ll 15-52 and col. 7, ll 40-48, wherein just-in-time compiler heuristics, JIT compiler functions in which “Both types of profiling data help a JIT compiler optimize compiled code by predicting likely execution paths… A point within application execution is selected as the snapshot point, and an embodiment configures a snapshot handler to be triggered when application execution reaches the snapshot point. One embodiment receives the selected snapshot point during process VM initialization, for example as a parameter in a VM startup command or in a configuration file” (col. 7, ll 30-47) are disclosed; as taught by Sundaresan.) Therefore, it would have been obvious to a person of ordinary skill in the computer art before the effective filing date of the claimed invention to incorporate the Sundaresan teachings in the Ruff system. Skilled artisan would have been motivated to incorporate the system of compilation strategy for a sharable application snapshot taught by Sundaresan in the Ruff system for effective flexible high-speed generation and formatting of application-specified strings. In addition, both of the references (Ruff and Sundaresan) teach features that are directed to analogous art and they are directed to the same field of endeavor, such as data format conversion. This close relation between both of the references highly suggests an expectation of success. As per claims 2, 9, and 15 , the combination of Ruff and Sundaresan discloses wherein the analyzing further comprises: building, by the JIT compiler, a syntax tree, wherein the syntax tree identifies, for each of the one or more function calls, whether that function performs read or write operations on the data structure; and examining, by the JIT compiler, the read and write operations identified in the syntax tree. (See paras. 61-63, 74, wherein programming language syntax, command syntax are disclosed, also See paras. 674, 897, 1053, wherein write commands and JIT complier are disclosed; as taught by Ruff.) As per claims 3 and 16 , the combination of Ruff and Sundaresan discloses after compilation of the received program instructions, executing the compiled program instructions, wherein executing the compiled program instructions includes executing the one or more operators to cause the data structure to be passed in the determined format. (See paras. 674, 867, wherein executing instruction process in which “NextCommand pointer (sometimes referred to as EntryPtr) which is initialized to point to the first instruction to execute (at Entry 0). Each instruction uses a 32-bit pointer to a specific code label (defining either a function call or a jump destination; this depends on whether the implementation uses calls 544 or jumps 398 to execute instructions 116, as described herein, although the code label could be the same in either case) which is accessed either directly or indirectly from the table to perform a specific function” [0867] are disclosed, also See paras. 935-936, wherein format-command string are disclosed, also See paras. 60, 74, 382, wherein parameters passed to a function features and determining formatting by implementer in which “each implementer can decide consistent with teachings herein whether to store the multiple TruncatedNum values and to perform the output formatting 494 at the end, or whether to use each value as it comes and to perform the formatting 494 for that triplet before iterating 342 to the next triplet” [0382] are disclosed; as taught by Ruff.) As per claims 4 and 17 , Ruff fails to disclose wherein the one or more operators inserted include an operator that deletes the data structure after determining, based on the call stack, that the data structure is no longer needed. On the other hand, Sundaresan teaches wherein the one or more operators inserted include an operator that deletes the data structure after determining, based on the call stack, that the data structure is no longer needed. (See col. 6, ll 50-58, wherein removing method from method list process in which “During method list building, or after an embodiment has completed building the method list, an embodiment determines whether a method should be removed from the method list ( or not initially added). An embodiment uses one or more criteria to determine whether a method should be filtered, or removed, from the method list…” are disclosed; as taught by Sundaresan.) See claims 1 and 14 for motivation above. As per claim 8 , Ruff discloses a non-transitory computer-readable medium having program instructions stored thereon that are capable of causing a computer system to perform operations comprising: analyzing, by the JIT compiler, a call stack associated with the one or more function calls to determine whether to pass the data structure in a first format or a second format; (See paras. 60, 74, 382, wherein parameters passed to a function features and determining formatting by implementer in which “each implementer can decide consistent with teachings herein whether to store the multiple TruncatedNum values and to perform the output formatting 494 at the end, or whether to use each value as it comes and to perform the formatting 494 for that triplet before iterating 342 to the next triplet” [0382] are disclosed, also See paras. 152, 674, 844, wherein determining desired output process are disclosed, also See para. 985, 997, 1053, wherein process of passing parameter for output buffer and pointer and analyzing processes in which “parameters 918 are passed on the stack in reverse order, and when the ngFormat( ) command is called 544, the address of the very next instruction is passed on the stack and then ngFormat receives control” [0997] and “a small prefix function 1040, 936 will first be called to decide, depending on the sign of the number and the specified rule (default or set by user preference), whether to write a prefix character, and to also make sure the number is positive (converted from negative as necessary). Then a function 936 to format the unsigned version of the number will be called” [1053] are disclosed; as taught by Ruff.) based on the analyzing, inserting, by the JIT compiler, one or more bytecode instructions into a compiled version of the received program instructions to cause the data structure to be passed in the determined format to the one or more functions in response to execution of the compiled program instructions by the database system; (See paras. 674, 680, 867, wherein processing bytecode, executing instruction process in which “the bytecode can be run by a special interpreter. Typically, the bytecode is processed by a just-in-time (JIT) compiler that can customize the code for a specific operating system and CPU that is running the code, although it can also be processed and compiled at installation or at some other time” [0674] and “NextCommand pointer (sometimes referred to as EntryPtr) which is initialized to point to the first instruction to execute (at Entry 0). Each instruction uses a 32-bit pointer to a specific code label (defining either a function call or a jump destination; this depends on whether the implementation uses calls 544 or jumps 398 to execute instructions 116, as described herein, although the code label could be the same in either case) which is accessed either directly or indirectly from the table to perform a specific function” [0867] are disclosed, also See paras. 56, 935-936, wherein format-command string are disclosed; as taught by Ruff.) and executing the compiled program instructions, wherein executing the program instructions includes executing the inserted bytecode instructions. (See paras. 674, 867, wherein executing instruction process in which “NextCommand pointer (sometimes referred to as EntryPtr) which is initialized to point to the first instruction to execute (at Entry 0). Each instruction uses a 32-bit pointer to a specific code label (defining either a function call or a jump destination; this depends on whether the implementation uses calls 544 or jumps 398 to execute instructions 116, as described herein, although the code label could be the same in either case) which is accessed either directly or indirectly from the table to perform a specific function” [0867] are disclosed, also See paras. 935-936, wherein format-command string are disclosed; as taught by Ruff.) However, Ruff fails to disclose receiving, for just-in-time (JIT) compilation by a JIT compiler, program instructions defined in a procedural language of a database system, wherein the received program instructions include one or more function calls that pass a data structure as an input parameter for one or more functions. On the other hand, Sundaresan teaches receiving, for just-in-time (JIT) compilation by a JIT compiler, program instructions defined in a procedural language of a database system, wherein the received program instructions include one or more function calls that pass a data structure as an input parameter for one or more functions. (See col. 5, ll 15-52 and col. 7, ll 40-48, wherein just-in-time compiler heuristics, JIT compiler functions in which “Both types of profiling data help a JIT compiler optimize compiled code by predicting likely execution paths… A point within application execution is selected as the snapshot point, and an embodiment configures a snapshot handler to be triggered when application execution reaches the snapshot point. One embodiment receives the selected snapshot point during process VM initialization, for example as a parameter in a VM startup command or in a configuration file” (col. 7, ll 30-47) are disclosed; as taught by Sundaresan.) Therefore, it would have been obvious to a person of ordinary skill in the computer art before the effective filing date of the claimed invention to incorporate the Sundaresan teachings in the Ruff system. Skilled artisan would have been motivated to incorporate the system of compilation strategy for a sharable application snapshot taught by Sundaresan in the Ruff system for effective flexible high-speed generation and formatting of application-specified strings. In addition, both of the references (Ruff and Sundaresan) teach features that are directed to analogous art and they are directed to the same field of endeavor, such as data format conversion. This close relation between both of the references highly suggests an expectation of success. As per claim 10 , the combination of Ruff and Sundaresan discloses determining, based on a return from a function call, that no subsequent function in the call stack performs a read or write operation on the data structure; (See paras. 61-63, 74, wherein programming language syntax, command syntax are disclosed, also See paras. 674, 897, 1053, wherein write commands and JIT complier are disclosed; as taught by Ruff.) and inserting a deletion operation within the bytecode instructions that deletes the data structure. (See paras. 674, 680, 867, wherein processing bytecode, executing instruction process in which “the bytecode can be run by a special interpreter. Typically, the bytecode is processed by a just-in-time (JIT) compiler that can customize the code for a specific operating system and CPU that is running the code, although it can also be processed and compiled at installation or at some other time” [0674] are disclosed, also See paras. 56, 365, 564, wherein remove, delete operations are disclosed; as taught by Ruff.) 07-21-aia AIA Claim s 5-7, 11-13 and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Ruff et al. (U.S. PGPub 2016/0062954; hereinafter “Ruff”) in view of Sundaresan et al. (U.S. Patent 11,188,364; hereinafter “Sundaresan”) and further in view of Wu et al. (U.S. PGPub 2017/0091220; hereinafter “Wu”) . As per claims 5 and 18 , the combination of Ruff and Sundaresan fails to disclose wherein the first format is a flattened format and the second format is an expanded format, and wherein the one or more operators inserted into the received program instructions convert the data structure from the flattened format to the expanded format upon detecting a write operation in a subsequent function call. On the other hand, Wu teaches wherein the first format is a flattened format and the second format is an expanded format, and wherein the one or more operators inserted into the received program instructions convert the data structure from the flattened format to the expanded format upon detecting a write operation in a subsequent function call. (See paras. 29, 72, wherein expansion component function for converting flattened data into complex structure attributes, expanding flattened data process are disclosed; as taught by Wu.) Therefore, it would have been obvious to a person of ordinary skill in the computer art before the effective filing date of the claimed invention to incorporate the Wu teachings in the combination of Ruff and Sundaresan system. Skilled artisan would have been motivated to incorporate the system of converting complex structure objects into flattened data taught by Wu in the combination of Ruff and Sundaresan system for effective flexible high-speed generation and formatting of application-specified strings. In addition, both of the references (Ruff, Sundaresan, and Wu) teach features that are directed to analogous art and they are directed to the same field of endeavor, such as data format conversion. This close relation between both of the references highly suggests an expectation of success. As per claims 6 and 19 , the combination of Ruff and Sundaresan fails to disclose wherein the conversion of the data structure from the flattened format to the expanded format is performed by calling an expansion function that executes the conversion prior to a transition between function calls. On the other hand, Wu teaches wherein the conversion of the data structure from the flattened format to the expanded format is performed by calling an expansion function that executes the conversion prior to a transition between function calls. (See paras. 29, 72, wherein expansion component function for converting flattened data into complex structure attributes, expanding flattened data process are disclosed; as taught by Wu.) See claims 5 and 18 for motivation above. As per claims 7 and 20 , the combination of Ruff and Sundaresan fails to disclose wherein the flattened format stores the data structure in a contiguous block of memory, and wherein the expanded format stores the data structure in a tree structure using pointers to one or more memory locations. On the other hand, Wu teaches wherein the flattened format stores the data structure in a contiguous block of memory, and wherein the expanded format stores the data structure in a tree structure using pointers to one or more memory locations. (See Figs. 17-18, paras. 29, 85, 160, wherein flattened data stored in data storage, data structure, expanding flattened data files into complex structure associated with set of objects in which “the set of flattened data files creates a snapshot of a system configuration associated with a first computing device. The configuration capture component receives the set of flattened data files from a cloud or other storage device via an Internet connection. The expansion component 324 converts the flattened data files back into the original set of objects including the complex structure attributes to recreate the original system configuration data” [0085] are disclosed; as taught by Wu.) See claims 5 and 18 for motivation above. As per claim 11 , the combination of Ruff and Sundaresan discloses bytecode instructions. (See paras. 84, 673, wherein bytecode instructions are disclosed; as taught by Ruff.) However, the combination of Ruff and Sundaresan fails to disclose wherein the first format is a contiguous block of memory and the second format is a non-contiguous block of memory, and wherein the one or more instructions inserted into the compiled program instructions convert the data structure from the contiguous block of memory to the non-contiguous block of memory upon detecting a write operation in a subsequent function call. On the other hand, Wu teaches wherein the first format is a contiguous block of memory and the second format is a non-contiguous block of memory, and wherein the one or more instructions inserted into the compiled program instructions convert the data structure from the contiguous block of memory to the non-contiguous block of memory upon detecting a write operation in a subsequent function call. (See paras. 29-31, 72, wherein expansion component function for converting flattened data into complex structure attributes, expanding flattened data process are disclosed; as taught by Wu.) Therefore, it would have been obvious to a person of ordinary skill in the computer art before the effective filing date of the claimed invention to incorporate the Wu teachings in the combination of Ruff and Sundaresan system. Skilled artisan would have been motivated to incorporate the system of converting complex structure objects into flattened data taught by Wu in the combination of Ruff and Sundaresan system for effective flexible high-speed generation and formatting of application-specified strings. In addition, both of the references (Ruff, Sundaresan, and Wu) teach features that are directed to analogous art and they are directed to the same field of endeavor, such as data format conversion. This close relation between both of the references highly suggests an expectation of success. As per claim 12 , the combination of Ruff and Sundaresan fails to disclose wherein the first format of the data structure is a flattened format represented as an array of elements. On the other hand, Wu teaches wherein the first format of the data structure is a flattened format represented as an array of elements. (See paras. 29, 72, 99, wherein array of attributes, expansion component function for converting flattened data into complex structure attributes, expanding flattened data process are disclosed; as taught by Wu.) See claim 11 for motivation above. As per claim 13 , the combination of Ruff and Sundaresan fails to disclose wherein the first format is a flattened format and the second format is an expanded format, and wherein the data structure is passed by reference between function calls in the flattened format if a write operation is not detected. On the other hand, Wu teaches wherein the first format is a flattened format and the second format is an expanded format, and wherein the data structure is passed by reference between function calls in the flattened format if a write operation is not detected. (See Figs. 17-18, paras. 29-31, 85, 160, wherein flattened data stored in data storage, data structure, expanding flattened data files into complex structure associated with set of objects in which “the set of flattened data files creates a snapshot of a system configuration associated with a first computing device. The configuration capture component receives the set of flattened data files from a cloud or other storage device via an Internet connection. The expansion component 324 converts the flattened data files back into the original set of objects including the complex structure attributes to recreate the original system configuration data” [0085] are disclosed; as taught by Wu.) See claim 11 for motivation above. Conclusion 07-39 AIA THIS ACTION IS MADE FINAL. 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 LIN LIN M HTAY whose telephone number is (571)272-7293. The examiner can normally be reached on M-F, 7am-3pm, PST. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kavita Stanley can be reached on (571)272-83528352. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /L. L. H./ Examiner, Art Unit 2153 /KAVITA STANLEY/ Supervisory Patent Examiner, Art Unit 2153 Application/Control Number: 18/974,318 Page 2 Art Unit: 2153 Application/Control Number: 18/974,318 Page 3 Art Unit: 2153 Application/Control Number: 18/974,318 Page 4 Art Unit: 2153 Application/Control Number: 18/974,318 Page 5 Art Unit: 2153 Application/Control Number: 18/974,318 Page 6 Art Unit: 2153 Application/Control Number: 18/974,318 Page 7 Art Unit: 2153 Application/Control Number: 18/974,318 Page 8 Art Unit: 2153 Application/Control Number: 18/974,318 Page 9 Art Unit: 2153 Application/Control Number: 18/974,318 Page 10 Art Unit: 2153 Application/Control Number: 18/974,318 Page 11 Art Unit: 2153 Application/Control Number: 18/974,318 Page 12 Art Unit: 2153 Application/Control Number: 18/974,318 Page 13 Art Unit: 2153 Application/Control Number: 18/974,318 Page 14 Art Unit: 2153 Application/Control Number: 18/974,318 Page 15 Art Unit: 2153 Application/Control Number: 18/974,318 Page 16 Art Unit: 2153 Application/Control Number: 18/974,318 Page 17 Art Unit: 2153 Application/Control Number: 18/974,318 Page 18 Art Unit: 2153
Read full office action

Prosecution Timeline

Dec 09, 2024
Application Filed
Jan 13, 2026
Non-Final Rejection mailed — §103
Mar 19, 2026
Applicant Interview (Telephonic)
Mar 19, 2026
Examiner Interview Summary
Mar 27, 2026
Response Filed
Jun 18, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12681950
SYSTEMS, METHODS, AND APPARATUSES FOR COMBINING, INTERPRETING, AND DISTRIBUTING NON-UNIFORM DATASETS INTO STRUCTURED DATASETS
2y 8m to grant Granted Jul 14, 2026
Patent 12619633
FAST DATABASE SCALING UTILIZING A DECOUPLED STORAGE AND COMPUTE ARCHITECTURE
4y 4m to grant Granted May 05, 2026
Patent 12487865
Efficient Data Encoding And Processing In A Storage Network
4y 3m to grant Granted Dec 02, 2025
Patent 12468724
DATA PROCESSING METHOD, APPARATUS, AND DEVICE, AND STORAGE MEDIUM
1y 4m to grant Granted Nov 11, 2025
Patent 12461929
DEEP MACHINE LEARNING CONTENT ITEM RANKER
2y 6m to grant Granted Nov 04, 2025
Study what changed to get past this examiner. Based on 5 most recent grants.

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

3-4
Expected OA Rounds
72%
Grant Probability
97%
With Interview (+24.7%)
3y 3m (~1y 8m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 301 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