← Research Library

ADBE research report

Generated 2026-08-13 05:24 · status: complete

ADBE — The Call

The Call

I’m constructive on Adobe the business and selective on Adobe the stock: this is a high-quality cash machine trading at numbers that are too low for a company with 89.1% gross margin, 36.1% operating margin, 28.7% net margin, 36.4% ROIC, and $9.852 billion of free cash flow. I reject the bearish setup as the main frame because the balance sheet is plainly not stressed at 0.22x net debt/EBITDA and 67.33x interest coverage. But I also refuse to chase a stock at $258.75 when the median target is $245 and the stock has already bounced hard off $190.12. My call: good company, decent valuation, mediocre entry right now. Conviction: 7/10

What This Company Actually Is

I view Adobe as a toll collector on digital content creation and marketing workflows, not just “software.” The core engine is Digital Media: creative tools people and companies build into how they work, then keep paying for because switching is painful and the product is central to output. Digital Experience adds enterprise marketing and customer-experience software, which broadens the revenue base but is not the reason I care. I care because this is a subscription-heavy software model that turns revenue into cash with almost absurd efficiency: $23.769 billion of revenue, 89.1% gross margin, and only $179 million of capex to produce $9.852 billion of free cash flow. That is what a real software moat looks like in numbers.

The Numbers That Matter

  • Revenue: $23.769 billion — big enough that this is already scaled; Adobe does not need a miracle to justify itself.
  • Gross margin: 89.1% — this tells me the product economics are elite; each incremental dollar of revenue is extremely valuable.
  • Operating margin: 36.1% and net margin: 28.7% — proof that high gross margin is not being wasted lower down the income statement.
  • ROIC: 36.4% and ROCE: 50.9% — the cleanest evidence of a moat; Adobe earns far more on capital than the peers cited: ACN 16.9%, ADI 7.8%, CRWD 6.0%, DELL 18.6%.
  • Operating cash flow: $10.031 billion, free cash flow: $9.852 billion, capex: $179 million — this is the heart of the case. The business converts accounting profit into real cash and barely needs capital spending.
  • FCF yield: 10.33%, P/FCF: 9.68, P/E: 14.79, EV/EBITDA: 10.56, EV/Sales: 4.17, P/S: 4.08, PEG: 1.28 — those are not premium-software fantasy multiples; they imply skepticism already exists.
  • Consensus EPS: 24.40 and roughly 10.6x forward EPS at $258.75 — for a business of this quality, that is restrained.
  • Cash: $5.431 billion, total debt: $6.648 billion, net debt: $1.217 billion, net debt/EBITDA: 0.22x, interest coverage: 67.33x — I do not buy a balance-sheet panic story with these figures.
  • Current ratio: 0.75, quick ratio: 0.75, cash ratio: 0.41, current assets: $10.163 billion, current liabilities: $10.200 billion — this is the main balance-sheet blemish, but in a software model with this cash generation, it is a yellow flag, not a thesis breaker.
  • Buybacks: $11.281 billion versus FCF: $9.852 billion and net change in cash: -$2.182 billion — this is the number I dislike most. Management was too aggressive.
  • Stock-based comp: $1.942 billion — real cost, and it matters because heavy buybacks can partly be dilution cleanup.
  • Current price: $258.75, 52-week high: $370.86, 52-week low: $190.12, 50-day average: $230.20, EMA50: $239.75, SMA20: $246.39, 200-day average: $273.20 — the stock is off the floor but not back to full trend strength.
  • Analyst consensus target: $261.16, median target: $245, low: $190, high: $379 — this is why I won’t call it an immediate buy at today’s price.

Bull vs Bear — Who Wins

The bull case is simple and strong: Adobe is a world-class software business with exceptional economics. 89.1% gross margin, 36.1% operating margin, 36.4% ROIC, and $9.852 billion of free cash flow are not the profile of a business in structural trouble. The valuation is also surprisingly sane: 14.79x earnings, 9.68x free cash flow, and about 10.6x forward EPS. That is mature-company pricing on elite-company economics.

The bear case is narrower but real: liquidity ratios are weak at 0.75, buybacks exceeded free cash flow by about $1.429 billion, cash fell $2.182 billion, stock comp is $1.942 billion, and the chart damage was violent. The stock is also at $258.75 with a $245 median target and only a hair below the $261.16 consensus target, so near-term upside looks thin.

I side with the bull case on fundamentals and with the valuation analyst on timing. The bear is right about entry, wrong about core risk. A company with 0.22x net debt/EBITDA and 67.33x interest coverage is not financially fragile. The buyback behavior is sloppy, not existential. So the better argument is: own the business only when the stock gives you a better setup.

Red Flags

  • Buybacks of $11.281 billion exceeded free cash flow of $9.852 billion — management returned more cash than the business produced.
  • Net change in cash was -$2.182 billion — the buyback came with real balance-sheet consumption.
  • Stock-based compensation of $1.942 billion — meaningful enough that I will not pretend all cash flow is pristine owner earnings.
  • Current ratio and quick ratio of 0.75 — not dangerous here, but weak enough that I won’t call the balance sheet fortress-like.
  • Median analyst target of $245 below the current price of $258.75 — that is a blunt sign the stock is not obviously mispriced upward today.
  • Price remains below the 200-day average of $273.20 and far below the 52-week high of $370.86 — the stock has bounced, but it has not fully repaired confidence.

What I'd Do

I would not chase ADBE at $258.75. I’d get interested on a pullback into the $245 to $230 zone, anchored to the $245 median target, the SMA20 of $246.39, the EMA50 of $239.75, and the 50-day average of $230.20. That is the range where the setup starts matching the business quality. If it fell closer to the 52-week low of $190.12 without a collapse in the forward numbers like consensus EPS of 24.40 or the cash-generation profile, I’d view that as very compelling. On the other side, if the stock pushes through the 200-day average of $273.20 and toward the targetHigh of $379 without estimate upgrades, I’d back off; at that point the rerating would be running ahead of the data. So my stance is clear: positive on the company, patient on the stock, interested below $245, more interested around $230, and very interested near $190.12 if the fundamentals still look like this.

What Would Change My Mind

I’d kill the thesis if the core quality breaks, not because the chart wiggles. Specifically:

  • Free cash flow materially weakens from $9.852 billion and no longer clearly exceeds accounting earnings.
  • Operating margin falls well below the current 36.1% and stays there.
  • ROIC loses its edge and drops far enough from 36.4% that Adobe no longer looks differentiated from peers.
  • Net debt/EBITDA moves materially above the current 0.22x because buybacks or operations worsen the balance sheet.
  • Management keeps buying back stock above free cash flow the way it did with $11.281 billion of buybacks against $9.852 billion of FCF.
  • Forward expectations crack — for example, consensus EPS of 24.40 rolls over while the stock still trades as if nothing happened.
  • The stock revisits the $190.12 low because of real deterioration in margins, cash flow, or estimates, not just market noise.

Glossary

  • Gross margin — Revenue left after direct product-delivery costs.
  • Operating margin — Profit after operating expenses, before interest and taxes, as a percentage of revenue.
  • Net margin — Final profit after all expenses, as a percentage of revenue.
  • Free cash flow (FCF) — Cash left after operating costs and capital spending.
  • Operating cash flow (OCF) — Cash generated by the core business before capital spending.
  • Capex — Capital expenditures; money spent on long-term assets and infrastructure.
  • ROIC — Return on invested capital; how efficiently the business turns invested capital into operating profit.
  • ROCE — Return on capital employed; profit earned on the capital used in the business.
  • ROA — Return on assets; profit generated from total assets.
  • ROE — Return on equity; profit generated on shareholders’ equity.
  • Moat — A durable competitive advantage that helps defend profits and returns.
  • P/E — Price-to-earnings ratio; stock price divided by earnings per share.
  • Forward P/E — Price divided by expected future earnings per share.
  • PEG — P/E divided by growth rate; a rough check on price versus expected growth.
  • EV/EBITDA — Enterprise value divided by earnings before interest, taxes, depreciation, and amortization; a common valuation multiple.
  • EV/Sales — Enterprise value divided by revenue.
  • P/S — Price-to-sales ratio; market value divided by revenue.
  • P/FCF — Price-to-free-cash-flow ratio; market value divided by free cash flow.
  • FCF yield — Free cash flow divided by market value; higher means more cash generation per dollar invested.
  • Net debt — Total debt minus cash.
  • Net debt/EBITDA — A leverage ratio comparing debt burden with operating earnings power.
  • Interest coverage — How many times operating profit covers interest expense.
  • Current ratio — Current assets divided by current liabilities; a basic short-term liquidity measure.
  • Quick ratio — Liquid current assets divided by current liabilities; a stricter liquidity measure.
  • Cash ratio — Cash divided by current liabilities; the most conservative liquidity measure.
  • Stock-based compensation — Paying employees with shares or options instead of cash.
  • SMA20 — 20-day simple moving average; the average price over the last 20 trading days.
  • EMA50 — 50-day exponential moving average; a 50-day average that weights recent prices more heavily.
  • 50-day average / 200-day average — Common trend markers based on average prices over those periods.
  • Consensus target — The average price target from covering analysts.
  • Median target — The middle analyst price target, less distorted by extreme outliers.
  • 52-week high / low — The highest and lowest stock prices over the last year.

