← Research Library

BABA research report

Generated 2026-07-03 15:48 · status: complete

BABA — The Call

The Call

I’m bullish, but not blindly: at $96.14, I think BABA is a cheap, controversial value setup, not a high-quality compounder. The stock is being priced as if weak cash conversion and ugly sentiment are permanent, while the balance sheet remains serviceable, profitability is still real, and the valuation has compressed to 14.32x earnings, 11.43x EV/EBITDA, 1.53x sales, and 1.52x book with the stock sitting just above the 52-week low of $91.99. I side with valuation over momentum here: the business is messy, but the price already reflects a lot of that mess. Conviction: 7/10

What This Company Actually Is

I view Alibaba as a giant commercial infrastructure company disguised as an internet stock. Yes, it runs marketplaces, but the real engine is broader than that: it gathers merchant demand and consumer traffic, monetizes that through advertising and transaction-related services, supports fulfillment through Cainiao, and sells cloud and digital tools around the ecosystem. That matters because this is not one product or one app — it is a platform with multiple revenue taps. The problem is that the financials do not currently show elite platform economics. So I’m not calling it a wonderful business. I’m calling it a very large, still-profitable platform whose stock price has fallen to a level where I no longer need greatness to make the setup interesting.

The Numbers That Matter

  • Current price: $96.14
    This is the whole argument’s starting point. I’m not interested in BABA at any price. I’m interested in it here, near washed-out levels.

  • 52-week range: $91.99 to $192.67
    The stock is near the bottom of the range, not the middle. That tells me pessimism is already extreme.

  • P/E: 14.32
    Cheap versus CART 24.48, EBAY 25.52, HD 25.35, and even below JD 18.31. I’m paying a low multiple for a business that is still solidly profitable.

  • EV/EBITDA: 11.43
    Also below CART 14.20, EBAY 19.41, and HD 17.07, and only slightly above JD 10.28. That says the market is not giving BABA much credit for recovery or quality.

  • Revenue: 1,023,670,000,000 and gross profit: 407,534,000,000
    Scale is not the same as moat, but scale still matters. A business this large with a 39.81% gross margin is not economically broken.

  • Operating margin: 5.83% and net margin: 10.12%
    This is the main quality objection, and it is valid. These are mediocre margins for a supposedly advantaged platform. That keeps me from calling this a premium business.

  • ROIC: 3.17%, ROCE: 4.18%, ROE: 10.00%, ROA: 5.44%
    These are weak-to-okay returns, not great ones. This is why I reject the “elite moat” story.

  • Operating cash flow: 76,213,000,000; capex: 126,937,000,000; free cash flow: -50,724,000,000
    This is the biggest bear point, full stop. Negative free cash flow means the current earnings story is not being backed by surplus cash after investment.

  • FCF per share: -2.62, FCF yield: -3.31%, P/FCF: -30.25
    Same message in market shorthand: cash conversion is poor right now.

  • Cash: 172,919,777,000 vs total debt: 259,024,995,000; net debt: 86,105,218,000
    I care because this tells me the company has room to absorb a rough patch. This is not a balance-sheet panic.

  • Debt-to-equity: 0.245, net debt/EBITDA: 0.60, interest coverage: 5.92x, current ratio: 1.28, quick ratio: 1.28, cash ratio: 0.36
    Not fortress-level, but clearly manageable. The company has financial flexibility, which is why I’m willing to underwrite uncertainty.

  • Dividends paid: 33.732 billion and buybacks: 7.638 billion against free cash flow of -50.724 billion
    I do not like this. Returning about 41.4 billion to shareholders while free cash flow is negative is a real red flag.

  • 50-day average: $122.90, 200-day average: $147.08, 20-day SMA: $107.43, 50-day EMA: $118.10, RSI 14: 23.77
    The chart is ugly. The stock is below every key trend marker and deeply oversold. I’m not denying the damage; I’m saying the damage is visible and heavily reflected in price.

  • Analyst views: 51 buys, 7 holds, 1 sell; low target $140; median $186; consensus $187.14; high $225
    I don’t lean on targets to make the case, but I do note this: the stock is below even the low target of $140. Expectations in the market price are far more depressed than sell-side models.

Bull vs Bear — Who Wins

The bull case is simple: BABA is a massive platform with real profitability, manageable leverage, and a stock priced for skepticism. At 14.32x P/E and 11.43x EV/EBITDA, near a 52-week low of $91.99, I do not need perfection. I just need the business to remain intact and cash generation to stop looking disastrous.

The bear case is also simple and strong: the quality of the business is worse than the story. Operating margin is 5.83%, ROIC is 3.17%, and free cash flow is -50.724 billion. The chart is broken, the stock fell from $145.81 on 2026-05-13 to $94.81 on 2026-06-26, and management returned about 41.4 billion to shareholders while free cash flow was negative. That is not what high-quality businesses do.

I pick the bull side — but narrowly, and only because of price. The business analyst is right that this is not a great business on these numbers. The forensic analyst is right that the cash-flow quality is the main issue. The bear analyst is right that the trend is awful. But the valuation analyst is the one making the decision that matters: what is already in the stock? At $96.14, I think the market has already punished BABA for being mediocre. I do not need to believe it is wonderful; I only need to believe it is better than a near-bottom valuation attached to a still-scaled, still-profitable platform with a manageable balance sheet. That is the side I’m on.

Red Flags

  • Negative free cash flow of -50.724 billion despite 103.6 billion of net income.
  • Operating cash flow of 76.2 billion is only about 74% of net income, which raises earnings-quality questions.
  • Capex of 126.937 billion is enormous relative to operating cash flow.
  • Operating margin of 5.83% is weak for a platform business.
  • ROIC of 3.17% says capital efficiency is poor.
  • The company paid 33.732 billion in dividends and 7.638 billion in buybacks while free cash flow was negative.
  • Cash ratio of 0.36 is adequate, not strong, if weak cash generation persists.
  • The chart is damaged: price is below the 20-day SMA of $107.43, 50-day EMA of $118.10, 50-day average of $122.90, and 200-day average of $147.08.
  • RSI 23.77 says oversold, but oversold is not the same as cheap for a reason.

What I'd Do

I would treat BABA as attractive near the current price of $96.14 and more attractive closer to the 52-week low of $91.99, specifically for investors looking at controversial value rather than quality. If I wanted price confirmation instead of trying to catch a falling knife, I would wait for the stock to reclaim at least the 20-day SMA of $107.43, and ideally the 50-day EMA of $118.10. If the stock cannot even recover those levels, I have no interest pretending momentum has stabilized. For upside framing, I would watch whether the market eventually values it closer to JD’s 18.31x P/E rather than BABA’s current 14.32x — not because BABA deserves a premium, but because it does not need much re-rating for the setup to work. I would avoid paying attention to the $186 median or $187.14 consensus target until the cash-flow picture improves; the price setup is real, but the targets are too generous for the current fundamentals.

What Would Change My Mind

I would turn negative if the next evidence still shows free cash flow remaining negative around the current -50.724 billion while shareholder payouts continue at anything like the recent 41.4 billion pace. I would also abandon the value case if leverage stopped being merely manageable — specifically if net debt/EBITDA moved materially above the current 0.60 and interest coverage deteriorated from 5.92x instead of improving. On the operating side, if operating margin stays stuck around 5.83% and ROIC around 3.17%, then the “temporary mess” argument dies and the market discount is deserved. And technically, if the stock loses the 52-week low of $91.99 without any improvement in cash flow or margins, I would stop arguing with the tape.

