finnhub_ruby 1.1.19 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (385) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +39 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +148 -0
  5. data/.travis.yml +14 -0
  6. data/README.md +4 -4
  7. data/docs/AirlinePriceIndex.md +22 -0
  8. data/docs/AirlinePriceIndexData.md +24 -0
  9. data/docs/CompanyESG2.md +28 -0
  10. data/docs/CompanyProfile.md +6 -0
  11. data/docs/CountryMetadata.md +9 -1
  12. data/docs/DefaultApi.md +582 -38
  13. data/docs/ETFProfileData.md +2 -0
  14. data/docs/EarningResult.md +2 -2
  15. data/docs/EarningsEstimatesInfo.md +5 -1
  16. data/docs/EbitEstimatesInfo.md +5 -1
  17. data/docs/EbitdaEstimatesInfo.md +5 -1
  18. data/docs/EmployeeCount.md +20 -0
  19. data/docs/FilingResponse.md +1 -1
  20. data/docs/HistoricalCompanyESG.md +20 -0
  21. data/docs/HistoricalEmployeeCount.md +20 -0
  22. data/docs/HistoricalMarketCapData.md +22 -0
  23. data/docs/IndicesConstituents.md +3 -1
  24. data/docs/IndicesConstituentsBreakdown.md +28 -0
  25. data/docs/MarketCapData.md +20 -0
  26. data/docs/MarketHoliday.md +22 -0
  27. data/docs/MarketHolidayData.md +22 -0
  28. data/docs/MarketStatus.md +28 -0
  29. data/docs/MutualFundProfileData.md +2 -0
  30. data/docs/PriceTarget.md +2 -0
  31. data/docs/RevenueEstimatesInfo.md +5 -1
  32. data/docs/SentimentContent.md +30 -0
  33. data/docs/SocialSentiment.md +2 -4
  34. data/finnhub_ruby.gemspec +9 -9
  35. data/git_push.sh +0 -0
  36. data/lib/finnhub_ruby/version.rb +2 -14
  37. data/lib/finnhub_ruby.rb +522 -178
  38. data/test.rb +234 -0
  39. data/test_release.rb +235 -0
  40. metadata +31 -521
  41. data/finnhub_ruby-1.1.10.gem +0 -0
  42. data/finnhub_ruby-1.1.11.gem +0 -0
  43. data/finnhub_ruby-1.1.12.gem +0 -0
  44. data/finnhub_ruby-1.1.13.gem +0 -0
  45. data/finnhub_ruby-1.1.14.gem +0 -0
  46. data/finnhub_ruby-1.1.15.gem +0 -0
  47. data/finnhub_ruby-1.1.16.gem +0 -0
  48. data/finnhub_ruby-1.1.17.gem +0 -0
  49. data/finnhub_ruby-1.1.18.gem +0 -0
  50. data/finnhub_ruby-1.1.7.gem +0 -0
  51. data/finnhub_ruby-1.1.8.gem +0 -0
  52. data/finnhub_ruby-1.1.9.gem +0 -0
  53. data/lib/finnhub_ruby/api/default_api.rb +0 -6370
  54. data/lib/finnhub_ruby/api_client.rb +0 -391
  55. data/lib/finnhub_ruby/api_error.rb +0 -57
  56. data/lib/finnhub_ruby/configuration.rb +0 -277
  57. data/lib/finnhub_ruby/models/aggregate_indicators.rb +0 -227
  58. data/lib/finnhub_ruby/models/basic_financials.rb +0 -247
  59. data/lib/finnhub_ruby/models/bond_candles.rb +0 -243
  60. data/lib/finnhub_ruby/models/bond_profile.rb +0 -419
  61. data/lib/finnhub_ruby/models/bond_tick_data.rb +0 -347
  62. data/lib/finnhub_ruby/models/bond_yield_curve.rb +0 -231
  63. data/lib/finnhub_ruby/models/bond_yield_curve_info.rb +0 -229
  64. data/lib/finnhub_ruby/models/breakdown_item.rb +0 -228
  65. data/lib/finnhub_ruby/models/company.rb +0 -279
  66. data/lib/finnhub_ruby/models/company_earnings_quality_score.rb +0 -241
  67. data/lib/finnhub_ruby/models/company_earnings_quality_score_data.rb +0 -279
  68. data/lib/finnhub_ruby/models/company_esg.rb +0 -268
  69. data/lib/finnhub_ruby/models/company_executive.rb +0 -231
  70. data/lib/finnhub_ruby/models/company_news.rb +0 -299
  71. data/lib/finnhub_ruby/models/company_news_statistics.rb +0 -239
  72. data/lib/finnhub_ruby/models/company_profile.rb +0 -509
  73. data/lib/finnhub_ruby/models/company_profile2.rb +0 -329
  74. data/lib/finnhub_ruby/models/congressional_trading.rb +0 -231
  75. data/lib/finnhub_ruby/models/congressional_transaction.rb +0 -309
  76. data/lib/finnhub_ruby/models/country_metadata.rb +0 -289
  77. data/lib/finnhub_ruby/models/covid_info.rb +0 -249
  78. data/lib/finnhub_ruby/models/crypto_candles.rb +0 -291
  79. data/lib/finnhub_ruby/models/crypto_profile.rb +0 -319
  80. data/lib/finnhub_ruby/models/crypto_symbol.rb +0 -239
  81. data/lib/finnhub_ruby/models/development.rb +0 -259
  82. data/lib/finnhub_ruby/models/dividends.rb +0 -299
  83. data/lib/finnhub_ruby/models/dividends2.rb +0 -231
  84. data/lib/finnhub_ruby/models/dividends2_basic.rb +0 -231
  85. data/lib/finnhub_ruby/models/dividends2_info.rb +0 -229
  86. data/lib/finnhub_ruby/models/document_response.rb +0 -271
  87. data/lib/finnhub_ruby/models/earning_estimate.rb +0 -259
  88. data/lib/finnhub_ruby/models/earning_release.rb +0 -299
  89. data/lib/finnhub_ruby/models/earning_result.rb +0 -289
  90. data/lib/finnhub_ruby/models/earnings_calendar.rb +0 -221
  91. data/lib/finnhub_ruby/models/earnings_call_transcripts.rb +0 -303
  92. data/lib/finnhub_ruby/models/earnings_call_transcripts_list.rb +0 -231
  93. data/lib/finnhub_ruby/models/earnings_estimates.rb +0 -241
  94. data/lib/finnhub_ruby/models/earnings_estimates_info.rb +0 -259
  95. data/lib/finnhub_ruby/models/ebit_estimates.rb +0 -241
  96. data/lib/finnhub_ruby/models/ebit_estimates_info.rb +0 -259
  97. data/lib/finnhub_ruby/models/ebitda_estimates.rb +0 -241
  98. data/lib/finnhub_ruby/models/ebitda_estimates_info.rb +0 -259
  99. data/lib/finnhub_ruby/models/economic_calendar.rb +0 -221
  100. data/lib/finnhub_ruby/models/economic_code.rb +0 -249
  101. data/lib/finnhub_ruby/models/economic_data.rb +0 -231
  102. data/lib/finnhub_ruby/models/economic_data_info.rb +0 -229
  103. data/lib/finnhub_ruby/models/economic_event.rb +0 -289
  104. data/lib/finnhub_ruby/models/estimate.rb +0 -259
  105. data/lib/finnhub_ruby/models/et_fs_country_exposure.rb +0 -219
  106. data/lib/finnhub_ruby/models/et_fs_holdings.rb +0 -219
  107. data/lib/finnhub_ruby/models/et_fs_industry_exposure.rb +0 -219
  108. data/lib/finnhub_ruby/models/et_fs_profile.rb +0 -216
  109. data/lib/finnhub_ruby/models/etf_country_exposure_data.rb +0 -229
  110. data/lib/finnhub_ruby/models/etf_holdings_data.rb +0 -289
  111. data/lib/finnhub_ruby/models/etf_profile_data.rb +0 -419
  112. data/lib/finnhub_ruby/models/etf_sector_exposure_data.rb +0 -229
  113. data/lib/finnhub_ruby/models/etfs_country_exposure.rb +0 -231
  114. data/lib/finnhub_ruby/models/etfs_holdings.rb +0 -251
  115. data/lib/finnhub_ruby/models/etfs_profile.rb +0 -228
  116. data/lib/finnhub_ruby/models/etfs_sector_exposure.rb +0 -231
  117. data/lib/finnhub_ruby/models/excerpt_response.rb +0 -249
  118. data/lib/finnhub_ruby/models/fda_comittee_meeting.rb +0 -249
  119. data/lib/finnhub_ruby/models/filing.rb +0 -289
  120. data/lib/finnhub_ruby/models/filing_response.rb +0 -339
  121. data/lib/finnhub_ruby/models/filing_sentiment.rb +0 -299
  122. data/lib/finnhub_ruby/models/financial_statements.rb +0 -231
  123. data/lib/finnhub_ruby/models/financials_as_reported.rb +0 -241
  124. data/lib/finnhub_ruby/models/forex_candles.rb +0 -291
  125. data/lib/finnhub_ruby/models/forex_symbol.rb +0 -239
  126. data/lib/finnhub_ruby/models/forexrates.rb +0 -228
  127. data/lib/finnhub_ruby/models/fund_ownership.rb +0 -231
  128. data/lib/finnhub_ruby/models/fund_ownership_info.rb +0 -259
  129. data/lib/finnhub_ruby/models/historical_nbbo.rb +0 -345
  130. data/lib/finnhub_ruby/models/in_filing_response.rb +0 -351
  131. data/lib/finnhub_ruby/models/in_filing_search_body.rb +0 -239
  132. data/lib/finnhub_ruby/models/index_historical_constituent.rb +0 -239
  133. data/lib/finnhub_ruby/models/indicator.rb +0 -239
  134. data/lib/finnhub_ruby/models/indices_constituents.rb +0 -231
  135. data/lib/finnhub_ruby/models/indices_historical_constituents.rb +0 -231
  136. data/lib/finnhub_ruby/models/insider_sentiments.rb +0 -231
  137. data/lib/finnhub_ruby/models/insider_sentiments_data.rb +0 -259
  138. data/lib/finnhub_ruby/models/insider_transactions.rb +0 -231
  139. data/lib/finnhub_ruby/models/institutional_ownership.rb +0 -241
  140. data/lib/finnhub_ruby/models/institutional_ownership_group.rb +0 -231
  141. data/lib/finnhub_ruby/models/institutional_ownership_info.rb +0 -309
  142. data/lib/finnhub_ruby/models/institutional_portfolio.rb +0 -241
  143. data/lib/finnhub_ruby/models/institutional_portfolio_group.rb +0 -241
  144. data/lib/finnhub_ruby/models/institutional_portfolio_info.rb +0 -319
  145. data/lib/finnhub_ruby/models/institutional_profile.rb +0 -231
  146. data/lib/finnhub_ruby/models/institutional_profile_info.rb +0 -269
  147. data/lib/finnhub_ruby/models/international_filing.rb +0 -299
  148. data/lib/finnhub_ruby/models/investment_theme_portfolio.rb +0 -219
  149. data/lib/finnhub_ruby/models/investment_themes.rb +0 -231
  150. data/lib/finnhub_ruby/models/investment_themes_thematic_investing.rb +0 -231
  151. data/lib/finnhub_ruby/models/investor.rb +0 -249
  152. data/lib/finnhub_ruby/models/investors_ownership.rb +0 -219
  153. data/lib/finnhub_ruby/models/ipo_calendar.rb +0 -221
  154. data/lib/finnhub_ruby/models/ipo_event.rb +0 -289
  155. data/lib/finnhub_ruby/models/isin_change.rb +0 -241
  156. data/lib/finnhub_ruby/models/isin_change_info.rb +0 -239
  157. data/lib/finnhub_ruby/models/key_customers_suppliers.rb +0 -329
  158. data/lib/finnhub_ruby/models/last_bid_ask.rb +0 -259
  159. data/lib/finnhub_ruby/models/lobbying_data.rb +0 -359
  160. data/lib/finnhub_ruby/models/lobbying_result.rb +0 -231
  161. data/lib/finnhub_ruby/models/major_developments.rb +0 -219
  162. data/lib/finnhub_ruby/models/major_press_releases.rb +0 -231
  163. data/lib/finnhub_ruby/models/market_news.rb +0 -299
  164. data/lib/finnhub_ruby/models/mutual_fund_country_exposure.rb +0 -231
  165. data/lib/finnhub_ruby/models/mutual_fund_country_exposure_data.rb +0 -229
  166. data/lib/finnhub_ruby/models/mutual_fund_eet.rb +0 -228
  167. data/lib/finnhub_ruby/models/mutual_fund_eet_pai.rb +0 -228
  168. data/lib/finnhub_ruby/models/mutual_fund_holdings.rb +0 -251
  169. data/lib/finnhub_ruby/models/mutual_fund_holdings_data.rb +0 -289
  170. data/lib/finnhub_ruby/models/mutual_fund_profile.rb +0 -228
  171. data/lib/finnhub_ruby/models/mutual_fund_profile_data.rb +0 -479
  172. data/lib/finnhub_ruby/models/mutual_fund_sector_exposure.rb +0 -231
  173. data/lib/finnhub_ruby/models/mutual_fund_sector_exposure_data.rb +0 -229
  174. data/lib/finnhub_ruby/models/mutual_funds_country_exposure.rb +0 -231
  175. data/lib/finnhub_ruby/models/mutual_funds_holdings.rb +0 -251
  176. data/lib/finnhub_ruby/models/mutual_funds_profile.rb +0 -228
  177. data/lib/finnhub_ruby/models/news.rb +0 -299
  178. data/lib/finnhub_ruby/models/news_sentiment.rb +0 -267
  179. data/lib/finnhub_ruby/models/ownership.rb +0 -231
  180. data/lib/finnhub_ruby/models/ownership_info.rb +0 -249
  181. data/lib/finnhub_ruby/models/pattern_recognition.rb +0 -221
  182. data/lib/finnhub_ruby/models/press_release.rb +0 -231
  183. data/lib/finnhub_ruby/models/price_metrics.rb +0 -238
  184. data/lib/finnhub_ruby/models/price_target.rb +0 -269
  185. data/lib/finnhub_ruby/models/quote.rb +0 -279
  186. data/lib/finnhub_ruby/models/recommendation_trend.rb +0 -279
  187. data/lib/finnhub_ruby/models/reddit_sentiment_content.rb +0 -279
  188. data/lib/finnhub_ruby/models/report.rb +0 -318
  189. data/lib/finnhub_ruby/models/revenue_breakdown.rb +0 -241
  190. data/lib/finnhub_ruby/models/revenue_estimates.rb +0 -241
  191. data/lib/finnhub_ruby/models/revenue_estimates_info.rb +0 -259
  192. data/lib/finnhub_ruby/models/search_body.rb +0 -434
  193. data/lib/finnhub_ruby/models/search_filter.rb +0 -229
  194. data/lib/finnhub_ruby/models/search_response.rb +0 -251
  195. data/lib/finnhub_ruby/models/sec_sentiment_analysis.rb +0 -248
  196. data/lib/finnhub_ruby/models/sector_metric.rb +0 -231
  197. data/lib/finnhub_ruby/models/sector_metric_data.rb +0 -229
  198. data/lib/finnhub_ruby/models/sentiment.rb +0 -229
  199. data/lib/finnhub_ruby/models/similarity_index.rb +0 -241
  200. data/lib/finnhub_ruby/models/similarity_index_info.rb +0 -329
  201. data/lib/finnhub_ruby/models/social_sentiment.rb +0 -243
  202. data/lib/finnhub_ruby/models/split.rb +0 -249
  203. data/lib/finnhub_ruby/models/stock.rb +0 -249
  204. data/lib/finnhub_ruby/models/stock_candles.rb +0 -291
  205. data/lib/finnhub_ruby/models/stock_symbol.rb +0 -309
  206. data/lib/finnhub_ruby/models/stock_transcripts.rb +0 -259
  207. data/lib/finnhub_ruby/models/supply_chain_relationships.rb +0 -231
  208. data/lib/finnhub_ruby/models/support_resistance.rb +0 -221
  209. data/lib/finnhub_ruby/models/symbol_change.rb +0 -241
  210. data/lib/finnhub_ruby/models/symbol_change_info.rb +0 -239
  211. data/lib/finnhub_ruby/models/symbol_lookup.rb +0 -231
  212. data/lib/finnhub_ruby/models/symbol_lookup_info.rb +0 -249
  213. data/lib/finnhub_ruby/models/technical_analysis.rb +0 -228
  214. data/lib/finnhub_ruby/models/tick_data.rb +0 -309
  215. data/lib/finnhub_ruby/models/transactions.rb +0 -289
  216. data/lib/finnhub_ruby/models/transcript_content.rb +0 -241
  217. data/lib/finnhub_ruby/models/transcript_participant.rb +0 -239
  218. data/lib/finnhub_ruby/models/trend.rb +0 -229
  219. data/lib/finnhub_ruby/models/twitter_sentiment_content.rb +0 -279
  220. data/lib/finnhub_ruby/models/upgrade_downgrade.rb +0 -269
  221. data/lib/finnhub_ruby/models/usa_spending.rb +0 -409
  222. data/lib/finnhub_ruby/models/usa_spending_result.rb +0 -231
  223. data/lib/finnhub_ruby/models/uspto_patent.rb +0 -301
  224. data/lib/finnhub_ruby/models/uspto_patent_result.rb +0 -231
  225. data/lib/finnhub_ruby/models/visa_application.rb +0 -439
  226. data/lib/finnhub_ruby/models/visa_application_result.rb +0 -231
  227. data/spec/api/default_api_spec.rb +0 -724
  228. data/spec/api_client_spec.rb +0 -226
  229. data/spec/configuration_spec.rb +0 -42
  230. data/spec/models/aggregate_indicators_spec.rb +0 -40
  231. data/spec/models/basic_financials_spec.rb +0 -52
  232. data/spec/models/bond_candles_spec.rb +0 -46
  233. data/spec/models/bond_profile_spec.rb +0 -154
  234. data/spec/models/bond_tick_data_spec.rb +0 -82
  235. data/spec/models/bond_yield_curve_info_spec.rb +0 -40
  236. data/spec/models/bond_yield_curve_spec.rb +0 -40
  237. data/spec/models/breakdown_item_spec.rb +0 -40
  238. data/spec/models/company_earnings_quality_score_data_spec.rb +0 -70
  239. data/spec/models/company_earnings_quality_score_spec.rb +0 -46
  240. data/spec/models/company_esg_spec.rb +0 -64
  241. data/spec/models/company_executive_spec.rb +0 -40
  242. data/spec/models/company_news_spec.rb +0 -82
  243. data/spec/models/company_news_statistics_spec.rb +0 -46
  244. data/spec/models/company_profile2_spec.rb +0 -100
  245. data/spec/models/company_profile_spec.rb +0 -196
  246. data/spec/models/company_spec.rb +0 -70
  247. data/spec/models/congressional_trading_spec.rb +0 -40
  248. data/spec/models/congressional_transaction_spec.rb +0 -88
  249. data/spec/models/country_metadata_spec.rb +0 -64
  250. data/spec/models/covid_info_spec.rb +0 -52
  251. data/spec/models/crypto_candles_spec.rb +0 -70
  252. data/spec/models/crypto_profile_spec.rb +0 -94
  253. data/spec/models/crypto_symbol_spec.rb +0 -46
  254. data/spec/models/development_spec.rb +0 -58
  255. data/spec/models/dividends2_info_spec.rb +0 -40
  256. data/spec/models/dividends2_spec.rb +0 -40
  257. data/spec/models/dividends_spec.rb +0 -76
  258. data/spec/models/document_response_spec.rb +0 -64
  259. data/spec/models/earning_estimate_spec.rb +0 -58
  260. data/spec/models/earning_release_spec.rb +0 -82
  261. data/spec/models/earning_result_spec.rb +0 -64
  262. data/spec/models/earnings_calendar_spec.rb +0 -34
  263. data/spec/models/earnings_call_transcripts_list_spec.rb +0 -40
  264. data/spec/models/earnings_call_transcripts_spec.rb +0 -82
  265. data/spec/models/earnings_estimates_info_spec.rb +0 -58
  266. data/spec/models/earnings_estimates_spec.rb +0 -46
  267. data/spec/models/ebit_estimates_info_spec.rb +0 -58
  268. data/spec/models/ebit_estimates_spec.rb +0 -46
  269. data/spec/models/ebitda_estimates_info_spec.rb +0 -58
  270. data/spec/models/ebitda_estimates_spec.rb +0 -46
  271. data/spec/models/economic_calendar_spec.rb +0 -34
  272. data/spec/models/economic_code_spec.rb +0 -52
  273. data/spec/models/economic_data_info_spec.rb +0 -40
  274. data/spec/models/economic_data_spec.rb +0 -40
  275. data/spec/models/economic_event_spec.rb +0 -76
  276. data/spec/models/estimate_spec.rb +0 -58
  277. data/spec/models/etf_country_exposure_data_spec.rb +0 -40
  278. data/spec/models/etf_holdings_data_spec.rb +0 -70
  279. data/spec/models/etf_profile_data_spec.rb +0 -136
  280. data/spec/models/etf_sector_exposure_data_spec.rb +0 -40
  281. data/spec/models/etfs_country_exposure_spec.rb +0 -40
  282. data/spec/models/etfs_holdings_spec.rb +0 -52
  283. data/spec/models/etfs_profile_spec.rb +0 -40
  284. data/spec/models/etfs_sector_exposure_spec.rb +0 -40
  285. data/spec/models/excerpt_response_spec.rb +0 -52
  286. data/spec/models/fda_comittee_meeting_spec.rb +0 -52
  287. data/spec/models/filing_response_spec.rb +0 -106
  288. data/spec/models/filing_sentiment_spec.rb +0 -82
  289. data/spec/models/filing_spec.rb +0 -76
  290. data/spec/models/financial_statements_spec.rb +0 -40
  291. data/spec/models/financials_as_reported_spec.rb +0 -46
  292. data/spec/models/forex_candles_spec.rb +0 -70
  293. data/spec/models/forex_symbol_spec.rb +0 -46
  294. data/spec/models/forexrates_spec.rb +0 -40
  295. data/spec/models/fund_ownership_info_spec.rb +0 -58
  296. data/spec/models/fund_ownership_spec.rb +0 -40
  297. data/spec/models/historical_nbbo_spec.rb +0 -100
  298. data/spec/models/in_filing_response_spec.rb +0 -112
  299. data/spec/models/in_filing_search_body_spec.rb +0 -40
  300. data/spec/models/index_historical_constituent_spec.rb +0 -46
  301. data/spec/models/indicator_spec.rb +0 -46
  302. data/spec/models/indices_constituents_spec.rb +0 -40
  303. data/spec/models/indices_historical_constituents_spec.rb +0 -40
  304. data/spec/models/insider_sentiments_data_spec.rb +0 -58
  305. data/spec/models/insider_sentiments_spec.rb +0 -40
  306. data/spec/models/insider_transactions_spec.rb +0 -40
  307. data/spec/models/institutional_ownership_group_spec.rb +0 -40
  308. data/spec/models/institutional_ownership_info_spec.rb +0 -88
  309. data/spec/models/institutional_ownership_spec.rb +0 -46
  310. data/spec/models/institutional_portfolio_group_spec.rb +0 -46
  311. data/spec/models/institutional_portfolio_info_spec.rb +0 -94
  312. data/spec/models/institutional_portfolio_spec.rb +0 -46
  313. data/spec/models/institutional_profile_info_spec.rb +0 -64
  314. data/spec/models/institutional_profile_spec.rb +0 -40
  315. data/spec/models/international_filing_spec.rb +0 -82
  316. data/spec/models/investment_theme_portfolio_spec.rb +0 -34
  317. data/spec/models/investment_themes_spec.rb +0 -40
  318. data/spec/models/ipo_calendar_spec.rb +0 -34
  319. data/spec/models/ipo_event_spec.rb +0 -76
  320. data/spec/models/isin_change_info_spec.rb +0 -46
  321. data/spec/models/isin_change_spec.rb +0 -46
  322. data/spec/models/key_customers_suppliers_spec.rb +0 -52
  323. data/spec/models/last_bid_ask_spec.rb +0 -58
  324. data/spec/models/lobbying_data_spec.rb +0 -118
  325. data/spec/models/lobbying_result_spec.rb +0 -40
  326. data/spec/models/market_news_spec.rb +0 -82
  327. data/spec/models/mutual_fund_country_exposure_data_spec.rb +0 -40
  328. data/spec/models/mutual_fund_country_exposure_spec.rb +0 -40
  329. data/spec/models/mutual_fund_eet_pai_spec.rb +0 -40
  330. data/spec/models/mutual_fund_eet_spec.rb +0 -40
  331. data/spec/models/mutual_fund_holdings_data_spec.rb +0 -70
  332. data/spec/models/mutual_fund_holdings_spec.rb +0 -52
  333. data/spec/models/mutual_fund_profile_data_spec.rb +0 -154
  334. data/spec/models/mutual_fund_profile_spec.rb +0 -40
  335. data/spec/models/mutual_fund_sector_exposure_data_spec.rb +0 -40
  336. data/spec/models/mutual_fund_sector_exposure_spec.rb +0 -40
  337. data/spec/models/news_sentiment_spec.rb +0 -64
  338. data/spec/models/ownership_info_spec.rb +0 -52
  339. data/spec/models/ownership_spec.rb +0 -40
  340. data/spec/models/pattern_recognition_spec.rb +0 -34
  341. data/spec/models/press_release_spec.rb +0 -40
  342. data/spec/models/price_metrics_spec.rb +0 -40
  343. data/spec/models/price_target_spec.rb +0 -64
  344. data/spec/models/quote_spec.rb +0 -70
  345. data/spec/models/recommendation_trend_spec.rb +0 -70
  346. data/spec/models/reddit_sentiment_content_spec.rb +0 -70
  347. data/spec/models/report_spec.rb +0 -94
  348. data/spec/models/revenue_breakdown_spec.rb +0 -46
  349. data/spec/models/revenue_estimates_info_spec.rb +0 -58
  350. data/spec/models/revenue_estimates_spec.rb +0 -46
  351. data/spec/models/search_body_spec.rb +0 -160
  352. data/spec/models/search_filter_spec.rb +0 -40
  353. data/spec/models/search_response_spec.rb +0 -52
  354. data/spec/models/sec_sentiment_analysis_spec.rb +0 -52
  355. data/spec/models/sector_metric_data_spec.rb +0 -40
  356. data/spec/models/sector_metric_spec.rb +0 -40
  357. data/spec/models/sentiment_spec.rb +0 -40
  358. data/spec/models/similarity_index_info_spec.rb +0 -100
  359. data/spec/models/similarity_index_spec.rb +0 -46
  360. data/spec/models/social_sentiment_spec.rb +0 -46
  361. data/spec/models/split_spec.rb +0 -52
  362. data/spec/models/stock_candles_spec.rb +0 -70
  363. data/spec/models/stock_symbol_spec.rb +0 -70
  364. data/spec/models/stock_transcripts_spec.rb +0 -58
  365. data/spec/models/supply_chain_relationships_spec.rb +0 -40
  366. data/spec/models/support_resistance_spec.rb +0 -34
  367. data/spec/models/symbol_change_info_spec.rb +0 -46
  368. data/spec/models/symbol_change_spec.rb +0 -46
  369. data/spec/models/symbol_lookup_info_spec.rb +0 -52
  370. data/spec/models/symbol_lookup_spec.rb +0 -40
  371. data/spec/models/technical_analysis_spec.rb +0 -40
  372. data/spec/models/tick_data_spec.rb +0 -82
  373. data/spec/models/transactions_spec.rb +0 -70
  374. data/spec/models/transcript_content_spec.rb +0 -46
  375. data/spec/models/transcript_participant_spec.rb +0 -46
  376. data/spec/models/trend_spec.rb +0 -40
  377. data/spec/models/twitter_sentiment_content_spec.rb +0 -70
  378. data/spec/models/upgrade_downgrade_spec.rb +0 -64
  379. data/spec/models/usa_spending_result_spec.rb +0 -40
  380. data/spec/models/usa_spending_spec.rb +0 -148
  381. data/spec/models/uspto_patent_result_spec.rb +0 -40
  382. data/spec/models/uspto_patent_spec.rb +0 -82
  383. data/spec/models/visa_application_result_spec.rb +0 -40
  384. data/spec/models/visa_application_spec.rb +0 -166
  385. data/spec/spec_helper.rb +0 -111