This report was generated by AI from public financial data for educational purposes only. It is not financial advice. Language models make mistakes — verify all figures independently before making any investment decision.

Raw lens outputs
Business Quality
I think this is a **great business**. Not a perfect stock, not a no-brainer at any price, but the business itself is elite and the numbers show it.

**How it makes money**
From the profile, Adobe sells software across three buckets: **Digital Media**, **Digital Experience**, and **Publishing/Advertising**. The core economic engine looks obvious in the numbers: mostly software and subscriptions, with very little capital needed to produce each extra dollar of revenue. You see that in:
- **Revenue:** $23.769 billion
- **Gross margin:** **89.1%**
- **Operating margin:** **36.1%**
- **Net margin:** **28.7%**
- **Free cash flow:** **$9.852 billion**

Gross margin means how much revenue is left after the direct cost of delivering the product. At **89.1%**, this is an exceptionally scalable software model. After all the overhead, it still keeps **36.1%** at the operating line and **28.7%** at the net line. That is not marketing fluff. That is economic power.

**Does it have a moat?**
Yes, the numbers strongly suggest a moat. A moat is a durable competitive advantage that lets a company earn unusually high returns for a long time. I look for two things: **high margins** and **high returns on capital**.

Adobe has both:
- **ROIC:** **36.4%**
- **ROCE:** **50.9%**
- **ROA:** **24.2%**
- **ROE:** **62.4%**

ROIC, return on invested capital, is the cleanest test: how much profit the company earns on the capital actually tied up in the business. **36.4%** is outstanding. That says this company doesn’t need to pour endless capital into the machine to grow and defend itself.

Even better, versus the peers provided, Adobe’s returns look real and differentiated:
- **ACN ROIC:** 16.9%
- **ADI ROIC:** 7.8%
- **CRWD ROIC:** 6.0%
- **DELL ROIC:** 18.6%

Adobe at **36.4%** is in another class versus those peer figures. Same story on profitability:
- Adobe **operating margin 36.1%**
- ACN **14.9%**
- ADI **32.5%**
- CRWD **-3.9%**
- DELL **8.0%**

And Adobe’s **gross margin of 89.1%** towers over:
- ACN **32.0%**
- ADI **64.5%**
- CRWD **75.0%**
- DELL **19.1%**

That combination — extreme gross margin plus very high ROIC — is exactly what I want to see if I’m going to believe the “great company” story.

**Cash generation is excellent**
A lot of companies show accounting profits and mediocre cash. That’s not the case here.
- **Operating cash flow:** $10.031 billion
- **Free cash flow:** $9.852 billion
- **Capex:** only **$179 million**

That capex number matters. This business needed just **$179 million** of capital spending against **$10.031 billion** of operating cash flow. That is a beautiful model.

The valuation data also implies the cash machine is meaningful:
- **P/FCF:** **9.68**
- **FCF yield:** **10.33%**
- **Earnings yield:** **6.95%**

A free cash flow yield is free cash flow divided by market value; a higher number generally means you’re getting more cash generation per dollar paid. **10.33%** is very substantial.

**Balance sheet and financial risk**
This is not a fragile story.
- **Cash:** $5.431 billion
- **Total debt:** $6.648 billion
- **Net debt:** $1.217 billion
- **Net debt / EBITDA:** **0.22**
- **Interest coverage:** **67.3x**

Interest coverage tells me how easily operating profit covers interest expense. **67.3 times** is absurdly comfortable. Net debt at **0.22x EBITDA** is light. So while the **current ratio of 0.75** isn’t pretty on the surface, the actual debt burden is modest and the company is clearly not financially stressed.

**Capital allocation: one yellow flag**
The main thing I don’t love is buybacks versus free cash flow in the latest fiscal year:
- **Buybacks:** **$11.281 billion**
- **Free cash flow:** **$9.852 billion**
- **Net change in cash:** **-$2.182 billion**

They bought back more stock than they generated in free cash flow, and cash went down. That’s not reckless given the balance sheet, but I never ignore it. Great businesses can still make mediocre capital allocation choices.

There’s also meaningful **stock-based compensation of $1.942 billion**, which is not tiny. In plain English: some of the cash generation is being offset economically by paying employees with stock.

**What about valuation?**
On the data given, the stock does not look expensive relative to the business quality:
- **P/E:** **14.79**
- **EV/EBITDA:** **10.56**
- **EV/Sales:** **4.17**
- **P/S:** **4.08**
- **PEG:** **1.28**

For a company with **89.1% gross margin**, **36.1% operating margin**, and **36.4% ROIC**, those multiples are not demanding. In fact, they look pretty
Forensic Accountant
I’m calling these books **WATCH-LIST**, not dirty, but not spotless.

## What looks clean

### 1) Debt load is very manageable
I care first about whether debt can crush the business. Here it doesn’t look close.

- **Total debt:** **$6.648B**
- **Cash:** **$5.431B**
- **Net debt:** **$1.217B**
- **Net debt / EBITDA:** **0.216x**
- **Interest coverage:** **67.33x**

That last one matters: interest coverage means operating earnings cover interest expense **67 times** over. With **operating income of $8.706B** and **interest expense of $263M**, debt service is nowhere near stressed.

### 2) Cash generation is stronger than accounting profit
This is the best part of the file.

- **Net income:** **$7.130B**
- **Operating cash flow:** **$10.031B**
- **Free cash flow:** **$9.852B**
- **Capex:** only **$179M**

Operating cash flow is about **$2.901B** above net income. Free cash flow is about **$2.722B** above net income. That usually tells me earnings are backed by real cash, not just accrual accounting.

On top of that:
- **FCF per share:** **26.44**
- **EPS:** **17.98** in fundamentals, **16.73** in statements

Different sections show different EPS figures, but both are well below free cash flow per share. Cash still wins.

### 3) No dividend strain
- **Dividends paid:** **$0**
- **Dividend yield:** **0**
- **Payout ratio:** **0**

So there is no dividend sucking cash out beyond what the business produces.

### 4) Profitability is excellent
Not a balance-sheet point, but it supports credit quality.

- **Gross margin:** **89.12%**
- **Operating margin:** **36.07%**
- **Net margin:** **28.69%**
- **ROIC:** **36.45%**

That is a very high-margin, high-return model.

---

## What I do not like

### 1) Buybacks exceeded free cash flow
This is my biggest hard red flag in the data.

- **Free cash flow:** **$9.852B**
- **Buybacks:** **$11.281B**
- **Net change in cash:** **-$2.182B**

They repurchased about **$1.429B more stock than free cash flow generated**. When a company buys back more stock than it produced in free cash, the excess has to come from the balance sheet or new financing. Here, cash fell by **$2.182B**, so some of that shareholder return was funded by shrinking liquidity.

That’s not fraud. It is capital allocation aggression.

### 2) Liquidity is tighter than I want
The business throws off cash, yes. But current liquidity is not roomy.

- **Current ratio:** **0.751**
- **Quick ratio:** **0.751**
- **Cash ratio:** **0.407**
- **Current assets:** **$10.163B**
- **Current liabilities:** **$10.200B**

Current ratio under **1.0** means short-term assets are slightly below short-term liabilities. In software, that can be manageable because the model is cash generative and inventory is irrelevant here, but I still flag it. There isn’t much working-capital cushion.

### 3) Stock-based compensation is meaningful
- **Stock-based comp:** **$1.942B**

Against:
- **Net income:** **$7.130B**
- **Operating cash flow:** **$10.031B**

That’s about **27% of net income** and about **19% of operating cash flow**. Stock comp is a real shareholder cost even if accounting cash flow treats it kindly. It can make cash flow look stronger than owner economics if buybacks are needed just to offset dilution. And given **$11.281B** of buybacks, I don’t ignore that link.