Glossary

  • P/E: Price-to-earnings ratio; stock price divided by earnings per share.
  • EV/EBITDA: Enterprise value divided by earnings before interest, taxes, depreciation, and amortization; a common valuation multiple.
  • P/S: Price-to-sales ratio; stock price relative to revenue.
  • P/B: Price-to-book ratio; stock price relative to accounting book value.
  • Gross margin: Gross profit divided by revenue; shows profit left after direct costs.
  • Operating margin: Operating income divided by revenue; shows profitability of the core business.
  • Net margin: Net income divided by revenue; shows profit after all expenses.
  • ROIC: Return on invested capital; how efficiently the company turns invested capital into profit.
  • ROCE: Return on capital employed; profit earned on capital used in the business.
  • ROE: Return on equity; profit generated on shareholders’ equity.
  • ROA: Return on assets; profit generated from the company’s asset base.
  • Operating cash flow (OCF): Cash generated from normal operations.
  • Capex: Capital expenditures; money spent on long-term assets and investment.
  • Free cash flow (FCF): Operating cash flow minus capex; cash left after investment spending.
  • FCF yield: Free cash flow divided by market value; shows cash generation relative to the stock price.
  • P/FCF: Price-to-free-cash-flow ratio; stock price relative to free cash flow.
  • Debt-to-equity: Total debt divided by shareholders’ equity; a leverage measure.
  • Net debt: Total debt minus cash.
  • Net debt/EBITDA: Net debt divided by EBITDA; a leverage measure showing debt load versus earnings power.
  • Interest coverage: EBIT divided by interest expense; shows how easily the company can pay interest.
  • Current ratio: Current assets divided by current liabilities; short-term liquidity measure.
  • Quick ratio: Liquid current assets divided by current liabilities; stricter liquidity measure.
  • Cash ratio: Cash divided by current liabilities; most conservative liquidity measure.
  • Buybacks: Company repurchases of its own shares.
  • 52-week low / high: Lowest and highest stock price over the last year.
  • 20-day SMA: 20-day simple moving average; average closing price over 20 days.
  • 50-day average: Average closing price over 50 days; a trend indicator.
  • 50-day EMA: 50-day exponential moving average; a trend indicator that weights recent prices more heavily.
  • 200-day average: Average closing price over 200 days; a long-term trend indicator.
  • RSI: Relative strength index; momentum indicator, with readings below 30 often called oversold.
  • Oversold: A technical term meaning selling has been unusually intense; it does not guarantee a rebound.
  • Falling knife: A stock dropping fast where buying too early can be painful.
  • Sell-side: Brokerage and bank analysts who publish ratings and price targets.

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 wouldn’t call this a great business from these numbers. I’d call it a good business with a very broad platform, but the moat is weaker in the reported economics than the story suggests.

How it makes money is clear from the description: it runs commerce marketplaces and merchant services, monetizes traffic through advertising/marketing, supports fulfillment through Cainiao, and sells cloud services and other digital tools. In plain English, it is an ecosystem business: attract merchants and consumers, then earn from transaction-related services, ads, logistics, and software infrastructure.

Now the hard part: does the financial data prove durable advantage?

Not convincingly enough for me.

- Revenue is enormous at 1,023,670,000,000, and gross profit is 407,534,000,000. That gives a gross margin of 39.81%, which is healthy.
- But operating income is only 59,665,000,000, for an operating margin of 5.83%. That is not what I expect from a truly elite platform business with strong pricing power. Pricing power means the company can charge enough above its costs that profits stay fat after operating expenses. Here, they don’t stay very fat.
- Net margin is 10.12%, which is decent, but again not exceptional for a business this scaled and supposedly advantaged.
- The biggest red flag is return on invested capital, or ROIC. ROIC measures how much profit a company earns on the capital tied up in the business. It’s one of the best tests of moat quality. BABA’s ROIC is 3.17%. That is weak. ROCE is 4.18%, ROE is 10.00%, and ROA is 5.44%. Those are not terrible, but they are nowhere near “great business” territory.

And the peer data makes that weakness harder to excuse.

- CART has ROIC of 16.87% and operating margin of 14.80%.
- EBAY has ROIC of 14.57% and operating margin of 19.58%.
- HD has ROIC of 20.39% and operating margin of 12.45%.
- Even JD, which looks much lower-quality on margin, is not a useful excuse because its business model is clearly lower margin to begin with; BABA is supposed to be better than that, and the numbers don’t prove it.

So despite the narrative of a sprawling ecosystem, the capital efficiency is mediocre. Scale alone is not a moat if it doesn’t translate into superior returns.

Cash generation is another issue.

- Operating cash flow is 76,213,000,000, but capex is 126,937,000,000, producing free cash flow of -50,724,000,000.
- Reported free cash flow per share is -2.62 and FCF yield is -3.31%.
- p/FCF is negative at -30.25 because free cash flow is negative.

That matters. A great business usually throws off cash after maintaining and growing itself. Here, cash generation after investment is negative. Maybe that investment is smart; maybe not. But I’m not being paid to imagine a better business than the one in the statements.

The balance sheet is fine, not broken.

- Debt-to-equity is 0.245, net debt to EBITDA is 0.60, and current ratio is 1.28.
- Cash is 172,919,777,000 against total debt of 259,024,995,000, with net debt of 86,105,218,000.
- Interest coverage is 5.92x.

So this is not a financial distress story. The company has room. But a safe balance sheet does not make a business great.

Valuation looks undemanding on earnings and book value:

- PE is 14.32.
- PS is 1.53.
- PB is 1.52.
- EV/EBITDA is 11.43.

That’s cheap relative to many platform or retail-tech businesses. But cheap can mean “mispriced gem,” and it can also mean “market sees mediocre economics.” Based on these returns, I think the discount is at least partly deserved.

The stock action also says the market has lost confidence recently:

- Current price is 96.14.
- That is near the 52-week low of 91.99 and far below the 52-week high of 192.67.
- It is below the 50-day average of 122.90 and the 200-day average of 147.08.
- RSI is 23.77, which signals the stock is oversold technically, but oversold is not the same thing as undervalued.

Analysts are still optimistic — 51 buys, 7 holds, 1 sell, median target 186, consensus target 187.14 — but I care more about operating margin, free cash flow, and ROIC than target prices. Analysts can love a stock for years while the business under-earns its potential.

So where do I land?

This is a real business, not a fraud and not just “good marketing.” The scale is massive, the gross margin is solid, the balance sheet is manageable, and the business model has multiple monetization engines. But the moat story is not showing up cleanly in the numbers that matter most to me: 5.83% operating margin, 3.17% ROIC, and negative free cash flow of -50,724,000,000.

Bottom line: I see BABA as a good business, not a great one. The platform is large and valuable, but the economics here do not prove a durable moat with elite pricing power or capital efficiency.
Forensic Accountant
I’m calling this **WATCH-LIST**.

The balance sheet is not the problem. Cash generation is.

### What looks clean
- **Debt load is moderate.** Total debt is **259.0B** against cash of **172.9B**, leaving **net debt of 86.1B**.  
- **Leverage ratios are reasonable.** **Debt-to-equity is 0.245** and **net debt / EBITDA is 0.597**. That is not a stressed capital structure.
- **Interest is covered.** Interest coverage is **5.92x**, with **EBIT of 59.7B** and **interest expense of 9.79B**. Not luxurious, but solid enough.
- **Equity is positive and large.** Total equity is **1.057T**. No negative equity issue here.
- **Retained earnings are positive.** **705.7B**. I don’t see a blown-out deficit or obvious cumulative destruction of capital from the figures provided.
- **Liquidity is acceptable.** Current ratio and quick ratio are both **1.28**. Current assets are **608.5B** versus current liabilities of **474.6B**.

### What I do not like
- **Free cash flow is negative.** This is the biggest red flag in the whole file.  
  - Operating cash flow: **76.2B**  
  - Capex: **126.9B**  
  - Free cash flow: **-50.7B**
  
  Free cash flow means cash left after capital spending. Negative FCF means the business consumed cash after reinvestment. That matters more than accounting profit.

- **Net income is not converting well into operating cash.**  
  - Net income: **103.6B**  
  - Operating cash flow: **76.2B**
  
  OCF is only about **74%** of net income. I prefer to see cash flow at least keeping pace with earnings over time. Here, cash trails profit materially.

- **Shareholder payouts exceeded free cash flow by a mile.**  
  - Dividends paid: **33.7B**  
  - Buybacks: **7.64B**  
  - Total cash returned: about **41.4B**  
  - Free cash flow: **-50.7B**
  
  They returned cash to shareholders while free cash flow was negative. That means payouts were not funded by internally generated free cash after investment. That’s a red flag for payout quality.

- **Cash balance shrank.** Net change in cash was **-15.7B**. When free cash flow is negative and cash declines, I pay attention.

- **Valuation metrics themselves confirm the cash problem.**  
  - **p/FCF is -30.25**  
  - **FCF yield is -3.31%**  
  - **FCF per share is -2.62**
  
  Those aren’t opinions; they’re the market’s shorthand way of saying free cash flow is currently negative.

### Mixed signals
- **Cash ratio is only 0.364.** That’s not dangerous by itself, but it says pure cash alone does not cover current liabilities; they rely on broader current assets and ongoing operations.
- **Operating margin is only 5.83%** while net margin is **10.12%**. I’d rather see the core operation carry more of the load. It doesn’t prove manipulation, but it tells me the earnings quality question is fair.
- **Stock-based comp is 11.18B.** Not outrageous relative to size, but it is real dilution/economic cost and should not be ignored when free cash flow is already negative.

### What I cannot verify
You asked for full forensic judgment from balance sheet, cash flow, income statement, and health ratios. I can do that only with what is present. Detailed line items that often expose accounting games — receivables trends, deferred revenue, acquisitions, goodwill movements, detailed working capital changes, debt maturities, and multi-year statement history — are **not available**.

