Prosecution Insights
Last updated: May 29, 2026
Application No. 17/472,315

ENSEMBLE GENERATIVE ADVERSARIAL NETWORK BASED SIMULATION OF CARDIOVASCULAR DISEASE SPECIFIC BIOMEDICAL SIGNALS

Final Rejection §103
Filed
Sep 10, 2021
Priority
May 03, 2021 — IN 202121020228
Examiner
ANDERSON-FEARS, KEENAN NEIL
Art Unit
1687
Tech Center
1600 — Biotechnology & Organic Chemistry
Assignee
Tata Consultancy Services Limited
OA Round
3 (Final)
6%
Grant Probability
At Risk
4-5
OA Rounds
0m
Est. Remaining
56%
With Interview

Examiner Intelligence

Grants only 6% of cases
6%
Career Allowance Rate
1 granted / 17 resolved
-54.1% vs TC avg
Strong +50% interview lift
Without
With
+50.0%
Interview Lift
resolved cases with interview
Typical timeline
4y 2m
Avg Prosecution
23 currently pending
Career history
65
Total Applications
across all art units

Statute-Specific Performance

§101
3.4%
-36.6% vs TC avg
§103
74.8%
+34.8% vs TC avg
§102
3.4%
-36.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 17 resolved cases

Office Action