@@ -1,339 +0,0 @@
1
- =begin
2
- #Finnhub API
3
-
4
- #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.1
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module FinnhubRuby
17
- class FilingResponse
18
- # Filing Id in Alpharesearch platform
19
- attr_accessor :filing_id
20
-
21
- # Filing title
22
- attr_accessor :title
23
-
24
- # Id of the entity submitted the filing
25
- attr_accessor :filer_id
26
-
27
- # List of symbol associate with this filing
28
- attr_accessor :symbol
29
-
30
- # Filer name
31
- attr_accessor :name
32
-
33
- # Date the filing is submitted.
34
- attr_accessor :acceptance_date
35
-
36
- # Date the filing is make available to the public
37
- attr_accessor :filed_date
38
-
39
- # Date as which the filing is reported
40
- attr_accessor :report_date
41
-
42
- # Filing Form
43
- attr_accessor :form
44
-
45
- # Amendment
46
- attr_accessor :amend
47
-
48
- # Filing Source
49
- attr_accessor :source
50
-
51
- # Estimate number of page when printing
52
- attr_accessor :page_count
53
-
54
- # Number of document in this filing
55
- attr_accessor :document_count
56
-
57
- # Attribute mapping from ruby-style variable name to JSON key.
58
- def self.attribute_map
59
- {
60
- :'filing_id' => :'filingId',
61
- :'title' => :'title',
62
- :'filer_id' => :'filerId',
63
- :'symbol' => :'symbol',
64
- :'name' => :'name',
65
- :'acceptance_date' => :'acceptanceDate',
66
- :'filed_date' => :'filedDate',
67
- :'report_date' => :'reportDate',
68
- :'form' => :'form',
69
- :'amend' => :'amend',
70
- :'source' => :'source',
71
- :'page_count' => :'pageCount',
72
- :'document_count' => :'documentCount'
73
- }
74
- end
75
-
76
- # Returns all the JSON keys this model knows about
77
- def self.acceptable_attributes
78
- attribute_map.values
79
- end
80
-
81
- # Attribute type mapping.
82
- def self.openapi_types
83
- {
84
- :'filing_id' => :'String',
85
- :'title' => :'String',
86
- :'filer_id' => :'String',
87
- :'symbol' => :'Object',
88
- :'name' => :'String',
89
- :'acceptance_date' => :'String',
90
- :'filed_date' => :'String',
91
- :'report_date' => :'String',
92
- :'form' => :'String',
93
- :'amend' => :'Boolean',
94
- :'source' => :'String',
95
- :'page_count' => :'Integer',
96
- :'document_count' => :'Integer'
97
- }
98
- end
99
-
100
- # List of attributes with nullable: true
101
- def self.openapi_nullable
102
- Set.new([
103
- ])
104
- end
105
-
106
- # Initializes the object
107
- # @param [Hash] attributes Model attributes in the form of hash
108
- def initialize(attributes = {})
109
- if (!attributes.is_a?(Hash))
110
- fail ArgumentError, "The input argument (attributes) must be a hash in `FinnhubRuby::FilingResponse` initialize method"
111
- end
112
-
113
- # check to see if the attribute exists and convert string to symbol for hash key
114
- attributes = attributes.each_with_object({}) { |(k, v), h|
115
- if (!self.class.attribute_map.key?(k.to_sym))
116
- fail ArgumentError, "`#{k}` is not a valid attribute in `FinnhubRuby::FilingResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
117
- end
118
- h[k.to_sym] = v
119
- }
120
-
121
- if attributes.key?(:'filing_id')
122
- self.filing_id = attributes[:'filing_id']
123
- end
124
-
125
- if attributes.key?(:'title')
126
- self.title = attributes[:'title']
127
- end
128
-
129
- if attributes.key?(:'filer_id')
130
- self.filer_id = attributes[:'filer_id']
131
- end
132
-
133
- if attributes.key?(:'symbol')
134
- self.symbol = attributes[:'symbol']
135
- end
136
-
137
- if attributes.key?(:'name')
138
- self.name = attributes[:'name']
139
- end
140
-
141
- if attributes.key?(:'acceptance_date')
142
- self.acceptance_date = attributes[:'acceptance_date']
143
- end
144
-
145
- if attributes.key?(:'filed_date')
146
- self.filed_date = attributes[:'filed_date']
147
- end
148
-
149
- if attributes.key?(:'report_date')
150
- self.report_date = attributes[:'report_date']
151
- end
152
-
153
- if attributes.key?(:'form')
154
- self.form = attributes[:'form']
155
- end
156
-
157
- if attributes.key?(:'amend')
158
- self.amend = attributes[:'amend']
159
- end
160
-
161
- if attributes.key?(:'source')
162
- self.source = attributes[:'source']
163
- end
164
-
165
- if attributes.key?(:'page_count')
166
- self.page_count = attributes[:'page_count']
167
- end
168
-
169
- if attributes.key?(:'document_count')
170
- self.document_count = attributes[:'document_count']
171
- end
172
- end
173
-
174
- # Show invalid properties with the reasons. Usually used together with valid?
175
- # @return Array for valid properties with the reasons
176
- def list_invalid_properties
177
- invalid_properties = Array.new
178
- invalid_properties
179
- end
180
-
181
- # Check to see if the all the properties in the model are valid
182
- # @return true if the model is valid
183
- def valid?
184
- true
185
- end
186
-
187
- # Checks equality by comparing each attribute.
188
- # @param [Object] Object to be compared
189
- def ==(o)
190
- return true if self.equal?(o)
191
- self.class == o.class &&
192
- filing_id == o.filing_id &&
193
- title == o.title &&
194
- filer_id == o.filer_id &&
195
- symbol == o.symbol &&
196
- name == o.name &&
197
- acceptance_date == o.acceptance_date &&
198
- filed_date == o.filed_date &&
199
- report_date == o.report_date &&
200
- form == o.form &&
201
- amend == o.amend &&
202
- source == o.source &&
203
- page_count == o.page_count &&
204
- document_count == o.document_count
205
- end
206
-
207
- # @see the `==` method
208
- # @param [Object] Object to be compared
209
- def eql?(o)
210
- self == o
211
- end
212
-
213
- # Calculates hash code according to all attributes.
214
- # @return [Integer] Hash code
215
- def hash
216
- [filing_id, title, filer_id, symbol, name, acceptance_date, filed_date, report_date, form, amend, source, page_count, document_count].hash
217
- end
218
-
219
- # Builds the object from hash
220
- # @param [Hash] attributes Model attributes in the form of hash
221
- # @return [Object] Returns the model itself
222
- def self.build_from_hash(attributes)
223
- new.build_from_hash(attributes)
224
- end
225
-
226
- # Builds the object from hash
227
- # @param [Hash] attributes Model attributes in the form of hash
228
- # @return [Object] Returns the model itself
229
- def build_from_hash(attributes)
230
- return nil unless attributes.is_a?(Hash)
231
- self.class.openapi_types.each_pair do |key, type|
232
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
233
- self.send("#{key}=", nil)
234
- elsif type =~ /\AArray<(.*)>/i
235
- # check to ensure the input is an array given that the attribute
236
- # is documented as an array but the input is not
237
- if attributes[self.class.attribute_map[key]].is_a?(Array)
238
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
239
- end
240
- elsif !attributes[self.class.attribute_map[key]].nil?
241
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
242
- end
243
- end
244
-
245
- self
246
- end
247
-
248
- # Deserializes the data based on type
249
- # @param string type Data type
250
- # @param string value Value to be deserialized
251
- # @return [Object] Deserialized data
252
- def _deserialize(type, value)
253
- case type.to_sym
254
- when :Time
255
- Time.parse(value)
256
- when :Date
257
- Date.parse(value)
258
- when :String
259
- value.to_s
260
- when :Integer
261
- value.to_i
262
- when :Float
263
- value.to_f
264
- when :Boolean
265
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
266
- true
267
- else
268
- false
269
- end
270
- when :Object
271
- # generic object (usually a Hash), return directly
272
- value
273
- when /\AArray<(?<inner_type>.+)>\z/
274
- inner_type = Regexp.last_match[:inner_type]
275
- value.map { |v| _deserialize(inner_type, v) }
276
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
277
- k_type = Regexp.last_match[:k_type]
278
- v_type = Regexp.last_match[:v_type]
279
- {}.tap do |hash|
280
- value.each do |k, v|
281
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
282
- end
283
- end
284
- else # model
285
- # models (e.g. Pet) or oneOf
286
- klass = FinnhubRuby.const_get(type)
287
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
288
- end
289
- end
290
-
291
- # Returns the string representation of the object
292
- # @return [String] String presentation of the object
293
- def to_s
294
- to_hash.to_s
295
- end
296
-
297
- # to_body is an alias to to_hash (backward compatibility)
298
- # @return [Hash] Returns the object in the form of hash
299
- def to_body
300
- to_hash
301
- end
302
-
303
- # Returns the object in the form of hash
304
- # @return [Hash] Returns the object in the form of hash
305
- def to_hash
306
- hash = {}
307
- self.class.attribute_map.each_pair do |attr, param|
308
- value = self.send(attr)
309
- if value.nil?
310
- is_nullable = self.class.openapi_nullable.include?(attr)
311
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
312
- end
313
-
314
- hash[param] = _to_hash(value)
315
- end
316
- hash
317
- end
318
-
319
- # Outputs non-array value in the form of hash
320
- # For object, use to_hash. Otherwise, just return the value
321
- # @param [Object] value Any valid value
322
- # @return [Hash] Returns the value in the form of hash
323
- def _to_hash(value)
324
- if value.is_a?(Array)
325
- value.compact.map { |v| _to_hash(v) }
326
- elsif value.is_a?(Hash)
327
- {}.tap do |hash|
328
- value.each { |k, v| hash[k] = _to_hash(v) }
329
- end
330
- elsif value.respond_to? :to_hash
331
- value.to_hash
332
- else
333
- value
334
- end
335
- end
336
-
337
- end
338
-
339
- end
@@ -1,299 +0,0 @@
1
- =begin
2
- #Finnhub API
3
-
4
- #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.1
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module FinnhubRuby
17
- class FilingSentiment
18
- # % of negative words in the filing.
19
- attr_accessor :negative
20
-
21
- # % of positive words in the filing.
22
- attr_accessor :positive
23
-
24
- # % of polarity words in the filing.
25
- attr_accessor :polarity
26
-
27
- # % of litigious words in the filing.
28
- attr_accessor :litigious
29
-
30
- # % of uncertainty words in the filing.
31
- attr_accessor :uncertainty
32
-
33
- # % of constraining words in the filing.
34
- attr_accessor :constraining
35
-
36
- # % of modal-weak words in the filing.
37
- attr_accessor :modal_weak
38
-
39
- # % of modal-strong words in the filing.
40
- attr_accessor :modal_strong
41
-
42
- # % of modal-moderate words in the filing.
43
- attr_accessor :modal_moderate
44
-
45
- # Attribute mapping from ruby-style variable name to JSON key.
46
- def self.attribute_map
47
- {
48
- :'negative' => :'negative',
49
- :'positive' => :'positive',
50
- :'polarity' => :'polarity',
51
- :'litigious' => :'litigious',
52
- :'uncertainty' => :'uncertainty',
53
- :'constraining' => :'constraining',
54
- :'modal_weak' => :'modal-weak',
55
- :'modal_strong' => :'modal-strong',
56
- :'modal_moderate' => :'modal-moderate'
57
- }
58
- end
59
-
60
- # Returns all the JSON keys this model knows about
61
- def self.acceptable_attributes
62
- attribute_map.values
63
- end
64
-
65
- # Attribute type mapping.
66
- def self.openapi_types
67
- {
68
- :'negative' => :'Float',
69
- :'positive' => :'Float',
70
- :'polarity' => :'Float',
71
- :'litigious' => :'Float',
72
- :'uncertainty' => :'Float',
73
- :'constraining' => :'Float',
74
- :'modal_weak' => :'Float',
75
- :'modal_strong' => :'Float',
76
- :'modal_moderate' => :'Float'
77
- }
78
- end
79
-
80
- # List of attributes with nullable: true
81
- def self.openapi_nullable
82
- Set.new([
83
- ])
84
- end
85
-
86
- # Initializes the object
87
- # @param [Hash] attributes Model attributes in the form of hash
88
- def initialize(attributes = {})
89
- if (!attributes.is_a?(Hash))
90
- fail ArgumentError, "The input argument (attributes) must be a hash in `FinnhubRuby::FilingSentiment` initialize method"
91
- end
92
-
93
- # check to see if the attribute exists and convert string to symbol for hash key
94
- attributes = attributes.each_with_object({}) { |(k, v), h|
95
- if (!self.class.attribute_map.key?(k.to_sym))
96
- fail ArgumentError, "`#{k}` is not a valid attribute in `FinnhubRuby::FilingSentiment`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
97
- end
98
- h[k.to_sym] = v
99
- }
100
-
101
- if attributes.key?(:'negative')
102
- self.negative = attributes[:'negative']
103
- end
104
-
105
- if attributes.key?(:'positive')
106
- self.positive = attributes[:'positive']
107
- end
108
-
109
- if attributes.key?(:'polarity')
110
- self.polarity = attributes[:'polarity']
111
- end
112
-
113
- if attributes.key?(:'litigious')
114
- self.litigious = attributes[:'litigious']
115
- end
116
-
117
- if attributes.key?(:'uncertainty')
118
- self.uncertainty = attributes[:'uncertainty']
119
- end
120
-
121
- if attributes.key?(:'constraining')
122
- self.constraining = attributes[:'constraining']
123
- end
124
-
125
- if attributes.key?(:'modal_weak')
126
- self.modal_weak = attributes[:'modal_weak']
127
- end
128
-
129
- if attributes.key?(:'modal_strong')
130
- self.modal_strong = attributes[:'modal_strong']
131
- end
132
-
133
- if attributes.key?(:'modal_moderate')
134
- self.modal_moderate = attributes[:'modal_moderate']
135
- end
136
- end
137
-
138
- # Show invalid properties with the reasons. Usually used together with valid?
139
- # @return Array for valid properties with the reasons
140
- def list_invalid_properties
141
- invalid_properties = Array.new
142
- invalid_properties
143
- end
144
-
145
- # Check to see if the all the properties in the model are valid
146
- # @return true if the model is valid
147
- def valid?
148
- true
149
- end
150
-
151
- # Checks equality by comparing each attribute.
152
- # @param [Object] Object to be compared
153
- def ==(o)
154
- return true if self.equal?(o)
155
- self.class == o.class &&
156
- negative == o.negative &&
157
- positive == o.positive &&
158
- polarity == o.polarity &&
159
- litigious == o.litigious &&
160
- uncertainty == o.uncertainty &&
161
- constraining == o.constraining &&
162
- modal_weak == o.modal_weak &&
163
- modal_strong == o.modal_strong &&
164
- modal_moderate == o.modal_moderate
165
- end
166
-
167
- # @see the `==` method
168
- # @param [Object] Object to be compared
169
- def eql?(o)
170
- self == o
171
- end
172
-
173
- # Calculates hash code according to all attributes.
174
- # @return [Integer] Hash code
175
- def hash
176
- [negative, positive, polarity, litigious, uncertainty, constraining, modal_weak, modal_strong, modal_moderate].hash
177
- end
178
-
179
- # Builds the object from hash
180
- # @param [Hash] attributes Model attributes in the form of hash
181
- # @return [Object] Returns the model itself
182
- def self.build_from_hash(attributes)
183
- new.build_from_hash(attributes)
184
- end
185
-
186
- # Builds the object from hash
187
- # @param [Hash] attributes Model attributes in the form of hash
188
- # @return [Object] Returns the model itself
189
- def build_from_hash(attributes)
190
- return nil unless attributes.is_a?(Hash)
191
- self.class.openapi_types.each_pair do |key, type|
192
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
193
- self.send("#{key}=", nil)
194
- elsif type =~ /\AArray<(.*)>/i
195
- # check to ensure the input is an array given that the attribute
196
- # is documented as an array but the input is not
197
- if attributes[self.class.attribute_map[key]].is_a?(Array)
198
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
199
- end
200
- elsif !attributes[self.class.attribute_map[key]].nil?
201
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
202
- end
203
- end
204
-
205
- self
206
- end
207
-
208
- # Deserializes the data based on type
209
- # @param string type Data type
210
- # @param string value Value to be deserialized
211
- # @return [Object] Deserialized data
212
- def _deserialize(type, value)
213
- case type.to_sym
214
- when :Time
215
- Time.parse(value)
216
- when :Date
217
- Date.parse(value)
218
- when :String
219
- value.to_s
220
- when :Integer
221
- value.to_i
222
- when :Float
223
- value.to_f
224
- when :Boolean
225
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
226
- true
227
- else
228
- false
229
- end
230
- when :Object
231
- # generic object (usually a Hash), return directly
232
- value
233
- when /\AArray<(?<inner_type>.+)>\z/
234
- inner_type = Regexp.last_match[:inner_type]
235
- value.map { |v| _deserialize(inner_type, v) }
236
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
237
- k_type = Regexp.last_match[:k_type]
238
- v_type = Regexp.last_match[:v_type]
239
- {}.tap do |hash|
240
- value.each do |k, v|
241
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
242
- end
243
- end
244
- else # model
245
- # models (e.g. Pet) or oneOf
246
- klass = FinnhubRuby.const_get(type)
247
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
248
- end
249
- end
250
-
251
- # Returns the string representation of the object
252
- # @return [String] String presentation of the object
253
- def to_s
254
- to_hash.to_s
255
- end
256
-
257
- # to_body is an alias to to_hash (backward compatibility)
258
- # @return [Hash] Returns the object in the form of hash
259
- def to_body
260
- to_hash
261
- end
262
-
263
- # Returns the object in the form of hash
264
- # @return [Hash] Returns the object in the form of hash
265
- def to_hash
266
- hash = {}
267
- self.class.attribute_map.each_pair do |attr, param|
268
- value = self.send(attr)
269
- if value.nil?
270
- is_nullable = self.class.openapi_nullable.include?(attr)
271
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
272
- end
273
-
274
- hash[param] = _to_hash(value)
275
- end
276
- hash
277
- end
278
-
279
- # Outputs non-array value in the form of hash
280
- # For object, use to_hash. Otherwise, just return the value
281
- # @param [Object] value Any valid value
282
- # @return [Hash] Returns the value in the form of hash
283
- def _to_hash(value)
284
- if value.is_a?(Array)
285
- value.compact.map { |v| _to_hash(v) }
286
- elsif value.is_a?(Hash)
287
- {}.tap do |hash|
288
- value.each { |k, v| hash[k] = _to_hash(v) }
289
- end
290
- elsif value.respond_to? :to_hash
291
- value.to_hash
292
- else
293
- value
294
- end
295
- end
296
-
297
- end
298
-
299
- end