Prosecution Insights
Last updated: July 17, 2026
Application No. 18/397,777

METHODS AND SYSTEMS FOR SPREADSHEET TO DATABASE CONVERSION

Final Rejection §103
Filed
Dec 27, 2023
Examiner
MERCADO, GABRIEL S
Art Unit
2171
Tech Center
2100 — Computer Architecture & Software
Assignee
Highradius Corporation
OA Round
2 (Final)
42%
Grant Probability
Moderate
3-4
OA Rounds
11m
Est. Remaining
68%
With Interview

Examiner Intelligence

Grants 42% of resolved cases
42%
Career Allowance Rate
87 granted / 205 resolved
-12.6% vs TC avg
Strong +26% interview lift
Without
With
+26.1%
Interview Lift
resolved cases with interview
Typical timeline
3y 5m
Avg Prosecution
26 currently pending
Career history
248
Total Applications
across all art units

Statute-Specific Performance

§101
2.2%
-37.8% vs TC avg
§103
88.2%
+48.2% vs TC avg
§102
2.4%
-37.6% vs TC avg
§112
2.6%
-37.4% vs TC avg
Black line = Tech Center average estimate • Based on career data from 205 resolved cases

Office Action

§103
DETAILED ACTION This office action is responsive to communication(s) filed on 1/28/2026. 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 . Claims Status Claims 1-18 are pending and are currently being examined. Claims 1 and 16 are independent. Claims 19-20 are newly canceled. 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 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. Claim(s) 1-4, 7-16, and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over DeNeui; Alexander W. et al. (hereinafter DeNeui –US 20230342166 A1) in view of Utkarsh; Deepanshu et al. (hereinafter Utkarsh – US 11966392 B1). Independent Claim 1: DeNeui teaches: A method for processing a spreadsheet formula, the method comprising: (teaches spreadsheet formula, because a document, e.g., document 3014, contains formulas, ¶ 112 and fig. 30, and the document may be a spreadsheet, ¶¶ 337, 339 and 506. At least one visual example is given as table 4000 in fig. 40, including a column formula, ¶ 299) receiving a first formula; (formulas are stored in a document 2214 stored on memory, e.g., at a server, and are executable and converted, ¶¶ 238 and 468, and are necessarily received, e.g., from the memory, in order to execute or convert the formula, ¶¶ 238 and 468) generating an abstract syntax tree using at least the first formula; (a formula is converted to an abstract syntax tree (AST), ¶ 468. This is necessarily reflective of "generating an abstract syntax tree using at least the first formula" because the process of conversion is the generation.) generating an expression tree using at least the abstract syntax tree, (see ¶ 468. Paragraph 468 describes a process of generating an expression tree from, or using, an abstract syntax tree (AST), particularly during the semantic analysis phase of a compiler. It describes a form of semantic analysis that “decorates” the AST with type information through a top-down, or "push-down," propagation of expected types. It refines an existing AST into a more specific, decorated form that functions as an expression tree. The final expression tree is the semantically verified AST, enhanced with all the necessary type information.) the expression tree being organized hierarchically; (the expression tree, see ¶ 468. An expression tree is hierarchical by nature because its structure mirrors the nested and dependent relationships of a mathematical or logical expression. This is achieved by organizing operands and operators into parent-child relationships, where the parent node represents an operation that depends on the results of its child nodes.) obtaining a first algebra expression using at least the expression tree, wherein obtaining the first algebra expression comprises transforming the expression tree into a set of relational algebra expressions representing data manipulation operations; (as explained above, formulas are in the form of expression tree, ¶ 468. Furthermore, the user may employ formulas [e.g., employing formulas in the expression tree, ¶ 468, that is, using at least the expression tree] and rules to sort, pivot, aggregate and perform other analyses. For example, using the @reference functionality, as described herein, the user may be able to query across these plurality of data sources and data types to pull all data that relates to a four bedroom house (“@four bedroom”), or financing status (@foreclosure), or location (@78705), and so forth, ¶ 507. These queries can be in the form of SQL queries, ¶ 348, for interacting with database data sources, e.g., ¶¶ 358 and 365. SQL implies obtaining a first algebra expression because SQL queries implicitly rely on relational “algebra” because this is the formal, procedural foundation for relational databases. While SQL is a high-level, declarative language describing what data to retrieve, it interacts with a Database Management System (DBMS) that translates the SQL queries into relational algebra operations [algebra expression] to determine how to execute them efficiently. Thus, SQL and the DBMS work together: SQL communicates user requests, and the DBMS, using relational algebra, optimizes and performs the physical data management. These elements effectively teaches that obtaining the first algebra expression involves transforming the expression tree into a set of relational algebra expressions, as they outline how SQL queries and formulas (modeled as expression trees) act as declarative commands. These commands are subsequently translated by the system into relational algebra—the foundational, procedural logic required for data manipulation operations like sorting, pivoting, and aggregation) generating at least a first database query using at least the first algebra expression (The generating at least a first database query using at least the first algebra expression is implied in employing specific formulas to query database sources, see above explanation above for the obtaining a first algebra expression limitation and ¶¶ 348, 358, 365, 468 and 507) executing the first database query against at least a first data source to obtain a first result; (The executing the first database query against at least a first data source to obtain a first result is implied in employing specific formulas to query database sources, see above explanation above for the obtaining a first algebra expression limitation and ¶¶ 348, 358, 365, 468 and 507, which results in data being obtained from the database and used by the user, e.g., as reflected in data populated in a pivot table, ¶ 507) and processing the first result to provide an output. (data being obtained from the database and used by the user, e.g., as reflected in data populated in a pivot table [output], ¶ 507) DeNeui does not appear to expressly teach, but Utkarsh teaches: that the query is generated “by mapping operators of the set of relational algebra expressions to corresponding database constructs” (a query can be generated in the following steps––receiving a state specification, which is converted to an abstract syntax tree, which is then canonicalized [transformed] into a hierarchy, which is lowered into [converted] to worksheet algebra, then to relational algebra, resulting into the generated database query, col 4:25-33). Accordingly, it would have been obvious to a person having ordinary skill in the art, before the effective filing date of the claimed invention, to further modify the method of DeNeui to include that the query is generated “by mapping operators of the set of relational algebra expressions to corresponding database constructs”, as taught by Utkarsh. One would have been motivated to make such a combination in order to implement the generating of database queries upon request in DeNeui in a known and effective way, Utkarsh col 4:25-33, which transforms tree based expressions that can be transformed into relational algebra usable to offload complex query generating steps to query manager, e.g., of an intermediary system to increase computing efficiency and usability, Utkarsh cols 3:29-40,9:60-10:11. Claim 2: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising processing one or more data sources using at least the first formula. (as explained above, formulas are employed and rules to sort, pivot, aggregate and perform other analyses, for example for querying across a plurality of data sources and data types to pull data [processing], ¶ 507.) Claim 3: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising traversing the abstract syntax tree to generate the expression tree. (generating an expression tree from, or using, an abstract syntax tree (AST), particularly during the semantic analysis phase of a compiler. It describes a form of semantic analysis that “decorates” the AST with type information through a top-down, or "push-down," propagation of expected types, ¶ 468. Generating an expression tree by decorating an abstract syntax tree (AST) with a push-down propagation of expected output types is a way of describing a top-down tree traversal (traversing).) Claim 4: The rejection of claim 1 is incorporated. DeNeui further teaches: wherein the abstract syntax tree is organized hierarchically. (¶ 468. The decorating process relies on this hierarchy to correctly assign types, starting from a high-level goal and refining the requirements down to individual components.) Claim 7: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising optimizing the first algebra expression. (As explained above, the queries can be in the form of SQL queries, ¶ 348. Furthermore, a formula engine 8202 includes operations to reduce query calculation efforts, to reduce memory utilization, and/or to reduce a communication value such as an external communication value (e.g., communications to the document server 8102 and/or to an external data source 8126). Example and non-limiting reduced executable objects include an indexing operation (e.g., reducing calculations required to complete a query), a sort order operation (e.g., changing a sort order and/or applying a sort to a table object, one or more table columns, etc.), and/or a filter order operation (e.g., applying a more restrictive filter before a less restrictive filter, and/or applying a filter before a sort in a series of operations), see ¶ 427. Together, these teachings describe techniques that are inherently reflective of optimizing a relational algebra expression because modern SQL query optimizers translate SQL queries into relational algebra and apply logical equivalences to produce a more efficient execution plan. The goal is to reduce the amount of data processed at each step, thereby minimizing computational effort, memory usage, and I/O communication, which is exactly what the engine's operations are designed to do.) Claim 8: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising establishing a connection to the first data source. (external data sources are queried, necessarily based on the connectivity to one or more devices, ¶ 408) Claim 9: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising executing the first database query against a second data source to obtain the first result. (a query is executed across a “plurality of data sources” [first database query again a second data source] to obtain the results, e.g., appearing on a pivot table, ¶ 507) Claim 10: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising providing an interface for displaying the output. (the unified document surface application circuit 8116 displays relevant portions of results from the query execution operation (e.g., portions visible to the user based on the user location within the document 8106) in the document view 8118, ¶ 428) Claim 11: The rejection of claim 10 is incorporated. DeNeui further teaches: wherein the interface comprises a tabular format allowing for navigation and sorting. (as mentioned for claim 1, the document can be a spreadsheet. Furthermore, ‘once the linked tables are functional within the unified document surface, the user may employ formulas and rules to sort [sorting], pivot, aggregate and perform other analyses. For example, using the @reference functionality, as described herein, the user may be able to query across these plurality of data sources and data types to pull all data that relates to a four bedroom house (“@four bedroom”), or financing status (@foreclosure), or location (@78705), and so forth. A pivot table may be able to produce a listing of all homes listed for sale in a given zip code that also appear in a publicly available crime statistics database indicating no burglary within the last 24 months’, ¶ 507. This description inherently reflects a tabular format because the user actions—querying, sorting, pivoting, and aggregating—are all core functions for manipulating data organized in columns and rows. Even when drawing from multiple, disparate data sources, the process brings the selected information together into a single, unified grid for analysis. The @reference function is a querying mechanism that allows the user to navigate [navigation] the aggregated data. ) Claim 12: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising updating the output in response to a change at the first data source. (As the data changes (e.g., additional sales are recorded at a retail organization), the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501) Claim 13: The rejection of claim 12 is incorporated. DeNeui further teaches: further comprising executing the first database query in response to the change at the first data source. (As the data changes (e.g., additional sales are recorded at a retail organization), the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501. The automatic update of a linked table in a unified document surface inherently reflects executing a query because a command must be issued to the source to retrieve the new data.) Claim 14: The rejection of claim 12 is incorporated. DeNeui further teaches: further comprising: associating first data of at least the first data source with at least the first database query; (As the data changes (e.g., additional sales are recorded at a retail organization), the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501. The automatic update of a linked table in a unified document surface inherently reflects executing a query [associating first data] because a command must be issued to the source to retrieve the new data) detecting second data has been added to at least the first data source; (As the data changes (e.g., additional sales are recorded at a retail organization) [detecting second data has been added], the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501. The automatic update of a linked table in a unified document surface inherently reflects executing a query because a command must be issued to the source to retrieve the new data) determining whether the second data is associated with at least the first query; (As the data changes (e.g., additional sales are recorded at a retail organization), the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501. The automatic update of a linked table in a unified document surface inherently reflects executing a query [determining whether the second data is associated] because a command must be issued to the source to retrieve the new data) and based on a determination the second data is associated with at least the first query, updating the output. (As the data changes (e.g., additional sales are recorded at a retail organization), the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501. The automatic update of a linked table in a unified document surface inherently reflects executing a query because a command must be issued to the source to retrieve the new data.) Claim 15: The rejection of claim 1 is incorporated. DeNeui further teaches: further comprising prioritizing and executing a queue of queries, the queue of queries comprising the first query. (a procedure includes determining a snapshot, for example updating the operation log 6608 with a confirmed updated change value. It can be seen that the updated snapshot creates a document equivalent to the document created by the operation log 6608 with the confirmed updated change value applied, for example the document as initially provided to client device(s) and with edits from user(s) applied. The creation of a snapshot allows for management of document data and efficiency, for example by periodically grouping information and calculations into a more efficient form (e.g. less data, fewer processor operations, better sorting such as improved sort order, application of data compression, etc.) than an operation sequence as entered by a user. An example procedure further includes providing the snapshot as the operation log 6608 (e.g. to a client computing device accessing the document), ¶ 402. The process of determining and providing a snapshot inherently reflects prioritizing and executing a queue of queries in several key ways. The operation log represents the queue of individual queries (user edits), while the snapshot process itself is the execution of these queries) Independent Claim 16: Claim(s) 16 is directed to an apparatus for accomplishing the steps of the method in claim 1, and is rejected using similar rationale(s). Even if claim 16 excluded a multi-device setup (e.g., an apparatus and a separate intermediary system), integrating known elements into a single physical unit is generally considered prima facie obvious under MPEP § 2144.04. A person of ordinary skill in the art expects each integrated element to perform its established function without producing unexpected or synergistic results. It was well within the capabilities of a person having ordinary skill in the art to have realized that offloading processing tasks to specialized components [e.g., query manager] within a single system would still increase efficiency by allowing parallel execution, reducing bottlenecks, and freeing up the main processor to handle other critical operations. Claim 18: The rejection of claim 16 is incorporated. DeNeui further teaches: wherein the set of instructions further cause the apparatus to update the output in response to a change at the first data source. (As the data changes (e.g., additional sales are recorded at a retail organization), the linked tables within the unified document surface may automatically update to indicate the new information, ¶ 501) Claim(s) 5-6 and 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over DeNeui (US 20230342166 A1) in view of Utkarsh (US 11966392 B1), as applied to claims 1 and 16 above, and further in view of Conrad; Andrew et al. (hereinafter Conrad – US 20100145946 A1). Claim 5: The rejection of claim 1 is incorporated. DeNeui does not appear to expressly teach, but Conrad teaches: further comprising removing redundant elements from the expression tree (removing a redundant first portion of the expression tree, removing a second portion of the expression tree that is not relevant to a data source to which the query is directed, modifying a third portion of the expression tree into a canonical form, and/or evaluating a sub-expression of the expression tree, ¶ 9). Accordingly, it would have been obvious to a person having ordinary skill in the art, before the effective filing date of the claimed invention, to modify the method of DeNeui to include further comprising removing redundant elements from the expression tree, as taught by Conrad. One would have been motivated to make such a combination in order to improve the efficiency of the method by enabling data sources to be accessed more efficiently, by reducing the tree’s complexity, Conrad ¶¶ 3 and 61. Claim 6: The rejection of claim 1 is incorporated. DeNeui does not appear to expressly teach, but Conrad teaches: further comprising identifying one or more common expressions from the expression tree. (removing a redundant first portion of the expression tree, removing a second portion of the expression tree that is not relevant to a data source to which the query is directed, modifying a third portion of the expression tree into a canonical form, and/or evaluating a sub-expression of the expression tree, ¶ 9. For purposes of compact prosecution only, the examiner interprets the limitation(s) as being directed to the expressions that are “related to each other” in a context. As such, the first and second portions [expressions] are common [“related to each”] in that they are both subject to being “removed”) Accordingly, it would have been obvious to a person having ordinary skill in the art, before the effective filing date of the claimed invention, to modify the method of DeNeui to include further comprising identifying one or more common expressions from the expression tree, as taught by Conrad. One would have been motivated to make such a combination in order to improve the efficiency of the method by enabling data sources to be accessed more efficiently, by reducing the tree’s complexity, Conrad ¶¶ 3 and 61. Claim 17: The rejection of claim 16 is incorporated. Claim(s) 17 is directed to an apparatus for accomplishing the steps of the method in claim 5, and is rejected using similar rationale(s). Response to Arguments 112(b) rejection for claim 6 has been overcome by amendment. Applicant's 102/103 arguments filed have been fully considered but they are not persuasive or are otherwise rendered moot in view of the new grounds of rejection above. First, concerning claim 1 and 16, the applicant alleges that “In DeNeui (and standard SQL architecture), the SQL query is generated first. Only after the SQL is sent to the Database Management System (DBMS) does the DBMS potentially optimize the query using relational algebra” and that “DeNeui's paragraph 468 specifically discusses "decorating" an AST with type information, but never mentions converting that AST into a relational algebra format. Paragraphs 348 and 507 of DeNeui discuss executing SQL, but do not disclose the claimed method of constructing that SQL via an intermediate relational algebra expression.” The examiner respectfully disagrees because: The applicant doesn’t provide evidence to show that, in the DeNeui, SQL is generated first. As explained in the 102 rejection, formulas are in the form of expression tree, ¶ 468. Furthermore, the user may employ formulas [e.g., employing formulas in the expression tree, ¶ 468, that is, using at least the expression tree] and rules to sort, pivot, aggregate and perform other analyses. For example, using the @reference functionality, as described herein, the user may be able to query across these plurality of data sources and data types to pull all data that relates to a four bedroom house (“@four bedroom”), or financing status (@foreclosure), or location (@78705), and so forth, ¶ 507. The above shows that SQL is not generated first because the “queries” described are simply user-friendly text tags––like @four bedroom or @78705––used to filter or retrieve data from the expression tree, rather than actual backend database command. This implies the system interprets these high-level user inputs dynamically, then generates relational algebra and SQL queries, rather than relying on pre-existing SQL queries. As explained in the 103 rejection section above, DeNeui also teaches wherein obtaining the first algebra expression comprises transforming the expression tree into a set of relational algebra expressions representing data manipulation operations; (…These elements effectively teaches that obtaining the first algebra expression involves transforming the expression tree into a set of relational algebra expressions, as they outline how SQL queries and formulas (modeled as expression trees) act as declarative commands. These commands are subsequently translated by the system into relational algebra—the foundational, procedural logic required for data manipulation operations like sorting, pivoting, and aggregation) Second, the applicant alleges that DeNeui doesn’t directly teach that the query is generated “by mapping operators of the set of relational algebra expressions to corresponding database constructs”. Remarks Pg(s) 7-9. However, this argument is rendered moot in view of the new grounds of rejection presented above. Third, the applicant relies on the arguments above to allege patentability of the remaining claims. Remarks Pg(s) 10. The examiner respectfully disagrees for the same reasons provided above. 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. The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Below is a list of these references, including why they are pertinent: Wiles; Andrew US 20080294612 A1, is pertinent to claim 1 for disclosing An architecture integrates spreadsheet functionality into word processing and HTML tables. Its UI displays as a standard table when static, but reveals spreadsheet elements during editing. A spreadsheet functionality manager handles recalculations, formulas, sorting, and referencing. Users can enter formulas in cells or free-floating fields, selecting cell ranges to populate references for calculation. This description excludes automatic cell reference conversion into calculation queries, ¶ 15. Jouhier; Bruno Claude Jean-Marie US 20220222253 A1, is pertinent to claim 1 for disclosing a method including generating an abstract syntax tree from the source code, and translating the abstract syntax tree into a SQL statement corresponding to the database operation instruction, Abstract. Boucher; Melissa Ming-Sak et al. US 20170315979 A1, is pertinent to claim 1 for disclosing a method wherein a formula is converted to an abstract syntax tree (AST), ¶ 1403. Girijavallabhan; Sarath US 20180144002 A1, is pertinent to claim 1 for disclosing an example of a strongly-typed expression tree generated based on the partial abstract syntax tree, ¶ 24 and figs. 2A-2B. Any inquiry concerning this communication or earlier communications from the examiner should be directed to GABRIEL S MERCADO whose telephone number is (408)918-7537. The examiner can normally be reached Mon-Fri 8am-5pm (Eastern Time). 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, Kieu Vu can be reached at (571) 272-4057. 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. /Gabriel Mercado/Primary Examiner, Art Unit 2171
Read full office action

Prosecution Timeline

Dec 27, 2023
Application Filed
Oct 28, 2025
Non-Final Rejection mailed — §103
Jan 28, 2026
Response Filed
May 21, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12656927
POSITION INPUT TERMINAL WITH Z-POSITION DURATION-BASED AND Z-POSITION RANGE-BASED MODE SWITCHING
2y 9m to grant Granted Jun 16, 2026
Patent 12543983
SYSTEMS AND METHODS FOR EMOTION PREDICTION
3y 1m to grant Granted Feb 10, 2026
Patent 12535942
BLOWOUT PREVENTER SYSTEM WITH DATA PLAYBACK
5y 6m to grant Granted Jan 27, 2026
Patent 12511024
Multi-Application Interaction Method
2y 9m to grant Granted Dec 30, 2025
Patent 12498838
CONTEXT-AWARE ADAPTIVE CONTENT PRESENTATION WITH USER STATE AND PROACTIVE ACTIVATION OF MICROPHONE FOR MODE SWITCHING USING VOICE COMMANDS
2y 3m to grant Granted Dec 16, 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
42%
Grant Probability
68%
With Interview (+26.1%)
3y 5m (~11m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 205 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