§103
DETAILED ACTION Applicant's response, filed 1/20/2026, has been fully considered. The following rejections and/or objections are either reiterated or newly applied. They constitute the complete set presently being applied to the instant application. Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Priority Acknowledgment is made of applicant’s claim for foreign priority under 35 U.S.C. 119 (a)-(d). Receipt is acknowledged of certified copies of papers required by 37 CFR 1.55. As such the effective filing date of claims 1-12 is 5/3/2021. Claim Status Claims 1-12 are pending. Claims 1-12 are rejected. Claim Rejections - 35 USC § 103 Response to Amendment In view of applicant’s amendments to the claims a new examination of the claims under 35 U.S.C. 103 has been performed and is provided below. 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 (i.e., changing from AIA to pre-AIA ) 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. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 1, 5 and 9 are rejected under 35 U.S.C. 103 as being unpatentable over Zhu et al. (Scientific Reports (2019) 1-11; previously cited), Golmohammadi et al. (Signal Processing in Medicine and Biology (2020) Chapt. 8; previously cited), Brownlee et al. (MachineLearningMastery.com. (2019) 1-9; newly cited), and Fu et al. (arXiv preprint (2019) 1-33; newly cited). Claim 1 is directed to method of simulating biological signal time series data via the use of randomly sample numbers from a Gaussian distribution and a set of reference training data to train an ensemble of generative adversarial networks and then combine the output of each network to obtain said simulated data. Claim 5 is directed to a system that is directed to a method of simulating biological signal time series data via the use of randomly sample numbers from a Gaussian distribution and a set of reference training data to train an ensemble of generative adversarial networks and then combine the output of each network to obtain said simulated data. Claim 9 is directed to a computer program product that is directed to a method of simulating biological signal time series data via the use of randomly sample numbers from a Gaussian distribution and a set of reference training data to train an ensemble of generative adversarial networks and then combine the output of each network to obtain said simulated data. Zhu et al. teaches on page 6, paragraph 5 “In the experiment, we used a computer with an Intel i7-7820X (8 cores) CUP, 16 GB primary memory, and a GeForce GTX 1080 Ti graphics processing unit (GPU). The operating system is Ubuntu 16.04LTS. We implemented the model by using Python 2.7, with the package of PyTorch and NumPy. Compared to the static platform, the established neural network in PyTorch is dynamic. The result of the experiment is then displayed by Visdom, which is a visual tool that supports PyTorch and NumPy”, which reads on a processor implemented method, a system comprising: one or more hardware processors; one or more communication interfaces; one or more data storage devices operatively coupled to the one or more hardware processors and configured to store instructions configured for execution by the one or more hardware processors, and a computer program product comprising a non-transitory computer readable medium having a computer readable program embodied therein, wherein the computer readable program, when executed on a computing device, causes the computing device. Further on page 2, paragraph 2 Zhu et al. teaches “The generative adversarial network (GAN) proposed by Goodfellow in 2014 is a type of deep neural network that comprises a generator and a discriminator. The generator produces data based on the noise data sampled from a Gaussian distribution which is fitted to the real data distribution as accurately as possible. The inputs for the discriminator are real data and the results produced by the generator, where the aim is to determine whether the input data are real or fake”, on page 10, paragraph 4 “To address the lack of effective ECG data for heart disease research, we developed a novel deep learning model that can generate ECGs from clinical data without losing the features of the existing data” and page 2, paragraph 1 “it is very necessary to develop a suitable method for producing practical medical samples for disease research, such as heart disease”, which reads on receiving as input, via one or more hardware processors, (i) a first set of real numbers selected randomly from a unit Gaussian distribution and (ii) a second set of reference training data comprising time series data representing a biomedical signal corresponding to a cardiovascular disease condition, each time series data including a plurality of complete cardiac cycles. Zhu et al. teaches in the abstract “we propose a generative adversarial network (GAN), which is composed of a bidirectional long short-term memory (LSTM) and convolutional neural network (CNN)” reading on wherein the pair of GANs includes (i) a Long Short-Term Memory GAN (LSTM-GAN) configured to generate a Heart Rate Variability (HRV) pattern associated with the cardiovascular disease condition and (ii) a Deep Convolutional GAN (DCGAN) configured to create a morphology of a representative cardiac cycle from the plurality of complete cardiac cycles, and wherein each GAN in the pair of GANs includes a generator and a discriminator. Zhu et al. does not teach an ensemble Generative Adversarial Network (GAN) comprising the pair of GANs and simulating a time series data representing the biomedical signal by combining an output from each GAN in the pair of GANs. Golmohammadi et al. teaches on page 237, paragraph 3 “Generative adversarial networks (GANs) have emerged as powerful techniques for learning generative models based on game theory. Generative models use an analysis by synthesis approach to learn the essential features of data required for high-performance classification using an unsupervised approach. We introduce techniques to stabilize the training of DCGAN for spatio-temporal modeling of EEGs”, on page 249, paragraph 4 “GANs use a game theory approach to find the Nash equilibrium between a generator and discriminator network [75]. A basic GAN structure consists of two neural networks: a generative model G that captures the data distribution, and a discriminative model D that estimates the probability that a sample came from the training data rather than G. These two networks are trained simultaneously via an adversarial process. In this process, the generative network, G, transforms the input noise vector z to generate synthetic data G(z). The training objective for G is to maximize the probability of D making a mistake about the source of the data. The output of the generator is a synthetic EEG—data that is statistically consistent with an actual EEG but is fabricated entirely by the network. The second network, which is the discriminator, D,takes as input either the output of G or samples from real-world data. The output of D is a probability distribution over possible input sources”, reading on wherein the ensemble GAN performs a spatio-temporal modeling of the biomedical signals to regenerate artificial data. Additionally it would be inherent to the method that a model which constructs spatio-temporal data from scratch would modify the length of the time interval and append the cardiac cycle on a time axis, thereby reading on modifying, via the one or more hardware processors, a length of the representative cardiac cycle generated by the DCGAN according to R-R interval distances generated by the LSTM-GAN, and appending, via the one or more hardware processors, the representative cardiac cycle on a time axis. Brownlee et al. teaches on page 5, under The Discriminator Model “The discriminator model takes an example from the domain as input (real or generated) and predicts a binary class label of real or fake (generated). The real example comes from the training dataset. The generated examples are output by the generator model. The discriminator is a normal (and well understood) classification model. After the training process, the discriminator model is discarded as we are interested in the generator”, reading on discarding the discriminator and retaining only the generator, once the training of the ensemble GAN is completed. Fu et al. teaches on page 15 the use of CGAN for VAR Time Series and specifically the definition of their model and autocorrelation parameters, their parameters for success. These are the autocorrelation between time series simulated and time series ground truth and works as a threshold for the model itself, reading on stopping training of the ensemble GAN upon identifying that the simulated time series data is within a predefined threshold when compared with the second set of reference training data. It would have been obvious at the time of invention to modify the teachings of Zhu et al. for a method for “automatically learning from existing data and then generating ECGs that follow the distribution of the existing data” to implement an ensemble of GANs, as it is well-understood within the art that multiple weak learners can outperform a single strong learner (Schapire et al. 1990), and simulate via the combination of an ensemble of GANs cardiovascular disease specific biomedical signals and cardiovascular disease specific biomedical signals, as specifically Zhu et al. teaches that their output is “a generated ECG sequence” and their method is directed to heart disease ECG data. It also would have been obvious at the time of first filing to modify the teachings of Zhu et al. for the use of GANs to generate biomedical signal information with the teachings of Golmohammadi et al. for the specific spatio-temporal modeling of biomedical signals and inherent modification and appending of simulation data as both methods are directed to the use of GANs in the generation of spatio-temporal biomedical data. Furthermore, it would have been obvious to combine the previous teachings with the teachings of both Brownlee et al. for the discarding of the discriminator and the teachings of Fu et al. for the stopping of training based on simulated data being within a predefined threshold compared to the original data, as the latter is a broad review of the conventional practices when using GANs and the latter is a GAN specially adapted to time series data which as described in the abstract shows “that CGAN is able to learn different kinds of normal and heavy tail distributions, as well as dependent structures of different time series and it can further generate conditional predictive distributions consistent with the training data distributions”. One would have had a reasonable expectation of success given that Zhu et al. expressly teaches an output of a generated ECG sequence and an ensemble of GANs could only be either a combination of the outputs or a choice between the outputs, and Golmohammadi et al. provides a review of methods using GANs and DCGANs for the same express purpose of generating biomedical spatio-temporal data. Finally, one would have had a reasonable expectation of success given that Brownlee et al. and Fu et al. are both directed to the use of GANs one being a review and the second being specifically applied to the same type of data simulation as the instant application. Therefore, it would have been obvious to one with ordinary skill in the art to incorporate the simulations via a combination of outputs and to be successful. Claims 2, 6, and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Zhu et al. (Scientific Reports (2019) 1-11), Golmohammadi et al. (Signal Processing in Medicine and Biology (2020) Chapt. 8), Brownlee et al. (MachineLearningMastery.com. (2019) 1-9; newly cited), and Fu et al. (arXiv preprint (2019) 1-33; newly cited) as applied to claims 1, 5 and 9 above, and further in view of McSharry et al. (Transactions on Biomedical Engineering (2003) 289-294) and Golany et al. (The Thirty-Third AAAI Conference on Artificial Intelligence (2019) 557-564). Claim 2 is directed to the method of claim 1 but further specifies that the training comprise the generation of RR-interval data that is then classified by the discriminator of the GAN and a representative cardiac cycle is generated by the GAN and subsequently classified, with this whole process being performed a predefined number of times for each training. Claim 6 is directed to the method of claim 5 but further specifies that the training comprise the generation of RR-interval data that is then classified by the discriminator of the GAN and a representative cardiac cycle is generated by the GAN and subsequently classified, with this whole process being performed a predefined number of times for each training. Claim 10 is directed to the method of claim 9 but further specifies that the training comprise the generation of RR-interval data that is then classified by the discriminator of the GAN and a representative cardiac cycle is generated by the GAN and subsequently classified, with this whole process being performed a predefined number of times for each training. Zhu et al., Golmohammadi et al., Brownlee et al., and Fu et al. teach the method of claims 1, system of claim 5, and CRM of claim 9 as described above. Zhu et al., Golmohammadi et al., Brownlee et al., and Fu et al. do not teach generating an R-R interval time series or generating a representative cardiac cycle specific to the cardiovascular disease condition and classifying said cycle as belonging to the cardiovascular disease condition or not. McSherry et al. teaches on page 290, column 2, paragraph 3 “The model generates a trajectory in a three-dimensional state–space with coordinates (x, y, z). Quasi-periodicity of the ECG is reflected by the movement of the trajectory around an attracting limit cycle of unit radius in the (x, y) plane. Each revolution on this circle corresponds to one RR-interval or heartbeat”, and in view of Zhu et al.’s use of GANs for creating “deep learning models that can generate ECGs from clinical data” and a “generator that produces data based on the noise data sampled from a Gaussian distribution which is fitted to the real data distribution as accurately as possible”, this reads on generating an R-R interval time series, by the generator of the LSTM-GAN, using the first set of real numbers by mapping the first set of real numbers to a time series. Zhu et al. further teaches on page 4, paragraph 4 “CNN has achieved excellent performance in sequence classification” and “Many successful deep learning methods applied to ECG classification and feature extraction are based on CNN or its variants. Therefore, the CNN discriminator is nicely suitable to the ECG sequences data”. Golany et al. teaches on page 558, column 1, paragraph 2 “We present the problem of personalized ECG classification, and present an algorithm requiring no patient-specific labeled examples. Specifically, we present PGAN, a personalized adversarial generative algorithm, to generate patient-specific ECG signals by training on arrhythmia present in labeled data over a general population and optimized to mimic the specific patient’s morphological cardiac waves”, which in view of the RR-interval data generation on McSherry et al. and the method of claims 1, 5 and 9 described by Zhu et al., read on classifying the generated R-R interval time-series as belonging to the cardiovascular disease condition or not, by the discriminator of the LSTM-GAN based on R-R interval distances computed using the second set of reference training data and generating the representative cardiac cycle specific to the cardiovascular disease condition, by the generator of the DCGAN, using the first set of real numbers and classifying the generated representative cardiac cycle as belonging to the cardiovascular disease condition or not, by the discriminator of the DCGAN based on the cardiac cycle computed using the second set of reference training data. Training epochs and predefined thresholds for training are obvious. It would have been obvious at the time of invention to modify the teachings of Zhu et al., Golmohammadi et al., Brownlee et al., and Fu et al. for the method, system, and CRM of claims 1, 5, and 9 with those of McSherry et al. for dynamic ECG modeling of RR-interval data as the former cites the latter within the references and Golany et al., which provides a method for classification, is well within the same field and is simply using updated methods of classification. One would have had a reasonable expectation of success given that all three studies fall into the same field, are working largely speaking with the same methods, just minor variations of said methods, and at least one of the papers cites another of the papers. Therefore, it would have been obvious to one with ordinary skill in the art to incorporate the teachings of each and to be successful. Claims 3, 7, and 11 are rejected under 35 U.S.C. 103 as being unpatentable over Zhu et al. (Scientific Reports (2019) 1-11), Golmohammadi et al. (Signal Processing in Medicine and Biology (2020) Chapt. 8), Brownlee et al. (MachineLearningMastery.com. (2019) 1-9; newly cited), Fu et al. (arXiv preprint (2019) 1-33; newly cited), McSharry et al. (Transactions on Biomedical Engineering (2003) 289-294), and Golany et al. (The Thirty-Third AAAI Conference on Artificial Intelligence (2019) 557-564)as applied to claims 2, 6 and 10 above, and further in view of Tran et al. (Proceedings of the European conference on computer vision (2018) 1-16). Claim 3 is directed to the method of claim 2 and thus the method of claim 1, but further specifies that there be a step of periodically validating the training via a simulation of data from the combination of the outputs from each GAN, and this be done a predefined number of times per training. Claim 7 is directed to the method of claim 2 and thus the method of claim 1, but further specifies that there be a step of periodically validating the training via a simulation of data from the combination of the outputs from each GAN, and this be done a predefined number of times per training. Claim 11 is directed to the method of claim 2 and thus the method of claim 1, but further specifies that there be a step of periodically validating the training via a simulation of data from the combination of the outputs from each GAN, and this be done a predefined number of times per training. Zhu et al., Golmohammadi et al., Brownlee et al., Fu et al., McSharry et al., and Golany et al. teach the method of claim 2 as previously described. Tran et al. teaches on page 10, paragraph 1 “We use Adam optimizer with learning rate lr = 0.001, and the exponent decay rate of first moment β1 = 0.8. The learning rate is decayed every 10K steps with a base of 0.9. The mini-batch size is 128. The training stops after 500 epochs. To have fair comparison, we carefully fine-tune other methods (and use weight decay during training if this achieves better results) to ensure they achieve their best results on the synthetic data”, reading on training, is set after crossing multiples of predefined value of training epochs. It would have been obvious at the time of invention to a person skilled within the art to modify the teachings of Zhu et al., Golmohammadi et al., Brownlee et al., Fu et al., McSharry et al., and Golany et al. for the method, system, and CRM of claims 2, 6, and 10 respectively with the teachings of Tran et al. for the use of training epochs in the optimization and validation as the latter teaches in the abstract “Our proposed GAN using these distance constraints, namely Dist-GAN, can achieve better results than state-of-the-art methods across benchmark datasets: synthetic, MNIST, MNIST-1K, CelebA, CIFAR-10 and STL-10 datasets”. One would have had a reasonable expectation of success given that the code is made available in the latter reference and it is directed to optimizing the training of GANs. Therefore, it would have been obvious to one with ordinary skill in the art to incorporate the validation step and to be successful. Claims 4, 8, and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Zhu et al. (Scientific Reports (2019) 1-11), Golmohammadi et al. (Signal Processing in Medicine and Biology (2020) Chapt. 8), Brownlee et al. (MachineLearningMastery.com. (2019) 1-9; newly cited), and Fu et al. (arXiv preprint (2019) 1-33; newly cited) as applied to claims 1, 5, and 9 above, and further in view of Morelli et al. (Sensors (2019) 1-14). Claim 4 is directed to the method of claim 1 but further specifies the use of cubic spline interpolation to modify the length of the representative cardiac cycle. Claim 4 is directed to the method of claim 1 but further specifies the use of cubic spline interpolation to modify the length of the representative cardiac cycle. Claim 4 is directed to the method of claim 1 but further specifies the use of cubic spline interpolation to modify the length of the representative cardiac cycle. Zhu et al., Golmohammadi et al., Brownlee et al., and Fu et al. teach the method of claim 1, system of claim 5, and CRM of claim 9 as previously described. Zhu et al., Golmohammadi et al., Brownlee et al., and Fu et al. do not teach the use of cubic spline interpolation to modify the length of the representative cardiac cycle. Morelli et al. teaches on page 2, paragraph 2 “In previous studies, the inconsistent RR-interval data were handled by reconstructing the missing values using nearest-neighbour, linear, cubic spline and piecewise cubic Hermite interpolation methods” and on page 3, paragraph 2 “Other interpolation methods maintain the original number of samples, but by manipulating the duration of RR-intervals, they also change the overall duration by some amount. There are several interpolation approaches useful for handling inconsistent RR-intervals, i.e., zero degree, linear and cubic spline”, reading on wherein the length of the representative cardiac cycle generated by the DCGAN is modified using a cubic spline interpolation. It would have been obvious at the time of first filing to modify the teachings of Zhu et al., Golmohammadi et al., Brownlee et al., and Fu et al. for the method, system and CRM of claims 1, 5 and 9 respectively, with the teachings of Morelli et al. for cubic spline interpolation of RR-intervals (cardiac cycle intervals) as the latter teaches “There are several interpolation approaches useful for handling inconsistent RR-intervals, i.e., zero degree, linear and cubic spline”. One would have had a reasonable expectation of success given that all of the papers are focused on the same field/subject (biomedical signal recreation) and use similar methods (GANs, DCGANs, and cubic splines). Therefore, it would have been obvious to one with ordinary skill in the art to incorporate the teachings of each and to be successful. Response to Arguments Applicant's arguments filed 1/20/2026 have been fully considered but they are not persuasive. Applicant asserts on page 10 of the Remarks filed 1/20/2026 that the cited references do not teach the newly cited limitation of discarding the discriminator and retaining only the generator, once the training of the ensemble GAN is completed. Examiner agrees and has provided newly cited prior to cure the deficiency. Applicant asserts on page 11 of the Remarks filed 1/20/2026 that the cited references do not teach stopping training of the ensemble GAN upon identifying that the simulated time series data is within a predefined threshold when compared with the second set of reference training data. Examiner agrees and has provided newly cited prior to cure the deficiency. Applicant asserts on page 12 of the Remarks filed 1/20/2026 that the cited references do not teach training, is set after crossing multiples of predefined value of training epochs. Examiner agrees and has provided newly cited prior to cure the deficiency. 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 KEENAN NEIL ANDERSON-FEARS whose telephone number is (571)272-0108. The examiner can normally be reached M-Th, alternate F, 8-5. 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, Karlheinz Skowronek can be reached on 571-272-9047. 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. /K.N.A./Examiner, Art Unit 1687 /OLIVIA M. WISE/Supervisory Patent Examiner, Art Unit 1685
Read full office action

Prosecution Timeline

Sep 10, 2021
Application Filed
Apr 24, 2025
Non-Final Rejection mailed — §103
Jul 21, 2025
Response Filed
Oct 20, 2025
Non-Final Rejection mailed — §103
Jan 20, 2026
Response Filed
Apr 24, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12592298
Hardware Execution and Acceleration of Artificial Intelligence-Based Base Caller
5y 1m to grant Granted Mar 31, 2026
Study what changed to get past this examiner. Based on 1 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

4-5
Expected OA Rounds
6%
Grant Probability
56%
With Interview (+50.0%)
4y 2m (~0m remaining)
Median Time to Grant
High
PTA Risk
Based on 17 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