### Market signal, not accounting proof
The stock has been hit hard:
- Current price: **96.14**
- 50-day average: **122.90**
- 200-day average: **147.08**
- 52-week high/low: **192.67 / 91.99**

That price action is ugly, but price is not evidence of dirty books. It does tell me the market is already punishing something.

## Bottom line
I do **not** smell an obvious balance-sheet disaster: leverage, equity, and liquidity look broadly serviceable. But I **do** see a real cash-quality problem: **103.6B** of net income turned into only **76.2B** of operating cash flow, then **-50.7B** of free cash flow, while the company still paid **41.4B** in dividends and buybacks.  

**Verdict: WATCH-LIST.** The books don’t scream fraud from this data, but the cash flow absolutely does not backstop the earnings cleanly enough for me to call this CLEAN.
Valuation
I wouldn’t overcomplicate this: at **$96.14**, I think the market is asking for **modest growth and a lot of skepticism**, not heroics.

### What growth is already priced in
The cleanest read is from the multiples:

- **P/E: 14.32** — that is low versus several peers in the bundle:
  - **CART 24.48**
  - **EBAY 25.52**
  - **HD 25.35**
  - **JD 18.31**
- **EV/EBITDA: 11.43** — also below:
  - **CART 14.20**
  - **EBAY 19.41**
  - **HD 17.07**
  - only slightly above **JD 10.28**
- **P/S: 1.53** — cheap for a business with a **39.81% gross margin** and **10.12% net margin**, though not as optically cheap as **JD at 0.19**.

So what is the market embedding? To me, it’s embedding a business that **will grow, but not at a premium rate**, and one that does **not deserve a best-in-class multiple**. If investors believed strong, durable growth and clean cash conversion were coming, this would not sit at **14.32x earnings** and **11.43x EV/EBITDA**.

That said, this is **not a pristine value story** either, because the cash flow line is ugly:

- **Free cash flow: -50.724 billion**
- **P/FCF: -30.25**
- **FCF yield: -3.31%**

Free cash flow (cash left after capital spending) matters because that’s what owners can ultimately use for buybacks, dividends, or reinvestment. Right now, the market is basically saying: **“I’ll pay for accounting earnings, but I’m haircutting the stock because cash conversion is poor.”** That’s a fair interpretation of the discount.

### Is the market’s ask reasonable?
Yes — actually more than reasonable.

The current price is near the bottom of its range:

- **52-week low: $91.99**
- **Current price: $96.14**
- **52-week high: $192.67**

It is also trading **well below** key trend markers:

- **50-day average: $122.90**
- **200-day average: $147.08**
- **20-day SMA: $107.43**
- **50-day EMA: $118.10**

And momentum is washed out:

- **RSI 14: 23.77**

RSI is a momentum indicator; below 30 usually means the stock is oversold. That doesn’t make it automatically cheap, but it tells me sentiment is already very negative.

Against that backdrop, the analyst setup is striking:

- **51 buys, 7 holds, 1 sell**
- **Target low: $140**
- **Target median: $186**
- **Target consensus: $187.14**
- **Target high: $225**

Even the **lowest target, $140**, is far above **$96.14**. I never blindly follow analyst targets, but when the stock is below the low end of the target band, it tells me expectations in the market price are already depressed.

### Would I pay it?
For a **value investor who can tolerate uncertainty**, yes, I would pay it.

Here’s why:
- **14.32x earnings** is not demanding.
- **11.43x EV/EBITDA** is not demanding.
- Balance sheet risk looks manageable:
  - **debt/equity 0.245**
  - **net debt/EBITDA 0.60**
  - **current ratio 1.28**
- Profitability is still real:
  - **operating margin 5.83%**
  - **net margin 10.12%**
  - **ROE 10.00%**

What I’m *not* paying for is a high-quality compounding machine. The negative free cash flow and low **ROIC of 3.17%** keep me from calling it a slam dunk. So I’m not paying up for perfection — but at **$96.14**, I don’t need perfection.

### What would make it more interesting if I didn’t buy today?
If I wanted a bigger margin of safety, I’d get more aggressive **closer to the 52-week low of $91.99**.

If I wanted confirmation instead of bargain-hunting, I’d wait for the stock to reclaim at least the **20-day SMA of $107.43**, or better yet the **50-day EMA of $118.10**. That would tell me the market has stopped treating this like a falling knife.

For upside, even a partial re-rating matters. If the stock were simply valued more like **JD’s 18.31x P/E** instead of **14.32x**, that would imply materially more value than today’s price. I’m not inventing a price target from that here, but the direction is obvious: **it does not need a peer-premium multiple to work**.

### Cheap, fair, or expensive — and for whom?
- **Cheap for value investors and contrarians**
- **Fair for broad market investors**
- **Still too messy for quality-focused investors who care a lot about free cash flow**

### Bottom line
At **$96.14**, I think **BABA is cheap enough to buy if I’m being paid to stomach uncertainty**. I would pay this price, but I’d size it like a controversial value name, not a clean compounder
Short Seller
I would not own this stock here. The bear case is not that the company is financially broken — it isn’t. The bear case is that the stock action, cash generation, and margin profile do not support the level of optimism still embedded in analyst sentiment.

### 1) The trend is awful, and I don’t fight that
Price is **$96.14**, basically sitting on the **52-week low of $91.99** and miles below the **52-week high of $192.67**. That means the stock has been cut roughly in half from the high while the Street still shows a **“Buy”** consensus.

Technically, this is a damaged chart:
- Price is below the **50-day average of $122.90**
- Price is below the **200-day average of $147.08**
- Price is below the **20-day SMA of $107.43**
- Price is below the **50-day EMA of $118.10**
- **RSI 14 is 23.77**, which means deeply oversold. Oversold can bounce, but it also tells me sellers have been in control.

The recent tape confirms a sharp deterioration. The stock closed at **$145.81 on 2026-05-13** and fell to **$94.81 on 2026-06-26**. That is a brutal drop in about six weeks. When a stock collapses that hard while consensus remains overwhelmingly bullish, I assume the market is discounting something the models are too slow to reflect.

### 2) “Cheap” valuation is less comforting when free cash flow is negative
A lot of bulls will point to the headline **P/E of 14.32**, **P/S of 1.53**, and **P/B of 1.52** and call it cheap. I’m not dismissing that. I’m saying the quality of those earnings matters, and the cash conversion here is the problem.

Free cash flow, or **FCF**, is the cash left after the business pays for capital spending. That is the money that actually funds buybacks, dividends, debt reduction, and flexibility. Here, it is negative:

- **Free cash flow: -50.724 billion**
- **FCF per share: -2.62**
- **FCF yield: -3.31%**
- **Price to FCF: -30.25**

That is the kind of number that breaks value narratives. A stock can look optically cheap on earnings while still being expensive relative to the cash owners actually receive. This business generated **operating cash flow of 76.213 billion**, but spent **126.937 billion** in capex, which is why FCF went negative.

And despite that negative FCF, cash still went out the door:
- **Dividends paid: 33.732 billion**
- **Buybacks: 7.638 billion**
- **Net change in cash: -15.7 billion**

If a company is paying out capital while FCF is negative, I start asking whether capital returns are being supported by balance sheet capacity rather than fresh internally generated surplus cash. That’s not fatal today, but it raises the bar for execution.

### 3) Profitability is mediocre for the optimism attached to it
This is not a high-margin machine in the current numbers.

- **Gross margin: 39.81%**
- **Operating margin: 5.83%**
- **Net margin: 10.12%**
- **ROE: 10.00%**
- **ROIC: 3.17%**
- **ROCE: 4.18%**

ROIC, or **return on invested capital**, tells me how efficiently management turns the capital tied up in the business into operating profit. **3.17%** is weak. That matters because the company is spending heavily — capex is **126.937 billion** — but the return on that capital, based on this dataset, is not impressive.

This is the core mismatch: investors are being asked to underwrite a big, complex platform with massive investment needs, but current operating profitability is only **5.83%** and FCF is negative. That does not justify blind faith in a rapid reacceleration.

### 4) The balance sheet is okay — but not strong enough to ignore execution risk
This is not a balance-sheet disaster. Debt is manageable:
- **Debt-to-equity: 0.245**
- **Net debt to EBITDA: 0.60**
- **Interest coverage: 5.92**

So I’m not making a bankruptcy argument. My issue is more subtle: liquidity is adequate, not bulletproof, and that matters more when cash flow has turned negative.

- **Current ratio: 1.28**
- **Quick ratio: 1.28**
- **Cash ratio: 0.36**
- **Cash: 172.920 billion**
- **Current liabilities: 474.619 billion**