### 4) Book value is not cheap, and equity quality deserves context
- **Total equity:** **$11.623B**
- **Book value per share:** **28.65**
- **Price/book:** **9.03x**

No negative equity problem here — that’s good. Also:
- **Retained earnings:** **$45.354B**

That retained earnings figure is strong and clearly **not shrinking into a deficit** based on the data provided. So no alarm there.

But the fact that retained earnings are huge while total equity is only **$11.623B** tells me other equity accounts are materially offsetting it. That is not automatically bad, but it means I’d want a closer look at treasury stock and other comprehensive items. Those details are **not available** in this JSON, so I won’t speculate.

---

## Things I checked and did not find as red flags

### Negative equity?
No.
- **Total equity:** **$11.623B** positive

### Debt spiral?
No.
- **Net debt:** **$1.217B**
- **Net debt / EBITDA:** **0.216x**
- **Interest coverage:** **67.33x**

### Weak cash conversion?
No. Quite the opposite.
- **OCF:** **$10.031B** vs **net income $7.130B**
- **FCF:** **$9.852B**

### Dividend overdistribution?
No.
- **Dividends paid:** **$0**

---

## My forensic take

If I strip away the glossy software margins
Valuation
I’d call ADBE **fair to modestly cheap for a quality-focused long-term investor**, but **not a screaming bargain** after the rebound.

What growth is already priced in? Not heroic growth. At **$258.75**, the stock trades at **14.79x earnings**, **1.28x PEG**, **4.08x sales**, **9.68x free cash flow**, and **10.56x EV/EBITDA**. PEG compares P/E to expected growth; around **1x** usually means price and growth are roughly aligned. At **1.28x**, the market is asking for decent, not explosive, growth. Using forward estimates, consensus **EPS is 24.40** and the stock is at roughly **10.6x forward EPS** (258.75 / 24.40), which is not demanding for a business with **89.1% gross margin**, **36.1% operating margin**, **28.7% net margin**, and **10.33% FCF yield**.

On relative valuation, ADBE looks restrained, not stretched. Its **P/E of 14.79x** is close to **ACN’s 14.27x** and far below **ADI’s 56.87x** or **DELL’s 37.85x**. Its **P/FCF of 9.68x** is only slightly above **ACN’s 8.76x** and dramatically below **ADI’s 41.02x** and **CRWD’s 155.52x**. So the market is not valuing ADBE like a high-expectation glamour stock. It’s valuing it more like a mature compounder with some skepticism.

Is the market’s ask reasonable? **Yes, mostly.** The company throws off real cash: **$9.852 billion** of free cash flow on **$23.769 billion** of revenue, with **net debt to EBITDA of 0.22x** and **interest coverage of 67.33x**. That balance sheet is not pristine on liquidity—**current ratio 0.75** and **quick ratio 0.75**—but leverage is still manageable. The business quality is high enough that a low-teens earnings multiple and low-teens EV/EBITDA do not look aggressive.

But I wouldn’t ignore that the stock has already bounced hard from the **52-week low of $190.12** to **$258.75**, and now sits above the **50-day average of $230.20**, **EMA50 of $239.75**, and **SMA20 of $246.39**. That tells me some rerating has already happened. Also, analyst sentiment is not pounding the table: consensus is **Buy**, but the **median target is $245**, which is actually **below** the current price, while the **consensus target is $261.16**, only slightly above today. That says the Street, on average, sees the stock as roughly fully valued right here.

Would I pay it? **I’d pay it only if I’m a long-term investor who wants quality and cash generation, not if I’m looking for obvious upside over the next 6–12 months.** At today’s price, I’m not getting enough discount versus the **$245 median target** to feel opportunistic. If I wanted to buy, I’d be much more interested:
- **Closer to $245**, which matches the analyst **targetMedian**
- Better yet, around the **SMA20 of $246.39** or **EMA50 of $239.75**
- More attractive still near the **50-day average of $230.20**

Those are concrete levels where I’d feel I’m being paid better for the uncertainty. On the upside, if the stock moved toward the analyst **targetHigh of $379** without estimate upgrades, I’d view it as clearly expensive. If it slipped back toward the **year low of $190.12**, I’d view it as very compelling unless the forward estimates changed materially.

**Bottom line:** I think ADBE is **fairly priced, maybe a bit cheap on fundamentals, but not cheap on near-term expectations** after the rally. I would **not chase at $258.75**; I’d get interested on a pullback into the **$245 to $230** zone anchored by the analyst median and moving averages.
Short Seller
I’m bearish here. The business quality is strong, but the stock and balance-sheet setup still give me a clean anti-long case.

## 1) The balance sheet is weaker than a premium software multiple should allow

The most obvious problem is liquidity, meaning the ability to cover near-term obligations with near-term assets.

- **Current ratio: 0.75**
- **Quick ratio: 0.75**
- **Cash ratio: 0.41**
- From the statements: **current assets = $10.163 billion** versus **current liabilities = $10.200 billion**

That means even before I get fancy, near-term obligations slightly exceed near-term assets. For a company that still gets valued like a high-quality compounder, I don’t love seeing short-term coverage already below 1.0.

Yes, leverage is not extreme on an income basis:
- **Debt to equity: 0.61**
- **Net debt to EBITDA: 0.22**
- **Interest coverage: 67.33x**

So this is not a solvency crisis. But that’s not the point. My point is narrower: this is **not** the fortress balance sheet profile that deserves investors hand-waving away execution risk.

And management is using cash aggressively:
- **Free cash flow: $9.852 billion**
- **Buybacks: $11.281 billion**
- **Net change in cash: -$2.182 billion**
- **Cash on balance sheet: $5.431 billion**

They bought back **more stock than they generated in free cash flow**. That is a choice. When a stock has already been punished and fundamentals need to re-earn confidence, I’d rather see balance-sheet flexibility improve, not cash leave the business faster than it comes in.

## 2) The stock’s drawdown says something broke, and it hasn’t been fully repaired

This is not a quiet, stable chart.

- **52-week high: $370.86**
- **Current price: $258.75**
- That is about **30% below the high**
- The stock also hit a **52-week low of $190.12**
- It collapsed from **$274.03 on 2026-06-01** to **$204.02 on 2026-06-12** in less than two weeks
- It then fell again to **$190.12 on 2026-06-18**

That kind of air pocket usually means the market sharply reassessed something fundamental. I’m not allowed to infer what, and I don’t need to. The data already tells me the market was willing to erase enormous value very quickly.

Yes, the stock bounced:
- **Price is above the 50-day average of $230.20**
- **RSI 14 is 58.43**
- **SMA20 is $246.39**
- **EMA50 is $239.75**

But the bigger picture still matters:
- **Price remains below the 200-day average of $273.20**
- The current price **$258.75** is also below the analyst consensus target of **$261.16** by only a tiny amount of upside

So the stock has recovered off panic lows, but it has **not** regained long-term trend leadership. That’s a classic place where longs tell themselves the worst is over while the market is still saying, “prove it.”

## 3) Analyst optimism is weak relative to the actual upside on offer

This is one of the cleaner short points in the whole file.

Analyst sentiment looks superficially supportive:
- **31 buys**
- **27 holds**
- **5 sells**
- Consensus: **Buy**

But what does that support actually buy you?

- **Current price: $258.75**
- **Analyst consensus target: $261.16**
- **Median target: $245**

So despite a formal “Buy” consensus, the **consensus target implies almost no upside**, and the **median target is below the current stock price**.

That’s important. A median target below the current price means at least half the target-setting analysts are not underwriting upside from here. In plain English: the rating label says “Buy,” but the price targets say “there’s not much left.”

And the target spread is huge:
- **Low target: $190**
- **High target: $379**

That dispersion tells me the analyst community does **not** have a tight, high-conviction view of fair value. When uncertainty is this wide, longs are pretending there’s clarity that the numbers don’t actually show.

The recent ratings tape also leans defensive, not enthusiastic:
- **Morgan Stanley downgraded to Underweight on 2026-07-21**
- **Stifel downgraded Buy to Hold on 2026-06-12**
- **Evercore downgraded Outperform to In Line on 2026-06-12**
- **Wolfe downgraded Outperform to Peer Perform on 2026-06-11**
- **Goldman Sachs maintained Sell on 2026-06-12**
- **Keybanc maintained Underweight on 2026-06-12**