A **cash ratio of 0.36** means cash covers only about 36% of current liabilities. Again, not an emergency, but it’s hardly fortress-like if heavy capex and negative FCF persist. The company can handle today’s position; I’m less comfortable if weak cash generation becomes a pattern.

### 5) Analyst optimism is wildly ahead of what the market is saying
This is where I get especially bearish.

Analyst setup:
- **51 buys**
- **7 holds**
- **1 sell**
- **Consensus target: 187.14**
- **Median target: 186**
- **Low target: 140**
- **High target: 225**

Current price is **$96.14**. Even the **lowest** analyst target, **$140**, is dramatically above the
Data snapshot (figures as of generation)
{
  "ohlc": [
    {
      "low": 124.86,
      "date": "2026-04-08",
      "high": 129.34,
      "open": 128.11,
      "close": 125.32,
      "volume": 17638100
    },
    {
      "low": 123.96,
      "date": "2026-04-09",
      "high": 127.78,
      "open": 124.52,
      "close": 127.68,
      "volume": 10014600
    },
    {
      "low": 127.05,
      "date": "2026-04-10",
      "high": 129.76,
      "open": 129.14,
      "close": 127.33,
      "volume": 9356300
    },
    {
      "low": 125.55,
      "date": "2026-04-13",
      "high": 128.09,
      "open": 125.99,
      "close": 128.01,
      "volume": 5550200
    },
    {
      "low": 128.47,
      "date": "2026-04-14",
      "high": 132.88,
      "open": 128.47,
      "close": 131.35,
      "volume": 11718520
    },
    {
      "low": 131.37,
      "date": "2026-04-15",
      "high": 133.6,
      "open": 132.7,
      "close": 133.28,
      "volume": 8749500
    },
    {
      "low": 135.74,
      "date": "2026-04-16",
      "high": 140.9,
      "open": 137.8,
      "close": 138.59,
      "volume": 17122238
    },
    {
      "low": 139.88,
      "date": "2026-04-17",
      "high": 143.78,
      "open": 141.15,
      "close": 141.01,
      "volume": 12886521
    },
    {
      "low": 138.87,
      "date": "2026-04-20",
      "high": 140.93,
      "open": 140.47,
      "close": 140.17,
      "volume": 7823300
    },
    {
      "low": 134.46,
      "date": "2026-04-21",
      "high": 139.25,
      "open": 139.25,
      "close": 135.38,
      "volume": 11388200
    },
    {
      "low": 135.38,
      "date": "2026-04-22",
      "high": 137.33,
      "open": 136.91,
      "close": 136.42,
      "volume": 9258300
    },
    {
      "low": 129.62,
      "date": "2026-04-23",
      "high": 133.9,
      "open": 133.78,
      "close": 131.7,
      "volume": 10749900
    },
    {
      "low": 133,
      "date": "2026-04-24",
      "high": 136.2,
      "open": 133.68,
      "close": 135.82,
      "volume": 9046800
    },
    {
      "low": 132.09,
      "date": "2026-04-27",
      "high": 133.41,
      "open": 133,
      "close": 132.52,
      "volume": 6462100
    },
    {
      "low": 128.95,
      "date": "2026-04-28",
      "high": 130.92,
      "open": 129.5,
      "close": 130.85,
      "volume": 6088113
    },
    {
      "low": 129.96,
      "date": "2026-04-29",
      "high": 132.03,
      "open": 131.95,
      "close": 130.43,
      "volume": 6386040
    },
    {
      "low": 129.35,
      "date": "2026-04-30",
      "high": 132.64,
      "open": 130.15,
      "close": 131.88,
      "volume": 7416640
    },
    {
      "low": 131.36,
      "date": "2026-05-01",
      "high": 133.15,
      "open": 131.76,
      "close": 131.5,
      "volume": 6199300
    },
    {
      "low": 133.26,
      "date": "2026-05-04",
      "high": 136.12,
      "open": 133.98,
      "close": 133.27,
      "volume": 8317200
    },
    {
      "low": 132.17,
      "date": "2026-05-05",
      "high": 134.72,
      "open": 134.63,
      "close": 132.26,
      "volume": 6919340
    },
    {
      "low": 136.74,
      "date": "2026-05-06",
      "high": 142.2,
      "open": 137.31,
      "close": 141.44,
      "volume": 16958926
    },
    {
      "low": 140.44,
      "date": "2026-05-07",
      "high": 143.95,
      "open": 143.76,
      "close": 141,
      "volume": 10698816
    },
    {
      "low": 139.37,
      "date": "2026-05-08",
      "high": 143.8,
      "open": 142.05,
      "close": 140.06,
      "volume": 10062038
    },
    {
      "low": 136.22,
      "date": "2026-05-11",
      "high": 138.85,
      "open": 137.66,
      "close": 137.3,
      "volume": 9859200
    },
    {
      "low": 133.82,
      "date": "2026-05-12",
      "high": 136.97,
      "open": 136.49,
      "close": 134.78,
      "volume": 16129000
    },
    {
      "low": 130.33,
      "date": "2026-05-13",
      "high": 146.87,
      "open": 132.06,
      "close": 145.81,
      "volume": 40214629
    },
    {
      "low": 138.61,
      "date": "2026-05-14",
      "high": 143.98,
      "open": 140.98,
      "close": 141.12,
      "volume": 19422031
    },
    {
      "low": 131.95,
      "date": "2026-05-15",
      "high": 135.88,
      "open": 135.88,
      "close": 132.59,
      "volume": 17985114
    },
    {
      "low": 132.57,
      "date": "2026-05-18",
      "high": 134.88,
      "open": 133.95,
      "close": 133.26,
      "volume": 10379400
    },
    {
      "low": 134.79,
      "date": "2026-05-19",
      "high": 136.78,
      "open": 135.35,
      "close": 135.64,
      "volume": 11084232
    },
    {
      "low": 132.73,
      "date": "2026-05-20",
      "high": 135.89,
      "open": 135.86,
      "close": 134.47,
      "volume": 7035407
    },
    {
      "low": 128.09,
      "date": "2026-05-21",
      "high": 131.76,
      "open": 129.55,
      "close": 131.47,
      "volume": 12621500
    },
    {
      "low": 126.93,
      "date": "2026-05-22",
      "high": 130.75,
      "open": 126.93,
      "close": 130,
      "volume": 11868400
    },
    {
      "low": 129.07,
      "date": "2026-05-26",
      "high": 130.24,
      "open": 130.1,
      "close": 129.47,
      "volume": 5599000
    },
    {
      "low": 126.25,
      "date": "2026-05-27",
      "high": 129,
      "open": 126.32,
      "close": 127.76,
      "volume": 8272827
    },
    {
      "low": 123.54,
      "date": "2026-05-28",
      "high": 126.57,
      "open": 124.72,
      "close": 126.16,
      "volume": 11541348
    },
    {
      "low": 123.43,
      "date": "2026-05-29",
      "high": 125.04,
      "open": 124.39,
      "close": 124.22,
      "volume": 12504300
    },
    {
      "low": 123.99,
      "date": "2026-06-01",
      "high": 126.35,
      "open": 124.2,
      "close": 125.4,
      "volume": 9297825
    },
    {
      "low": 130.52,
      "date": "2026-06-02",
      "high": 134.09,
      "open": 132.25,
      "close": 130.82,
      "volume": 15355106
    },
    {
      "low": 126.83,
      "date": "2026-06-03",
      "high": 128.89,
      "open": 128.76,
      "close": 127.21,
      "volume": 8646200
    },
    {
      "low": 125.94,
      "date": "2026-06-04",
      "high": 128.17,
      "open": 126.62,
      "close": 125.95,
      "volume": 6928100
    },
    {
      "low": 120.46,
      "date": "2026-06-05",
      "high": 125.23,
      "open": 125.01,
      "close": 121.06,
      "volume": 12891400
    },
    {
      "low": 119.61,
      "date": "2026-06-08",
      "high": 122.36,
      "open": 121.76,
      "close": 120.07,
      "volume": 9493315
    },
    {
      "low": 118.37,
      "date": "2026-06-09",
      "high": 122.42,
      "open": 121.3,
      "close": 119.7,
      "volume": 11871006
    },
    {
      "low": 115.37,
      "date": "2026-06-10",
      "high": 118.18,
      "open": 116,
      "close": 115.38,
      "volume": 10880900
    },
    {
      "low": 109.66,
      "date": "2026-06-11",
      "high": 112.82,
      "open": 110.88,
      "close": 112.69,
      "volume": 16403600
    },
    {
      "low": 110.97,
      "date": "2026-06-12",
      "high": 112.82,
      "open": 112.57,
      "close": 112.82,
      "volume": 8157900
    },
    {
      "low": 112.11,
      "date": "2026-06-15",
      "high": 113.82,
      "open": 112.66,
      "close": 112.55,
      "volume": 10426109
    },
    {
      "low": 109.05,
      "date": "2026-06-16",
      "high": 111.25,
      "open": 109.33,
      "close": 110.97,
      "volume": 14128119
    },
    {
      "low": 107.38,
      "date": "2026-06-17",
      "high": 110.58,
      "open": 109.51,
      "close": 107.44,
      "volume": 13280700
    },
    {
      "low": 105.51,
      "date": "2026-06-18",
      "high": 107.37,
      "open": 106.49,
      "close": 107.1,
      "volume": 14603000
    },
    {
      "low": 103.91,
      "date": "2026-06-22",
      "high": 106.53,
      "open": 105.09,
      "close": 104.97,
      "volume": 13220800
    },
    {
      "low": 101.83,
      "date": "2026-06-23",
      "high": 103.54,
      "open": 102.38,
      "close": 102.6,
      "volume": 11335713
    },
    {
      "low": 99.1,
      "date": "2026-06-24",
      "high": 101.67,
      "open": 101.25,
      "close": 99.8,
      "volume": 15334300
    },
    {
      "low": 94.71,
      "date": "2026-06-25",
      "high": 98.1,
      "open": 97.68,
      "close": 95.07,
      "volume": 20248200
    },
    {
      "low": 91.99,
      "date": "2026-06-26",
      "high": 95.72,
      "open": 92,
      "close": 94.81,
      "volume": 18307600
    },
    {
      "low": 94.4,
      "date": "2026-06-29",
      "high": 97.47,
      "open": 96.14,
      "close": 95.51,
      "volume": 21078900
    },
    {
      "low": 94.36,
      "date": "2026-06-30",
      "high": 96.96,
      "open": 94.99,
      "close": 95.98,
      "volume": 11816100
    },
    {
      "low": 95.53,
      "date": "2026-07-01",
      "high": 99.46,
      "open": 95.6,
      "close": 97.99,
      "volume": 11888600
    },
    {
      "low": 95.19,
      "date": "2026-07-02",
      "high": 97.95,
      "open": 96.89,
      "close": 96.14,
      "volume": 11698541
    }
  ],
  "peers": [
    {
      "price": 45.78,
      "symbol": "CART",
      "companyName": "Maplebear Inc."
    },
    {
      "price": 114.84,
      "symbol": "EBAY",
      "companyName": "eBay Inc."
    },
    {
      "price": 357.9,
      "symbol": "HD",
      "companyName": "The Home Depot, Inc."
    },
    {
      "price": 26.62,
      "symbol": "JD",
      "companyName": "JD.com, Inc."
    },
    {
      "price": 1763.36,
      "symbol": "MELI",
      "companyName": "MercadoLibre, Inc."
    },
    {
      "price": 11.72,
      "symbol": "MNSO",
      "companyName": "MINISO Group Holding Limited"
    },
    {
      "price": 82.39,
      "symbol": "PDD",
      "companyName": "PDD Holdings Inc."
    },
    {
      "price": 174.59,
      "symbol": "TM",
      "companyName": "Toyota Motor Corporation"
    }
  ],
  "quote": {
    "name": "Alibaba Group Holding Limited",
    "open": 96.89,
    "price": 96.14,
    "change": -1.85,
    "dayLow": 95.19,
    "symbol": "BABA",
    "volume": 10816201,
    "dayHigh": 97.935,
    "yearLow": 91.99,
    "exchange": "NYSE",
    "yearHigh": 192.67,
    "marketCap": 230698188715,
    "priceAvg50": 122.9046,
    "priceAvg200": 147.0835,
    "previousClose": 97.99,
    "changePercentage": -1.88795
  },
  "grades": [
    {
      "date": "2026-05-15",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2026-05-14",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-05-14",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-05-14",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-04-14",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-26",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2026-03-20",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-20",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2026-03-20",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-20",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2026-03-19",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-01-08",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-01-06",
      "action": "downgrade",
      "company": "Freedom Broker",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2026-01-06",
      "action": "downgrade",
      "company": "Freedom Capital Markets",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-11-26",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-11-26",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-11-26",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-11-26",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-11-26",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-10-10",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-10-09",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-10-01",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-09-29",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-24",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-24",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-18",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2025-09-10",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-09",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-09-02",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-02",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-09-02",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-02",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-09-02",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-07-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-07-11",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-05-16",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-05-16",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-05-16",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-04-08",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-03-28",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-02-26",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-02-25",
      "action": "upgrade",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2025-02-24",
      "action": "upgrade",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2025-02-21",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-02-21",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-02-21",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-02-21",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-02-21",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-02-20",
      "action": "downgrade",
      "company": "Jefferies",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-02-19",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2025-02-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-01-21",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-01-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2025-01-09",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2025-01-09",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-11-19",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-11-18",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-11-18",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-11-17",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-11-15",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-11-12",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-10-24",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-10-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-10-09",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2024-10-09",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-10-09",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-10-07",
      "action": "upgrade",
      "company": "Macquarie",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2024-10-02",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-08-29",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-08-23",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2024-08-19",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2024-08-16",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-08-16",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-08-16",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-08-16",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2024-08-16",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-08-16",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-08-14",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-07-26",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-06-06",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-05-16",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-05-16",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-05-15",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-05-15",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-05-15",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-05-15",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-05-07",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-04-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-04-10",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-04-09",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-04-09",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Equal Weight"
    },
    {
      "date": "2024-03-27",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-02-08",
      "action": "downgrade",
      "company": "Macquarie",
      "toGrade": "Neutral",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-02-08",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-02-08",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2024-02-08",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-02-08",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-01-19",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2024-01-17",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-01-12",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2024-01-09",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2024-01-09",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-12-01",
      "action": "downgrade",
      "company": "Morgan Stanley",
      "toGrade": "Equal Weight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-11-22",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2023-11-17",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-11-17",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-11-17",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-11-17",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-11-01",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-10-31",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-10-10",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-08-31",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2023-08-11",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-08-11",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-08-11",
      "action": "upgrade",
      "company": "DZ Bank",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2023-08-11",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2023-08-11",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-08-11",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-08-11",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-07-17",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-07-12",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-06-27",
      "action": "downgrade",
      "company": "Bernstein",
      "toGrade": "Market Perform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-06-21",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-06-20",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-23",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2023-05-19",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-19",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-19",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-19",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-05-19",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-10",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-05-09",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "US Tiger Securities, Inc",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "BOCOM International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "upgrade",
      "company": "KGI Securities",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-24",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-20",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-04-20",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2023-04-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-12",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-12",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-10",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-04-10",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-04-04",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-04-04",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-30",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-29",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-29",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-29",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-03-28",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-02-28",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2023-02-24",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-02-24",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-02-24",
      "action": "upgrade",
      "company": "KGI Securities",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2023-02-23",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-02-23",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-01-13",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-01-13",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-01-11",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2023-01-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-01-10",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2023-01-09",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-18",
      "action": "maintain",
      "company": "BOCOM International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-17",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-17",
      "action": "maintain",
      "company": "US Tiger Securities, Inc",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-11-01",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-10-31",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-10-28",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-10-19",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-10-11",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-10-06",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-10-03",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-09-30",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-09-29",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-09-28",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-08-28",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-08-08",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-08-05",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-08-04",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-08-01",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-20",
      "action": "upgrade",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2022-07-11",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-08",
      "action": "maintain",
      "company": "BOCOM International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-08",
      "action": "maintain",
      "company": "CMB International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-07",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-06",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-05",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-05",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-07-05",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-07-04",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-06-29",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-31",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2022-05-31",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-31",
      "action": "maintain",
      "company": "Atlantic Equities",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2022-05-30",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-27",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2022-05-26",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-05-23",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-05-18",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-17",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-05-16",
      "action": "upgrade",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Underweight"
    },
    {
      "date": "2022-05-02",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-04-19",
      "action": "maintain",
      "company": "CMB International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-04-19",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-04-11",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-04-08",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-04-07",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-04-06",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-04-06",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-04-06",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-03-21",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-14",
      "action": "downgrade",
      "company": "JP Morgan",
      "toGrade": "Underweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-03-01",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-02-28",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-02-28",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2022-02-27",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-02-25",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-02-25",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-02-25",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-02-25",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-02-25",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-02-24",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-01-31",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-26",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-24",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-20",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-01-19",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2022-01-14",
      "action": "maintain",
      "company": "Needham",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-12",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-01-10",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-10",
      "action": "maintain",
      "company": "CMB International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-09",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2022-01-09",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2022-01-06",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-12-21",
      "action": "downgrade",
      "company": "Atlantic Equities",
      "toGrade": "Neutral",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-12-16",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-24",
      "action": "downgrade",
      "company": "Argus Research",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-23",
      "action": "maintain",
      "company": "Needham",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-20",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-11-19",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-11-18",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-11-11",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-11-03",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-10-25",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-10-05",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-10-04",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-10-01",
      "action": "downgrade",
      "company": "Raymond James",
      "toGrade": "Outperform",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2021-10-01",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-09-30",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-09-30",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-29",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-09-29",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-28",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-20",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-09-14",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-09-13",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-09-13",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-05",
      "action": "maintain",
      "company": "DZ Bank",
      "toGrade": "Sell",
      "fromGrade": "Sell"
    },
    {
      "date": "2021-08-05",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-08-04",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-08-03",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-07-29",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-07-27",
      "action": "downgrade",
      "company": "DZ Bank",
      "toGrade": "Sell",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-07-07",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-07-07",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-07-06",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-07-06",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-07-05",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-07-02",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-06-02",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-18",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2021-05-17",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-14",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-12",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-05-12",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-19",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-13",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-04-13",
      "action": "maintain",
      "company": "CMB International",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-12",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2021-04-12",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-12",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Market Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2021-04-12",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-04-12",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-04-12",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-09",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-09",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-04-09",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-04-09",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-04-08",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-03-26",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-03-19",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-03-16",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-02-03",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-02-03",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2021-02-03",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-02-03",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-02-03",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2021-01-25",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Perform",
      "fromGrade": "Market Perform"
    },
    {
      "date": "2021-01-22",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-01-15",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-01-14",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2021-01-13",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2021-01-08",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-12-28",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-11-06",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-11-06",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2020-11-06",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-11-05",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-11-04",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2020-11-04",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2020-11-03",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-11-02",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-11-02",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-10-26",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-10-08",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2020-10-01",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-10-01",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-10-01",
      "action": "maintain",
      "company": "Needham",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-10-01",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-10-01",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-09-30",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-30",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-30",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-09-29",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-09-28",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-09-28",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-26",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-26",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-24",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2020-08-21",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2020-08-21",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-08-21",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-08-21",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-21",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-20",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-20",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-08-17",
      "action": "maintain",
      "company": "Truist Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-07-16",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-07-14",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-07-14",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-07-09",
      "action": "maintain",
      "company": "CLSA",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-07-09",
      "action": "maintain",
      "company": "Needham",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-06-09",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-05-26",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-05-26",
      "action": "maintain",
      "company": "Nomura Instinet",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-05-26",
      "action": "maintain",
      "company": "CFRA",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2020-05-26",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-05-26",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Positive",
      "fromGrade": "Positive"
    },
    {
      "date": "2020-05-22",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-04-17",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2020-04-13",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-04-13",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-04-13",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-03-26",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-03-26",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-02-18",
      "action": "maintain",
      "company": "SunTrust Robinson Humphrey",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-02-14",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2020-02-14",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2020-02-14",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-01-22",
      "action": "maintain",
      "company": "DZ Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2020-01-21",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2020-01-21",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-11-27",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-11-22",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2019-11-04",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-11-04",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-11-04",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-11-04",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-10-23",
      "action": "maintain",
      "company": "Vertical Group",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-10-16",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-10-16",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-09-06",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-08-16",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-08-16",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-08-05",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-06-04",
      "action": "maintain",
      "company": "Loop Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-05-20",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-05-16",
      "action": "maintain",
      "company": "Mizuho",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2019-05-16",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2019-05-07",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-05-07",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-04-15",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2019-03-29",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-11-13",
      "action": "maintain",
      "company": "MKM Partners",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-11-05",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-11-05",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-11-05",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-11-02",
      "action": "maintain",
      "company": "SunTrust Robinson Humphrey",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-10-12",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-10-12",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-10-12",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-10-10",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-10-10",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-10-10",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2018-08-27",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "Argus Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-08-24",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-08-16",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Strong Buy"
    },
    {
      "date": "2018-06-25",
      "action": "maintain",
      "company": "Argus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-06-14",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2018-05-07",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-05-07",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-05-07",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2018-05-07",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-04-10",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-04-10",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-01-26",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2018-01-26",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-12-06",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Outperform",
      "fromGrade": "Positive"
    },
    {
      "date": "2017-11-06",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2017-11-03",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2017-10-31",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-08-22",
      "action": "upgrade",
      "company": "Atlantic Equities",
      "toGrade": "Overweight",
      "fromGrade": "Neutral"
    },
    {
      "date": "2017-08-21",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "KeyBanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-08-18",
      "action": "maintain",
      "company": "Keybanc",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-08-16",
      "action": "maintain",
      "company": "SunTrust Robinson Humphrey",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-08-02",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-04-20",
      "action": "downgrade",
      "company": "Standpoint Research",
      "toGrade": "Reduce",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-04-18",
      "action": "maintain",
      "company": "Benchmark",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2017-03-28",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2017-01-11",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2017-01-09",
      "action": "upgrade",
      "company": "Standpoint Research",
      "toGrade": "Accumulate",
      "fromGrade": "Hold"
    },
    {
      "date": "2016-11-03",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-11-03",
      "action": "maintain",
      "company": "Brean Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-10-27",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-29",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-09-28",
      "action": "maintain",
      "company": "Daiwa Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-12",
      "action": "upgrade",
      "company": "Macquarie",
      "toGrade": "Outperform",
      "fromGrade": "Neutral"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "SunTrust Robinson Humphrey",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-08-12",
      "action": "upgrade",
      "company": "Raymond James",
      "toGrade": "Strong Buy",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-08-12",
      "action": "maintain",
      "company": "Brean Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-08",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2016-08-08",
      "action": "maintain",
      "company": "Cantor Fitzgerald",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-07",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-08-01",
      "action": "downgrade",
      "company": "Standpoint Research",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-06-28",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2016-06-21",
      "action": "maintain",
      "company": "Goldman Sachs",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-05-06",
      "action": "maintain",
      "company": "Credit Suisse",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2016-04-25",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-04-15",
      "action": "maintain",
      "company": "Needham",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-03-24",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-01-29",
      "action": "maintain",
      "company": "Brean Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2016-01-25",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2016-01-21",
      "action": "upgrade",
      "company": "Standpoint Research",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2016-01-06",
      "action": "maintain",
      "company": "Baird",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-10-30",
      "action": "maintain",
      "company": "MKM Partners",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-10-29",
      "action": "downgrade",
      "company": "Standpoint Research",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-10-28",
      "action": "maintain",
      "company": "Brean Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-10-28",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-10-28",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-10-28",
      "action": "maintain",
      "company": "Wedbush",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2015-09-17",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-09-16",
      "action": "maintain",
      "company": "MKM Partners",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-09-14",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-08-29",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-08-24",
      "action": "maintain",
      "company": "Standpoint Research",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-08-13",
      "action": "maintain",
      "company": "SunTrust Robinson Humphrey",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-08-13",
      "action": "downgrade",
      "company": "Atlantic Equities",
      "toGrade": "Neutral",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-08-13",
      "action": "maintain",
      "company": "Pacific Crest",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-08-13",
      "action": "maintain",
      "company": "Axiom Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-08-12",
      "action": "downgrade",
      "company": "Wedbush",
      "toGrade": "Neutral",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-06-16",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-06-10",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-06-09",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2015-06-09",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-05-21",
      "action": "maintain",
      "company": "Bernstein",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-05-08",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-05-08",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-05-07",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-05-07",
      "action": "maintain",
      "company": "Pacific Crest",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-05-06",
      "action": "maintain",
      "company": "TH Capital",
      "toGrade": "Hold",
      "fromGrade": "Hold"
    },
    {
      "date": "2015-04-20",
      "action": "maintain",
      "company": "Summit Research Partners",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-04-15",
      "action": "maintain",
      "company": "Pacific Crest",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-04-01",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-03-20",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2015-03-17",
      "action": "upgrade",
      "company": "Stifel Nicolaus",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2015-03-17",
      "action": "upgrade",
      "company": "Stifel",
      "toGrade": "Buy",
      "fromGrade": "Hold"
    },
    {
      "date": "2015-03-09",
      "action": "maintain",
      "company": "Axiom Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-02-02",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2015-01-30",
      "action": "maintain",
      "company": "CRT Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-01-29",
      "action": "downgrade",
      "company": "Stifel Nicolaus",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-01-29",
      "action": "downgrade",
      "company": "Stifel",
      "toGrade": "Hold",
      "fromGrade": "Buy"
    },
    {
      "date": "2015-01-23",
      "action": "maintain",
      "company": "Tigress Financial",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-14",
      "action": "maintain",
      "company": "Cantor Fitzgerald",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-12",
      "action": "maintain",
      "company": "HSBC",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2014-11-10",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2014-11-10",
      "action": "maintain",
      "company": "B of A Securities",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-10",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-11-10",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-05",
      "action": "maintain",
      "company": "Brean Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-05",
      "action": "maintain",
      "company": "Cantor Fitzgerald",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-11-04",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2014-11-04",
      "action": "maintain",
      "company": "Oppenheimer",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-11-03",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "Wells Fargo",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "RBC Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "Raymond James",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "SunTrust Robinson Humphrey",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "Morgan Stanley",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "Nomura",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "Evercore Partners",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-29",
      "action": "maintain",
      "company": "Deutsche Bank",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-28",
      "action": "maintain",
      "company": "Citigroup",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-28",
      "action": "maintain",
      "company": "Pacific Crest",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-10-28",
      "action": "maintain",
      "company": "JP Morgan",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2014-10-27",
      "action": "maintain",
      "company": "Jefferies",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-24",
      "action": "maintain",
      "company": "BMO Capital",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-10-23",
      "action": "maintain",
      "company": "Barclays",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    },
    {
      "date": "2014-10-17",
      "action": "maintain",
      "company": "Brean Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-14",
      "action": "maintain",
      "company": "Bank of America",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-14",
      "action": "maintain",
      "company": "UBS",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-10-09",
      "action": "maintain",
      "company": "Macquarie",
      "toGrade": "Neutral",
      "fromGrade": "Neutral"
    },
    {
      "date": "2014-09-29",
      "action": "maintain",
      "company": "Susquehanna",
      "toGrade": "Outperform",
      "fromGrade": "Positive"
    },
    {
      "date": "2014-09-22",
      "action": "maintain",
      "company": "MKM Partners",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-09-19",
      "action": "maintain",
      "company": "Cantor Fitzgerald",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-09-18",
      "action": "maintain",
      "company": "CRT Capital",
      "toGrade": "Buy",
      "fromGrade": "Buy"
    },
    {
      "date": "2014-09-12",
      "action": "maintain",
      "company": "Wedbush",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-09-11",
      "action": "maintain",
      "company": "Wedbush",
      "toGrade": "Outperform",
      "fromGrade": "Outperform"
    },
    {
      "date": "2014-09-08",
      "action": "maintain",
      "company": "Atlantic Equities",
      "toGrade": "Overweight",
      "fromGrade": "Overweight"
    }
  ],
  "rating": {
    "rating": "A-",
    "deScore": 4,
    "pbScore": 3,
    "peScore": 3,
    "dcfScore": 4,
    "roaScore": 4,
    "roeScore": 3,
    "overallScore": 4
  },
  "analyst": {
    "buy": 51,
    "hold": 7,
    "sell": 1,
    "consensus": "Buy",
    "strongBuy": 0,
    "targetLow": 140,
    "strongSell": 0,
    "targetHigh": 225,
    "targetMedian": 186,
    "targetConsensus": 187.14
  },
  "profile": {
    "ceo": "Yongming Wu",
    "beta": 0.46,
    "image": "https://images.financialmodelingprep.com/symbol/BABA.png",
    "sector": "Consumer Cyclical",
    "country": "CN",
    "ipoDate": "2014-09-19",
    "website": "https://www.alibabagroup.com",
    "industry": "Specialty Retail",
    "employees": "124320",
    "companyName": "Alibaba Group Holding Limited",
    "description": "Alibaba Group Holding Limited, through its various subsidiaries, furnishes crucial technological infrastructure and extensive marketing channels. This comprehensive support allows merchants, brands, retailers, and other businesses to effectively engage with their customer base, both within the People's Republic of China and across international markets. The company's operations are organized across seven primary segments: China Commerce, International Commerce, Local Consumer Services, Cainiao (its logistics network), Cloud Computing, Digital Media and Entertainment, and Innovation Initiatives and Others. The company's extensive digital ecosystem features premier online retail platforms like Taobao and Tmall. Wholesale business-to-business transactions are facilitated through 1688.com and Alibaba.com. Globally, it operates retail platforms such as AliExpress, Lazada, Trendyol, and Daraz. For fresh goods and groceries, it offers Freshippo, and Tmall Global specializes in import e-commerce. Monetization and advertising solutions are provided via Alimama, its proprietary platform, which offers diverse marketing services including pay-for-performance, in-feed, and display ads, supported by the Taobao Ad Network and Exchange for real-time bidding. Logistics operations are primarily handled by the Cainiao Network. Its local consumer services encompass Ele.me for on-demand food and delivery, Koubei for restaurant and local service directories, and Fliggy for travel booking. Alibaba Cloud offers a wide array of services, including elastic computing, data storage, networking, security, database management, big data analytics, and Internet of Things (IoT) solutions. It also supplies hardware, software licenses, installation, and application development and maintenance. The digital media and entertainment division includes Youku, an online video platform; Quark, an information search and content consumption tool; and Alibaba Pictures, collectively offering diverse content spanning films, live events, news feeds, literature, and music. Its innovation portfolio further extends to Amap, a mobile application for digital mapping and navigation; DingTalk, a business communication and efficiency platform; the Tmall Genie smart speaker; and Qwen, an advanced artificial intelligence chatbot. Founded in 1999, Alibaba Group is headquartered in Hangzhou, People's Republic of China."
  },
  "earnings": {
    "date": "2026-08-28",
    "epsEstimated": 1.45,
    "revenueEstimated": 39625890000
  },
  "dividends": [
    {
      "date": "2026-06-11",
      "amount": 1.05,
      "frequency": "Irregular"
    },
    {
      "date": "2025-06-12",
      "amount": 2,
      "frequency": "Special"
    },
    {
      "date": "2024-06-13",
      "amount": 1.66,
      "frequency": "Special"
    },
    {
      "date": "2023-12-20",
      "amount": 1,
      "frequency": "Irregular"
    }
  ],
  "estimates": {
    "date": "2027-03-31",
    "epsAvg": 42.64436,
    "epsLow": 31.1903,
    "epsHigh": 54.2159,
    "ebitdaAvg": 194790839330,
    "revenueAvg": 1124444518758,
    "numAnalysts": 19,
    "netIncomeAvg": 102674266104.5
  },
  "statements": {
    "income": {
      "eps": 45.6,
      "ebitda": 186298000000,
      "revenue": 1023670000000,
      "incomeTax": 30045000000,
      "netIncome": 103592000000,
      "epsDiluted": 44,
      "grossProfit": 407534000000,
      "interestExpense": 9793000000,
      "operatingIncome": 59665000000,
      "researchAndDevelopment": 66533000000
    },
    "period": "FY",
    "balance": {
      "cash": 172919777000,
      "netDebt": 86105218000,
      "inventory": 0,
      "totalDebt": 259024995000,
      "totalAssets": 1902438344000,
      "totalEquity": 1056923917000,
      "currentAssets": 608487966000,
      "retainedEarnings": 705736411000,
      "totalLiabilities": 780374616000,
      "currentLiabilities": 474618800000
    },
    "cashflow": {
      "capex": 126937000000,
      "buybacks": 7638000000,
      "freeCashFlow": -50724000000,
      "dividendsPaid": 33732000000,
      "stockBasedComp": 11180000000,
      "netChangeInCash": -15700000000,
      "operatingCashFlow": 76213000000
    },
    "fiscalYear": "2026"
  },
  "technicals": {
    "ema50": 118.10053198819364,
    "rsi14": 23.773359063140248,
    "sma20": 107.42999999999999
  },
  "fundamentals": {
    "health": {
      "cashRatio": 0.36433402313794333,
      "quickRatio": 1.2820561794415901,
      "currentRatio": 1.2820561794415901,
      "debtToEquity": 0.24507439995598615,
      "netDebtToEbitda": 0.597114100333428,
      "interestCoverage": 5.924264731873527
    },
    "dividend": {
      "yield": 0.01093741,
      "payoutRatio": 0
    },
    "perShare": {
      "eps": 5.252592121152382,
      "fcfPerShare": -2.618544593083323,
      "cashPerShare": 18.13866920270852,
      "revenuePerShare": 51.9047897198631,
      "dividendPerShare": 0.88965,
      "bookValuePerShare": 56.91618172776167
    },
    "valuation": {
      "pb": 1.5171985607028107,
      "pe": 14.320429577464788,
      "ps": 1.5261021054089696,
      "peg": -0.8099259351189093,
      "pFcf": -30.250395231582136,
      "evSales": 1.6102494214385494,
      "evEbitda": 11.426420710278041,
      "fcfYield": -0.03305741932773084,
      "earningsYield": 0.06457572581907242,
      "priceToFairValue": 1.5171985607028107
    },
    "efficiency": {
      "grahamNumber": 79.59926870585076,
      "assetTurnover": 0.5378715971077916,
      "effectiveTaxRate": 0.22731743485760977,
      "inventoryTurnover": 0,
      "cashConversionCycle": -212.48851447570016,
      "receivablesTurnover": 0,
      "daysSalesOutstanding": 0,
      "daysInventoryOutstanding": 0
    },
    "profitability": {
      "roa": 0.05443081704806271,
      "roe": 0.10000177637528763,
      "roce": 0.04177106507128021,
      "roic": 0.0316524303872189,
      "netMargin": 0.10119667470962322,
      "grossMargin": 0.39811071927476627,
      "operatingMargin": 0.058285384938505574
    }
  },
  "peerFundamentals": {
    "HD": {
      "health": {
        "cashRatio": 0.04499718943226532,
        "quickRatio": 0.2780213603147836,
        "currentRatio": 1.0447442383361438,
        "debtToEquity": 4.178679544471674,
        "netDebtToEbitda": 2.3290229291468707,
        "interestCoverage": 8.612126245847175
      },
      "dividend": {
        "yield": 0.02587315,
        "payoutRatio": 0.6555809306308878
      },
      "perShare": {
        "eps": 14.096579476861168,
        "fcfPerShare": 14.401408450704226,
        "cashPerShare": 1.6106639839034205,
        "revenuePerShare": 167.59758551307846,
        "dividendPerShare": 9.26,
        "bookValuePerShare": 13.95774647887324
      },
      "valuation": {
        "pb": 25.64167507568113,
        "pe": 25.347025495750707,
        "ps": 2.1421680542162886,
        "peg": -5.759624101111362,
        "pFcf": 24.92965843436954,
        "evSales": 2.4805636554456396,
        "evEbitda": 17.072590807188597,
        "fcfYield": 0.04011286406641413,
        "earningsYield": 0.03938692226002003,
        "priceToFairValue": 25.64167507568113
      },
      "efficiency": {
        "grahamNumber": 66.5358614398251,
        "assetTurnover": 1.5438908659549229,
        "effectiveTaxRate": 0.24000650865108206,
        "inventoryTurnover": 4.083760997067449,
        "cashConversionCycle": 56.80070603285046,
        "receivablesTurnover": 25.14975845410628,
        "daysSalesOutstanding": 14.513061851709566,
        "daysInventoryOutstanding": 89.37839414747992
      },
      "profitability": {
        "roa": 0.1298561684460261,
        "roe": 1.1330152826069377,
        "roce": 0.2867374592113268,
        "roic": 0.20386161120143137,
        "netMargin": 0.08410968113714944,
        "grossMargin": 0.3312704091432962,
        "operatingMargin": 0.12448376872839031
      }
    },
    "JD": {
      "health": {
        "cashRatio": 0.37332983781029605,
        "quickRatio": 0.8458548919943935,
        "currentRatio": 1.1800328133052866,
        "debtToEquity": 0.49896991048719597,
        "netDebtToEbitda": -0.3154163141553694,
        "interestCoverage": -0.9715198845511271
      },
      "dividend": {
        "yield": 0.03763311,
        "payoutRatio": 0.7500959210724775
      },
      "perShare": {
        "eps": 5.049962408759124,
        "fcfPerShare": 1.7543795620437956,
        "cashPerShare": 78.44964781021898,
        "revenuePerShare": 480.13250510948905,
        "dividendPerShare": 3.38963,
        "bookValuePerShare": 102.11370766423357
      },
      "valuation": {
        "pb": 1.143819359336969,
        "pe": 18.3070081300813,
        "ps": 0.18702278140630588,
        "peg": -0.2692619281907651,
        "pFcf": 51.18374523500769,
        "evSales": 0.1814552543143473,
        "evEbitda": 10.279958508441279,
        "fcfYield": 0.019537452669955047,
        "earningsYield": 0.05606678690686587,
        "priceToFairValue": 1.143819359336969
      },
      "efficiency": {
        "grahamNumber": 94.59057138999574,
        "assetTurnover": 1.9249427028873485,
        "effectiveTaxRate": 0.07192499111035537,
        "inventoryTurnover": 10.926564081266998,
        "cashConversionCycle": -19.84366543267722,
        "receivablesTurnover": 49.9309867286725,
        "daysSalesOutstanding": 7.310089864304673,
        "daysInventoryOutstanding": 33.40482857056344
      },
      "profitability": {
        "roa": 0.020246261573936865,
        "roe": 0.06149789432200197,
        "roce": -0.007402118521149614,
        "roic": -0.006502226280360971,
        "netMargin": 0.010517851541018941,
        "grossMargin": 0.14514608400407325,
        "operatingMargin": -0.0021124186867563194
      }
    },
    "CART": {
      "health": {
        "cashRatio": 0.8372881355932204,
        "quickRatio": 2.3627118644067795,
        "currentRatio": 2.3627118644067795,
        "debtToEquity": 0.013112225221750868,
        "netDebtToEbitda": -0.998587570621469,
        "interestCoverage": 0
      },
      "dividend": {
        "yield": 0,
        "payoutRatio": 0
      },
      "perShare": {
        "eps": 2.0269733735105926,
        "fcfPerShare": 3.686166011208954,
        "cashPerShare": 3.3434612346566475,
        "revenuePerShare": 16.14891776339161,
        "dividendPerShare": 0,
        "bookValuePerShare": 10.84117305337418
      },
      "valuation": {
        "pb": 4.224418796760509,
        "pe": 24.481283422459896,
        "ps": 2.7845923615424435,
        "peg": 1.6626871657754008,
        "pFcf": 12.19916653628118,
        "evSales": 2.6016213470496896,
        "evEbitda": 14.198679216101695,
        "fcfYield": 0.08197281322670116,
        "earningsYield": 0.04427639522740482,
        "priceToFairValue": 4.224418796760509
      },
      "efficiency": {
        "grahamNumber": 22.231547381968674,
        "assetTurnover": 1.0930693069306932,
        "effectiveTaxRate": 0.21774193548387097,
        "inventoryTurnover": 0,
        "cashConversionCycle": 86.67000876697674,
        "receivablesTurnover": 3.5287671232876714,
        "daysSalesOutstanding": 103.4355590062112,
        "daysInventoryOutstanding": 0
      },
      "profitability": {
        "roa": 0.1371994342291372,
        "roe": 0.1634510068245008,
        "roce": 0.2158490566037736,
        "roic": 0.1687223276407337,
        "netMargin": 0.1255175983436853,
        "grossMargin": 0.7295548654244306,
        "operatingMargin": 0.14803312629399587
      }
    },
    "EBAY": {
      "health": {
        "cashRatio": 0.563693026879626,
        "quickRatio": 1.2191273860537593,
        "currentRatio": 1.2191273860537593,
        "debtToEquity": 1.6323662737987308,
        "netDebtToEbitda": 1.512109512109512,
        "interestCoverage": 9.235772357723578
      },
      "dividend": {
        "yield": 0.01044932,
        "payoutRatio": 0.2627450980392157
      },
      "perShare": {
        "eps": 4.553571428571429,
        "fcfPerShare": 3.767857142857143,
        "cashPerShare": 8.616071428571429,
        "revenuePerShare": 25.901785714285715,
        "dividendPerShare": 1.2,
        "bookValuePerShare": 9.848214285714286
      },
      "valuation": {
        "pb": 11.660997280145057,
        "pe": 25.520000000000007,
        "ps": 4.394084798345398,
        "peg": 4.3384,
        "pFcf": 30.20672985781991,
        "evSales": 4.765336091003102,
        "evEbitda": 19.40925236925237,
        "fcfYield": 0.03310520551899862,
        "earningsYield": 0.03965144051350948,
        "priceToFairValue": 11.660997280145057
      },
      "efficiency": {
        "grahamNumber": 31.764796738878168,
        "assetTurnover": 0.6485217682892751,
        "effectiveTaxRate": 0.12570929725010913,
        "inventoryTurnover": 0,
        "cashConversionCycle": 22.770121416430207,
        "receivablesTurnover": 6.323705722070844,
        "daysSalesOutstanding": 57.71932092381937,
        "daysInventoryOutstanding": 0
      },
      "profitability": {
        "roa": 0.11401106577991393,
        "roe": 0.44120032441200324,
        "roce": 0.1780703816913551,
        "roic": 0.14568305659316114,
        "netMargin": 0.17580144777662876,
        "grossMargin": 0.7200965184419166,
        "operatingMargin": 0.19579455360220613
      }
    }
  }
}