That is not the pattern I want to see if I’m long a “recovery” story.

## 4) Valuation is no longer crazy, but it’s still not obviously cheap enough for the risks

I’ll be fair: on plain earnings and free cash flow, this does not screen as absurdly expensive.

- **P/E: 14.79**
- **PEG: 1.28**
- **EV/EBITDA: 10.56**
- **P/FCF: 9.68**
- **FCF yield: 10.33%**
- **
Data snapshot (figures as of generation)
{
  "ohlc": [
    {
      "low": 245.24,
      "date": "2026-05-18",
      "high": 256.19,
      "open": 247.31,
      "close": 255.64,
      "volume": 5591800
    },
    {
      "low": 251.81,
      "date": "2026-05-19",
      "high": 265.09,
      "open": 263.33,
      "close": 254.99,
      "volume": 5854400
    },
    {
      "low": 246.21,
      "date": "2026-05-20",
      "high": 253.69,
      "open": 250.28,
      "close": 253.37,
      "volume": 4789627
    },
    {
      "low": 242.11,
      "date": "2026-05-21",
      "high": 247.95,
      "open": 246.45,
      "close": 244.1,
      "volume": 4131000
    },
    {
      "low": 242.71,
      "date": "2026-05-22",
      "high": 249.77,
      "open": 245.89,
      "close": 244.76,
      "volume": 3783400
    },
    {
      "low": 238.57,
      "date": "2026-05-26",
      "high": 243.57,
      "open": 242.57,
      "close": 240.49,
      "volume": 3217536
    },
    {
      "low": 237.28,
      "date": "2026-05-27",
      "high": 244.24,
      "open": 237.76,
      "close": 238.24,
      "volume": 3408880
    },
    {
      "low": 236.66,
      "date": "2026-05-28",
      "high": 244.76,
      "open": 239.57,
      "close": 241.44,
      "volume": 3396017
    },
    {
      "low": 244.66,
      "date": "2026-05-29",
      "high": 260.63,
      "open": 245.23,
      "close": 259.21,
      "volume": 10808921
    },
    {
      "low": 262.3,
      "date": "2026-06-01",
      "high": 275.44,
      "open": 270,
      "close": 274.03,
      "volume": 8535314
    },
    {
      "low": 260.05,
      "date": "2026-06-02",
      "high": 272.03,
      "open": 267.98,
      "close": 262.11,
      "volume": 5821801
    },
    {
      "low": 252.34,
      "date": "2026-06-03",
      "high": 260,
      "open": 259.39,
      "close": 256.24,
      "volume": 4871308
    },
    {
      "low": 258.33,
      "date": "2026-06-04",
      "high": 265.94,
      "open": 263.02,
      "close": 258.42,
      "volume": 5161943
    },
    {
      "low": 249.05,
      "date": "2026-06-05",
      "high": 262.53,
      "open": 259.28,
      "close": 251.44,
      "volume": 4909200
    },
    {
      "low": 244.25,
      "date": "2026-06-08",
      "high": 250.74,
      "open": 249.06,
      "close": 244.99,
      "volume": 4728032
    },
    {
      "low": 233.33,
      "date": "2026-06-09",
      "high": 245.25,
      "open": 242.98,
      "close": 237.88,
      "volume": 6747403
    },
    {
      "low": 231.74,
      "date": "2026-06-10",
      "high": 238.51,
      "open": 233.02,
      "close": 233.38,
      "volume": 5176916
    },
    {
      "low": 218.09,
      "date": "2026-06-11",
      "high": 232.5,
      "open": 229.92,
      "close": 218.8,
      "volume": 17786900
    },
    {
      "low": 196.9,
      "date": "2026-06-12",
      "high": 205.65,
      "open": 202.4,
      "close": 204.02,
      "volume": 25063668
    },
    {
      "low": 205.72,
      "date": "2026-06-15",
      "high": 211.99,
      "open": 206.88,
      "close": 206.36,
      "volume": 9676900
    },
    {
      "low": 203.84,
      "date": "2026-06-16",
      "high": 210.8,
      "open": 205.38,
      "close": 207.32,
      "volume": 7214600
    },
    {
      "low": 195.02,
      "date": "2026-06-17",
      "high": 206.5,
      "open": 204.02,
      "close": 196.28,
      "volume": 10731500
    },
    {
      "low": 190.12,
      "date": "2026-06-18",
      "high": 196.78,
      "open": 193.6,
      "close": 195.16,
      "volume": 15852500
    },
    {
      "low": 191.2,
      "date": "2026-06-22",
      "high": 199.25,
      "open": 193.39,
      "close": 194.9,
      "volume": 8282600
    },
    {
      "low": 195.35,
      "date": "2026-06-23",
      "high": 200.55,
      "open": 197.96,
      "close": 197.43,
      "volume": 6910500
    },
    {
      "low": 195.1,
      "date": "2026-06-24",
      "high": 202.41,
      "open": 195.89,
      "close": 196.57,
      "volume": 6947400
    },
    {
      "low": 191.8,
      "date": "2026-06-25",
      "high": 199.3,
      "open": 193,
      "close": 193.41,
      "volume": 6962337
    },
    {
      "low": 195.29,
      "date": "2026-06-26",
      "high": 203.48,
      "open": 195.48,
      "close": 202.73,
      "volume": 9172100
    },
    {
      "low": 204.34,
      "date": "2026-06-29",
      "high": 209.54,
      "open": 206.67,
      "close": 206.43,
      "volume": 7527300
    },
    {
      "low": 201.31,
      "date": "2026-06-30",
      "high": 205.6,
      "open": 204.1,
      "close": 205.02,
      "volume": 6269500
    },
    {
      "low": 207.06,
      "date": "2026-07-01",
      "high": 213.66,
      "open": 209.43,
      "close": 210.98,
      "volume": 5863800
    },
    {
      "low": 213.74,
      "date": "2026-07-02",
      "high": 222.15,
      "open": 215.55,
      "close": 219.72,
      "volume": 7907502
    },
    {
      "low": 212.9,
      "date": "2026-07-06",
      "high": 219.76,
      "open": 216.1,
      "close": 218.07,
      "volume": 4800200
    },
    {
      "low": 220.29,
      "date": "2026-07-07",
      "high": 230.74,
      "open": 221.16,
      "close": 221.54,
      "volume": 8615002
    },
    {
      "low": 216.93,
      "date": "2026-07-08",
      "high": 222.5,
      "open": 221.39,
      "close": 220.94,
      "volume": 4508412
    },
    {
      "low": 213.09,
      "date": "2026-07-09",
      "high": 222.71,
      "open": 214.12,
      "close": 222.65,
      "volume": 4552937
    },
    {
      "low": 222.82,
      "date": "2026-07-10",
      "high": 228.4,
      "open": 226.5,
      "close": 223.64,
      "volume": 3206800
    },
    {
      "low": 225,
      "date": "2026-07-13",
      "high": 232.08,
      "open": 226.75,
      "close": 230.61,
      "volume": 4624000
    },
    {
      "low": 218,
      "date": "2026-07-14",
      "high": 224.2,
      "open": 221.16,
      "close": 220.78,
      "volume": 5823430
    },
    {
      "low": 222.91,
      "date": "2026-07-15",
      "high": 231.53,
      "open": 223.16,
      "close": 224.56,
      "volume": 4771436
    },
    {
      "low": 222.04,
      "date": "2026-07-16",
      "high": 235.48,
      "open": 228.71,
      "close": 235.31,
      "volume": 5787325
    },
    {
      "low": 232.36,
      "date": "2026-07-17",
      "high": 240.15,
      "open": 235.26,
      "close": 237.25,
      "volume": 7269910
    },
    {
      "low": 227.5,
      "date": "2026-07-20",
      "high": 236.66,
      "open": 235.67,
      "close": 234.74,
      "volume": 5123700
    },
    {
      "low": 222.3,
      "date": "2026-07-21",
      "high": 231.5,
      "open": 222.85,
      "close": 227.16,
      "volume": 5060612
    },
    {
      "low": 218,
      "date": "2026-07-22",
      "high": 229.66,
      "open": 229.66,
      "close": 218.36,
      "volume": 4361300
    },
    {
      "low": 210.88,
      "date": "2026-07-23",
      "high": 222.75,
      "open": 222.18,
      "close": 212.17,
      "volume": 4363216
    },
    {
      "low": 216.15,
      "date": "2026-07-24",
      "high": 226.93,
      "open": 216.5,
      "close": 225.11,
      "volume": 4719923
    },
    {
      "low": 229.79,
      "date": "2026-07-27",
      "high": 242.05,
      "open": 230.39,
      "close": 237.75,
      "volume": 5543598
    },
    {
      "low": 241.69,
      "date": "2026-07-28",
      "high": 254.06,
      "open": 242.85,
      "close": 249.18,
      "volume": 8098747
    },
    {
      "low": 248.54,
      "date": "2026-07-29",
      "high": 266.28,
      "open": 249.99,
      "close": 263.43,
      "volume": 9881800
    },
    {
      "low": 242.42,
      "date": "2026-07-30",
      "high": 255.3,
      "open": 251.5,
      "close": 247.9,
      "volume": 6876993
    },
    {
      "low": 241.23,
      "date": "2026-07-31",
      "high": 250.71,
      "open": 244.73,
      "close": 250.41,
      "volume": 5589512
    },
    {
      "low": 251.17,
      "date": "2026-08-03",
      "high": 262.15,
      "open": 258.25,
      "close": 251.34,
      "volume": 4293800
    },
    {
      "low": 245.46,
      "date": "2026-08-04",
      "high": 258.54,
      "open": 248.67,
      "close": 257.49,
      "volume": 4203000
    },
    {
      "low": 255.56,
      "date": "2026-08-05",
      "high": 261.01,
      "open": 260.07,
      "close": 259.32,
      "volume": 4285520
    },
    {
      "low": 250.84,
      "date": "2026-08-06",
      "high": 260.64,
      "open": 252.23,
      "close": 260.24,
      "volume": 4700600
    },
    {
      "low": 261.29,
      "date": "2026-08-07",
      "high": 270.16,
      "open": 262.82,
      "close": 265.21,
      "volume": 4752642
    },
    {
      "low": 262.14,
      "date": "2026-08-10",
      "high": 273.13,
      "open": 263.06,
      "close": 272.96,
      "volume": 4052624
    },
    {
      "low": 262.68,
      "date": "2026-08-11",
      "high": 272.23,
      "open": 270.48,
      "close": 263.71,
      "volume": 4675200
    },
    {
      "low": 255.1002,
      "date": "2026-08-12",
      "high": 263.26,
      "open": 258.45,
      "close": 258.75,
      "volume": 3946014
    }
  ],
  "peers": [
    {
      "price": 180.14,
      "symbol": "ACN",
      "companyName": "Accenture plc"
    },
    {
      "price": 384.43,
      "symbol": "ADI",
      "companyName": "Analog Devices, Inc."
    },
    {
      "price": 221.78,
      "symbol": "CRWD",
      "companyName": "CrowdStrike Holdings, Inc."
    },
    {
      "price": 484.49,
      "symbol": "DELL",
      "companyName": "Dell Technologies Inc."
    },
    {
      "price": 160.84,
      "symbol": "FTNT",
      "companyName": "Fortinet, Inc."
    },
    {
      "price": 208.25,
      "symbol": "KLAC",
      "companyName": "KLA Corporation"
    },
    {
      "price": 387.01,
      "symbol": "PANW",
      "companyName": "Palo Alto Networks, Inc."
    },
    {
      "price": 412.32,
      "symbol": "SNPS",
      "companyName": "Synopsys, Inc."
    }
  ],
  "quote": {
    "name": "Adobe Inc.",
    "open": 258.45,
    "price": 258.75,
    "change": -4.96,
    "dayLow": 255.1002,
    "symbol": "ADBE",
    "volume": 3946014,
    "dayHigh": 263.26,
    "yearLow": 190.12,
    "exchange": "NASDAQ",
    "yearHigh": 370.86,
    "marketCap": 102853125000,
    "priceAvg50": 230.2034,
    "priceAvg200": 273.20105,
    "previousClose": 263.71,
    "changePercentage": -1.88085
  },
  "grades": [
    {
      "date": "2026-07-21",
      "action": "downgrade",
      "company": "Morgan Stanley",
      "toGrade": "Underweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2026-07-02",
      "action": "upgrade",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Underweight",
      "fromGrade": "Underweight"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2026-06-12",
      "action": "downgrade",
      "company": "Stifel",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Citizens",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2026-06-12",
      "action": "downgrade",
      "company": "Evercore ISI Group",
      "toGrade": "In Line",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-06-12",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Sell",
      "fromGrade": "Sell"
    },
    {
      "date": "2026-06-11",
      "action": "downgrade",
      "company": "Wolfe Research",
      "toGrade": "Peer Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-06-11",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-06-11",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-06-11",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-06-08",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-06-08",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-06-05",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-06-05",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-04-27",
      "action": "downgrade",
      "company": "Mizuho",
      "toGrade": "Neutral",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-04-22",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-04-17",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-04-17",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-26",
      "action": "downgrade",
      "company": "William Blair",
      "toGrade": "Market Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-16",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-03-16",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Sell",
      "fromGrade": "Sell"
    },
    {
      "date": "2026-03-16",
      "action": "downgrade",
      "company": "Argus Research",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-03-13",
      "action": "downgrade",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-13",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Underweight",
      "fromGrade": "Underweight"
    },
    {
      "date": "2026-03-10",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-03-09",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-09",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-06",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-03-04",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-02-23",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2026-02-03",
      "action": "downgrade",
      "company": "Piper Sandler",
      "toGrade": "Neutral",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-01-26",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2026-01-13",
      "action": "downgrade",
      "company": "Oppenheimer",
      "toGrade": "Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-01-09",
      "action": "downgrade",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-01-05",
      "action": "downgrade",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-12-17",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-12-15",
      "action": "downgrade",
      "company": "Keybanc",
      "toGrade": "Underweight",
      "fromGrade": "Sector Weight"
    },
    {
      "date": "2025-12-15",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "Wolfe Research",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-12-11",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-12-09",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-12-04",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-11-20",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-11-20",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-11-20",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-24",
      "action": "downgrade",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "JMP Securities",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-12",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-11",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-09-09",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-08",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-08",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-05",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-08-29",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-07-02",
      "action": "downgrade",
      "company": "Redburn Atlantic",
      "toGrade": "Sell",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-06-23",
      "action": "maintain",
      "company": "JMP Securities",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2025-06-20",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-06-16",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-06-16",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-06-13",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-06-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-06-09",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-06-05",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-04-23",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-04-22",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-04-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-04-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-04-14",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-04-14",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-04-11",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-04-09",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-31",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-03-21",
      "action": "upgrade",
      "company": "Keybanc",
      "toGrade": "Sector Weight",
      "fromGrade": "Underweight"
    },
    {
      "date": "2025-03-20",
      "action": "maintain",
      "company": "Citizens Capital Markets",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2025-03-19",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-19",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-03-14",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Underweight",
      "fromGrade": "Underweight"
    },
    {
      "date": "2025-03-13",
      "action": "maintain",
      "company": "Citizens Capital Markets",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2025-03-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2025-03-07",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-03-07",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-02-19",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-02-13",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-01-16",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-01-08",
      "action": "downgrade",
      "company": "Deutsche Bank",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-01-07",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-01-06",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-01-03",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "JMP Securities",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-12",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-12-09",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-12-06",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-05",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-12-05",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-10-15",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-09-13",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-09-11",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-09-06",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-09-04",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-09-04",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-08-01",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-07-12",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-06-17",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-14",
      "action": "upgrade",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Underweight",
      "fromGrade": "Underweight"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-06-14",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-10",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-06-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-06-10",
      "action": "downgrade",
      "company": "Melius Research",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-06-07",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-06-07",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-06-07",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-06",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-06",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-06-05",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-28",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-03-12",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-03-11",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-03-11",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-01-18",
      "action": "downgrade",
      "company": "Exane BNP Paribas",
      "toGrade": "Underperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-01-02",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-12-18",
      "action": "upgrade",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-12-14",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-12-14",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-12-14",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-12-12",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-12-08",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-12-04",
      "action": "upgrade",
      "company": "KGI Securities",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-11-10",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-11-09",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-10-26",
      "action": "upgrade",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Perform"
    },
    {
      "date": "2023-10-26",
      "action": "upgrade",
      "company": "DA Davidson",
      "toGrade": "Buy",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-10-11",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-10-11",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-10-11",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Wolfe Research",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-15",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-09-13",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-09-13",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-09-12",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-09-12",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-11",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-09-08",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-09-08",
      "action": "upgrade",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-09-08",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-09-06",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-08-17",
      "action": "upgrade",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-07-31",
      "action": "upgrade",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-06-21",
      "action": "upgrade",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-06-20",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-06-16",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-06-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-06-16",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-06-16",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-06-16",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-06-15",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-06-13",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-06-12",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-06-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-06-12",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-06-09",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-06-09",
      "action": "upgrade",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-06-08",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-06-08",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-06-08",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-06-06",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-06-02",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-31",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-04-05",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-03-31",
      "action": "downgrade",
      "company": "Exane BNP Paribas",
      "toGrade": "Neutral",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-03-31",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-28",
      "action": "upgrade",
      "company": "Erste Group",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2023-03-22",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-03-21",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-03-17",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-03-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-03-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-03-16",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-03-16",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2023-03-10",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-02-15",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-01-10",
      "action": "downgrade",
      "company": "Exane BNP Paribas",
      "toGrade": "Neutral",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-01-09",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-12-19",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-12-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2022-12-14",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2022-12-12",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-12-12",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-12-11",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-10-19",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-10-19",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-10-19",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-10-19",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-10-17",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2022-10-17",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-10-13",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2022-10-10",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-27",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-19",
      "action": "downgrade",
      "company": "Edward Jones",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-19",
      "action": "downgrade",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-09-16",
      "action": "downgrade",
      "company": "Barclays",
      "toGrade": "Equal Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Wolfe Research",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-16",
      "action": "downgrade",
      "company": "Baird",
      "toGrade": "Neutral",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Cowen & Co.",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-16",
      "action": "downgrade",
      "company": "B of A Securities",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-16",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-15",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-09-15",
      "action": "downgrade",
      "company": "Oppenheimer",
      "toGrade": "Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-13",
      "action": "downgrade",
      "company": "BMO Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-12",
      "action": "downgrade",
      "company": "Mizuho",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-09-08",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-09-05",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-21",
      "action": "downgrade",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Cowen & Co.",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Wolfe Research",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-06-17",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-14",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-14",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-14",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-06-10",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-09",
      "action": "maintain",
      "company": "Cowen & Co.",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-06-07",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-05-23",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-18",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-28",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-24",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-23",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-22",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-03-21",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-03-21",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-03-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-03-17",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-16",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-15",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-11",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-02-23",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-01-21",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-10",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-01-05",
      "action": "downgrade",
      "company": "UBS",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-20",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-12-17",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-14",
      "action": "downgrade",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-12-10",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-22",
      "action": "upgrade",
      "company": "Atlantic Equities",
      "toGrade": "Overweight",
      "fromGrade": "Neutral"
    },
    {
      "date": "2021-10-19",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-22",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-17",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-09-16",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-09-15",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-09-07",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-07",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-03",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-20",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-20",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-20",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Evercore ISI Group",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-06-18",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-06-15",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-06-14",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-18",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-03-24",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-03-24",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-03-24",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-03-17",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-02-03",
      "action": "maintain",
      "company": "Wedbush",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2020-12-11",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-12-11",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-12-11",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-12-05",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-11-10",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-17",
      "action": "upgrade",
      "company": "DZ Bank",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2020-09-16",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-14",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-14",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-09-11",
      "action": "upgrade",
      "company": "Cowen & Co.",
      "toGrade": "Outperform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2020-09-10",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-10",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-09",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-09-09",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-01",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-06-15",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-06-12",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-06-11",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-06-09",
      "action": "maintain",
      "company": "TD Cowen",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2020-06-08",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-06-04",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-05-14",
      "action": "downgrade",
      "company": "DZ Bank",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-04-30",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-03-31",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-03-31",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-03-25",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-03-17",
      "action": "maintain",
      "company": "CFRA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-03-17",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-03-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-03-13",
      "action": "maintain",
      "company": "Cowen & Co.",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2020-03-13",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2020-03-13",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2020-03-13",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-03-13",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-03-13",
      "action": "upgrade",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Neutral"
    },
    {
      "date": "2020-03-13",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-02-19",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-01-27",
      "action": "upgrade",
      "company": "Cleveland Research",
      "toGrade": "Buy",
      "fromGrade": "Neutral"
    },
    {
      "date": "2020-01-17",
      "action": "upgrade",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Perform"
    },
    {
      "date": "2020-01-16",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2020-01-13",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-01-10",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Wedbush",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "PiperJaffray",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-12-13",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-12-11",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2019-12-09",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-11-05",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2019-11-05",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2019-11-05",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2019-11-05",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-10-28",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-10-21",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2019-10-16",
      "action": "downgrade",
      "company": "Citigroup",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-09-18",
      "action": "maintain",
      "company": "Citi",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-09-18",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2019-09-18",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2019-09-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-09-18",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2019-09-18",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-06-20",
      "action": "upgrade",
      "company": "Stephens & Co.",
      "toGrade": "Overweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2019-06-19",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-06-19",
      "action": "maintain",
      "company": "Wedbush",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2019-06-19",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-06-19",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2019-06-19",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-06-19",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-04-29",
      "action": "upgrade",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2019-03-15",
      "action": "downgrade",
      "company": "KeyBanc",
      "toGrade": "Sector Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-03-15",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-03-15",
      "action": "downgrade",
      "company": "Keybanc",
      "toGrade": "Sector Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-02-22",
      "action": "downgrade",
      "company": "DZ Bank",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-02-15",
      "action": "downgrade",
      "company": "Cowen & Co.",
      "toGrade": "Market Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2019-01-07",
      "action": "upgrade",
      "company": "Pivotal Research",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2018-12-28",
      "action": "upgrade",
      "company": "DZ Bank",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2018-12-14",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-12-14",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-12-14",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-12-14",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2018-12-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-10-16",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-09-17",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-09-17",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-09-14",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-06-15",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2018-06-15",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2018-06-15",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-06-15",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-06-15",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-06-14",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2018-06-14",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-06-12",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-05-05",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-26",
      "action": "downgrade",
      "company": "JMP Securities",
      "toGrade": "Market Perform",
      "fromGrade": "Market Outperform"
    },
    {
      "date": "2018-03-20",
      "action": "upgrade",
      "company": "DZ Bank",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-16",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-15",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-03-15",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-03-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-03-13",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-13",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-12",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-03-12",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-12-13",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2017-12-12",
      "action": "downgrade",
      "company": "JP Morgan",
      "toGrade": "Neutral",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-11-22",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-11-22",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-10-25",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-10-25",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-10-19",
      "action": "upgrade",
      "company": "Pivotal Research",
      "toGrade": "Hold",
      "fromGrade": "Sell"
    },
    {
      "date": "2017-10-19",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2017-10-19",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-10-19",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2017-10-19",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-10-19",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-10-19",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-10-18",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-10-16",
      "action": "downgrade",
      "company": "Deutsche Bank",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-09-20",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-09-20",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-06-12",
      "action": "downgrade",
      "company": "Pivotal Research",
      "toGrade": "Sell",
      "fromGrade": "Hold"
    },
    {
      "date": "2017-03-24",
      "action": "upgrade",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2017-03-17",
      "action": "upgrade",
      "company": "Wunderlich Securities",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2017-03-17",
      "action": "upgrade",
      "company": "Wunderlich",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2017-01-12",
      "action": "downgrade",
      "company": "Pivotal Research",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-23",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-23",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Canaccord Genuity",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Pacific Crest",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Cowen & Co.",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-09-21",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-04-04",
      "action": "maintain",
      "company": "Dougherty",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-04-04",
      "action": "maintain",
      "company": "Dougherty & Co.",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-03-23",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-03-18",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2016-03-18",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-03-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-03-18",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-03-18",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2016-03-09",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2016-01-06",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2015-10-14",
      "action": "upgrade",
      "company": "Atlantic Equities",
      "toGrade": "Overweight",
      "fromGrade": "Neutral"
    },
    {
      "date": "2015-10-07",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2015-10-07",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-10-02",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-09-18",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-08-25",
      "action": "upgrade",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2015-08-11",
      "action": "upgrade",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Sector Perform"
    },
    {
      "date": "2015-06-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-06-17",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-06-17",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-03-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-12-12",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-12-12",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-12-12",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2014-12-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-12-11",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-12-11",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-09-17",
      "action": "maintain",
      "company": "CIBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-06-19",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-06-19",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-06-18",
      "action": "maintain",
      "company": "FBR Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2014-06-18",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-06-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-03-19",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2014-02-11",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-02-11",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-12-17",
      "action": "upgrade",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2013-12-17",
      "action": "upgrade",
      "company": "Argus Capital",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2013-12-13",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2013-10-31",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2013-09-18",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-08-26",
      "action": "upgrade",
      "company": "Pacific Crest",
      "toGrade": "Outperform",
      "fromGrade": "Sector Perform"
    },
    {
      "date": "2013-07-17",
      "action": "upgrade",
      "company": "FBR Capital",
      "toGrade": "Market Perform",
      "fromGrade": "Underperform"
    },
    {
      "date": "2013-06-26",
      "action": "upgrade",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2013-06-19",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2013-06-19",
      "action": "upgrade",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Neutral"
    },
    {
      "date": "2013-06-19",
      "action": "upgrade",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Neutral"
    },
    {
      "date": "2013-06-13",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-04-11",
      "action": "upgrade",
      "company": "Goldman Sachs",
      "toGrade": "Neutral",
      "fromGrade": "Sell"
    },
    {
      "date": "2013-03-20",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Sell",
      "fromGrade": "Sell"
    },
    {
      "date": "2013-03-20",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2013-03-20",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2013-03-20",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-20",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-20",
      "action": "downgrade",
      "company": "Stifel",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-20",
      "action": "downgrade",
      "company": "Stifel Nicolaus",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-20",
      "action": "maintain",
      "company": "PiperJaffray",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2013-03-18",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2013-03-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-11",
      "action": "downgrade",
      "company": "Bank of America",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-11",
      "action": "downgrade",
      "company": "B of A Securities",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-08",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2013-03-07",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Sell",
      "fromGrade": "Sell"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-12-14",
      "action": "downgrade",
      "company": "Janney Montgomery Scott",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Sell",
      "fromGrade": "Sell"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2012-12-14",
      "action": "maintain",
      "company": "PiperJaffray",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2012-12-14",
      "action": "downgrade",
      "company": "Janney Capital",
      "toGrade": "Neutral",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-12-14",
      "action": "upgrade",
      "company": "JMP Securities",
      "toGrade": "Market Outperform",
      "fromGrade": "Market Underperform"
    },
    {
      "date": "2012-12-11",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2012-09-20",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-09-20",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-09-20",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-09-20",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-09-20",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-03-23",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-03-20",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-03-20",
      "action": "maintain",
      "company": "Piper Sandler",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2012-03-20",
      "action": "maintain",
      "company": "PiperJaffray",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2012-03-19",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-03-16",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2012-03-06",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    }
  ],
  "rating": {
    "rating": "B+",
    "deScore": 1,
    "pbScore": 1,
    "peScore": 3,
    "dcfScore": 4,
    "roaScore": 5,
    "roeScore": 5,
    "overallScore": 3
  },
  "analyst": {
    "buy": 31,
    "hold": 27,
    "sell": 5,
    "consensus": "Buy",
    "strongBuy": 0,
    "targetLow": 190,
    "strongSell": 0,
    "targetHigh": 379,
    "targetMedian": 245,
    "targetConsensus": 261.16
  },
  "profile": {
    "ceo": "Shantanu Narayen",
    "beta": 1.404,
    "image": "https://images.financialmodelingprep.com/symbol/ADBE.png",
    "sector": "Technology",
    "country": "US",
    "ipoDate": "1986-08-13",
    "website": "https://www.adobe.com",
    "industry": "Software - Application",
    "employees": "31360",
    "companyName": "Adobe Inc.",
    "description": "Adobe Inc. stands as a prominent global software provider, delivering a diverse range of solutions. Its operations are structured into three primary business divisions: Digital Media, Digital Experience, and Publishing and Advertising. The Digital Media segment empowers individuals, teams, and enterprises to generate, disseminate, and amplify various forms of content through its array of products and services, including the cloud-native Document Cloud platform. Central to this segment is Creative Cloud, its subscription-based flagship, granting access to a comprehensive suite of creative tools. This division caters to a diverse range of users, from professional content creators and marketers to educators, communicators, and general consumers. Adobe's Digital Experience division offers an integrated suite of applications and services designed to empower brands and businesses to craft, orchestrate, assess, and enhance customer journeys, from initial analytical insights to final commercial transactions. It serves a broad professional base including marketing teams, advertisers, agencies, data scientists, and senior executives. The Publishing and Advertising segment provides specialized offerings such as e-learning tools, technical documentation services, web conferencing solutions, advanced printing technologies, and its Advertising Cloud suite. Adobe engages directly with enterprise clients through its dedicated sales teams and regional offices. Individual end-users can access its offerings via app stores or its official website, adobe.com. Additionally, an extensive indirect channel supports distribution, encompassing partners such as distributors, value-added resellers, system integrators, software vendors, retailers, and original equipment manufacturers. Established in 1982, the company, initially named Adobe Systems Incorporated, rebranded as Adobe Inc. in October 2018. Its corporate headquarters are situated in San Jose, California."
  },
  "earnings": {
    "date": "2026-09-10",
    "epsEstimated": 6.07,
    "revenueEstimated": 6689580000
  },
  "dividends": [
    {
      "date": "2005-03-24",
      "amount": 0.0125,
      "frequency": "Quarterly"
    },
    {
      "date": "2004-12-23",
      "amount": 0.0125,
      "frequency": "Quarterly"
    },
    {
      "date": "2004-09-24",
      "amount": 0.0125,
      "frequency": "Quarterly"
    },
    {
      "date": "2004-06-25",
      "amount": 0.0125,
      "frequency": "Quarterly"
    },
    {
      "date": "2004-03-26",
      "amount": 0.0125,
      "frequency": "Quarterly"
    },
    {
      "date": "2004-01-07",
      "amount": 0.0125,
      "frequency": "Quarterly"
    }
  ],
  "estimates": {
    "date": "2026-11-28",
    "epsAvg": 24.40247,
    "epsLow": 23.43882,
    "epsHigh": 24.52293,
    "ebitdaAvg": 10635184954,
    "revenueAvg": 26524309379,
    "numAnalysts": 22,
    "netIncomeAvg": 10239833648.5
  },
  "statements": {
    "income": {
      "eps": 16.73,
      "ebitda": 9749000000,
      "revenue": 23769000000,
      "incomeTax": 1604000000,
      "netIncome": 7130000000,
      "epsDiluted": 16.7,
      "grossProfit": 21061000000,
      "interestExpense": 263000000,
      "operatingIncome": 8706000000,
      "researchAndDevelopment": 4294000000
    },
    "period": "FY",
    "balance": {
      "cash": 5431000000,
      "netDebt": 1217000000,
      "inventory": 0,
      "totalDebt": 6648000000,
      "totalAssets": 29496000000,
      "totalEquity": 11623000000,
      "currentAssets": 10163000000,
      "retainedEarnings": 45354000000,
      "totalLiabilities": 17873000000,
      "currentLiabilities": 10200000000
    },
    "cashflow": {
      "capex": 179000000,
      "buybacks": 11281000000,
      "freeCashFlow": 9852000000,
      "dividendsPaid": 0,
      "stockBasedComp": 1942000000,
      "netChangeInCash": -2182000000,
      "operatingCashFlow": 10031000000
    },
    "fiscalYear": "2025"
  },
  "technicals": {
    "ema50": 239.74771667315807,
    "rsi14": 58.43346368483807,
    "sma20": 246.3895
  },
  "fundamentals": {
    "health": {
      "cashRatio": 0.40726941546613676,
      "quickRatio": 0.7507865540652426,
      "currentRatio": 0.7507865540652426,
      "debtToEquity": 0.6133877409272444,
      "netDebtToEbitda": 0.21591709427507796,
      "interestCoverage": 67.33333333333333
    },
    "dividend": {
      "yield": 0,
      "payoutRatio": 0
    },
    "perShare": {
      "eps": 17.98258706467662,
      "fcfPerShare": 26.435323383084576,
      "cashPerShare": 13.99502487562189,
      "revenuePerShare": 62.681592039801,
      "dividendPerShare": 0,
      "bookValuePerShare": 28.65174129353234
    },
    "valuation": {
      "pb": 9.03086473346067,
      "pe": 14.785714285714285,
      "ps": 4.081797166441781,
      "peg": 1.2817008681925823,
      "pFcf": 9.678472287569399,
      "evSales": 4.166962655766331,
      "evEbitda": 10.564355065902003,
      "fcfYield": 0.10332209157475769,
      "earningsYield": 0.06949792102290481,
      "priceToFairValue": 9.03086473346067
    },
    "efficiency": {
      "grahamNumber": 107.66953946323237,
      "assetTurnover": 0.8418133832225303,
      "effectiveTaxRate": 0.20656349467676435,
      "inventoryTurnover": 0,
      "cashConversionCycle": -37.55498667909746,
      "receivablesTurnover": 12.643251379829403,
      "daysSalesOutstanding": 28.869156282244624,
      "daysInventoryOutstanding": 0
    },
    "profitability": {
      "roa": 0.24150603013396585,
      "roe": 0.6239426894527879,
      "roce": 0.5091010921310557,
      "roic": 0.3644619654044273,
      "netMargin": 0.286887848241924,
      "grossMargin": 0.8911818398285578,
      "operatingMargin": 0.36074291610445275
    }
  },
  "peerFundamentals": {
    "ACN": {
      "health": {
        "cashRatio": 0.4704148579578046,
        "quickRatio": 1.3391735715872017,
        "currentRatio": 1.3391735715872017,
        "debtToEquity": 0.2630483259531988,
        "netDebtToEbitda": -0.14017328452174033,
        "interestCoverage": 40.894070931325714
      },
      "dividend": {
        "yield": 0.03619407,
        "payoutRatio": 0.5029842529960438
      },
      "perShare": {
        "eps": 12.779694666396036,
        "fcfPerShare": 20.551145908908996,
        "cashPerShare": 16.61441275123368,
        "revenuePerShare": 119.40377108962355,
        "dividendPerShare": 6.52,
        "bookValuePerShare": 53.925373312565874
      },
      "valuation": {
        "pb": 3.458205521451704,
        "pe": 14.274167987321713,
        "ps": 1.5079939023068143,
        "peg": -30.16607501320674,
        "pFcf": 8.761562956814698,
        "evSales": 1.483691979730124,
        "evEbitda": 8.557922829398558,
        "fcfYield": 0.11413488722605197,
        "earningsYield": 0.07094312571553257,
        "priceToFairValue": 3.458205521451704
      },
      "efficiency": {
        "grahamNumber": 122.385841185636,
        "assetTurnover": 1.062407333509954,
        "effectiveTaxRate": 0.2545126775841652,
        "inventoryTurnover": 0,
        "cashConversionCycle": 56.75252567486789,
        "receivablesTurnover": 4.558541011849429,
        "daysSalesOutstanding": 80.06947816225025,
        "daysInventoryOutstanding": 0
      },
      "profitability": {
        "roa": 0.11370864763899477,
        "roe": 0.2500364021847111,
        "roce": 0.23031795316755857,
        "roic": 0.16861340111628653,
        "netMargin": 0.107029238270906,
        "grossMargin": 0.3197291896187712,
        "operatingMargin": 0.14870495924143984
      }
    },
    "ADI": {
      "health": {
        "cashRatio": 0.5467729077586766,
        "quickRatio": 1.3375571893243454,
        "currentRatio": 1.7522853853580522,
        "debtToEquity": 0.2573896184619344,
        "netDebtToEbitda": 1.0033469881843706,
        "interestCoverage": 12.115269246414389
      },
      "dividend": {
        "yield": 0.01087324,
        "payoutRatio": 0.6029313412799779
      },
      "perShare": {
        "eps": 6.7953199823627735,
        "fcfPerShare": 9.362393740835307,
        "cashPerShare": 7.053471559971698,
        "revenuePerShare": 26.128101639646847,
        "dividendPerShare": 4.18,
        "bookValuePerShare": 69.19952215420268
      },
      "valuation": {
        "pb": 5.555385182333264,
        "pe": 56.86834319526626,
        "ps": 14.697646684787273,
        "peg": 0.6835315517606921,
        "pFcf": 41.017459538021754,
        "evSales": 15.188057858307172,
        "evEbitda": 31.073704946659685,
        "fcfYield": 0.024379861923750665,
        "earningsYield": 0.017676351955785898,
        "priceToFairValue": 5.555385182333264
      },
      "efficiency": {
        "grahamNumber": 102.86029434358625,
        "assetTurnover": 0.26570247050543916,
        "effectiveTaxRate": 0.1550184670570297,
        "inventoryTurnover": 2.4474365736946178,
        "cashConversionCycle": 159.61640991865823,
        "receivablesTurnover": 6.209479011157884,
        "daysSalesOutstanding": 58.78109892055796,
        "daysInventoryOutstanding": 149.13563191915566
      },
      "profitability": {
        "roa": 0.06910311863028906,
        "roe": 0.09786340544511969,
        "roce": 0.09518824392095426,
        "roic": 0.07783826255634362,
        "netMargin": 0.26007706476660125,
        "grossMargin": 0.6449147983864922,
        "operatingMargin": 0.32495151368586017
      }
    },
    "CRWD": {
      "health": {
        "cashRatio": 1.1061597789235889,
        "quickRatio": 1.5310571637241481,
        "currentRatio": 1.5310571637241481,
        "debtToEquity": 0.17724747549406253,
        "netDebtToEbitda": -11.148531239542999,
        "interestCoverage": -7.265553205455474
      },
      "dividend": {
        "yield": 0,
        "payoutRatio": -0.8544512866522572
      },
      "perShare": {
        "eps": -0.02416033452619299,
        "fcfPerShare": 1.430780311509782,
        "cashPerShare": 4.485836433717465,
        "revenuePerShare": 5.019272303059921,
        "dividendPerShare": 0,
        "bookValuePerShare": 4.606565194772437
      },
      "valuation": {
        "pb": 48.57503378704269,
        "pe": -4669.0526315789475,
        "ps": 44.33071789839425,
        "peg": 106.22953293050354,
        "pFcf": 155.5151009083841,
        "evSales": 43.59822643751718,
        "evEbitda": 663.5656733053684,
        "fcfYield": 0.006430243713689981,
        "earningsYield": -0.00010893829257008293,
        "priceToFairValue": 48.57503378704269
      },
      "efficiency": {
        "grahamNumber": null,
        "assetTurnover": 0.45201018624502,
        "effectiveTaxRate": 3.1448240693523712,
        "inventoryTurnover": 0,
        "cashConversionCycle": 51.35517970284327,
        "receivablesTurnover": 5.454835542201573,
        "daysSalesOutstanding": 66.91310804444271,
        "daysInventoryOutstanding": 0
      },
      "profitability": {
        "roa": -0.0021757570917738086,
        "roe": -0.005826041772346485,
        "roce": -0.027848668160047232,
        "roic": 0.05956486001114686,
        "netMargin": -0.004813513407404499,
        "grossMargin": 0.750291900592831,
        "operatingMargin": -0.03911036080248125
      }
    },
    "DELL": {
      "health": {
        "cashRatio": 0.15520523338427303,
        "quickRatio": 0.7447250596530738,
        "currentRatio": 0.9464999061637042,
        "debtToEquity": -22.194444444444443,
        "netDebtToEbitda": 1.3255042642480033,
        "interestCoverage": 6.726361928616155
      },
      "dividend": {
        "yield": 0.0047679,
        "payoutRatio": 0.18159115233678202
      },
      "perShare": {
        "eps": 12.956856702619415,
        "fcfPerShare": 14.54853620955316,
        "cashPerShare": 17.83975346687211,
        "revenuePerShare": 206.47457627118644,
        "dividendPerShare": 2.31,
        "bookValuePerShare": -2.163328197226502
      },
      "valuation": {
        "pb": -223.9558475783476,
        "pe": 37.85078125,
        "ps": 2.401627881479381,
        "peg": 0.3773268208853352,
        "pFcf": 34.08419184219445,
        "evSales": 2.5477674913359505,
        "evEbitda": 23.108565004331933,
        "fcfYield": 0.02933911429174777,
        "earningsYield": 0.026743290269395478,
        "priceToFairValue": -223.9558475783476
      },
      "efficiency": {
        "grahamNumber": null,
        "assetTurnover": 1.1661169754509935,
        "effectiveTaxRate": 0.16972748815165878,
        "inventoryTurnover": 7.205022588360351,
        "cashConversionCycle": -8.813172329426294,
        "receivablesTurnover": 3.9307148514270627,
        "daysSalesOutstanding": 92.85842748615693,
        "daysInventoryOutstanding": 50.65910557860765
      },
      "profitability": {
        "roa": 0.07317709919678365,
        "roe": -3.6323974082073436,
        "roce": 0.26645169291826865,
        "roic": 0.186332128324974,
        "netMargin": 0.06275279473440695,
        "grossMargin": 0.19068372113849047,
        "operatingMargin": 0.08016298264205012
      }
    }
  }
}