XML 33 R22.htm IDEA: XBRL DOCUMENT
v3.26.1

Earnings Per Share | 6 Months Ended
--- | ---
Jun. 30, 2026
Earnings Per Share [Abstract] |
Earnings Per Share | Earnings Per Share Basic and Diluted Earnings Per Share The components of basic and diluted earnings per share are as follows (in thousands, except share and per share amounts):
| Three Months Ended June 30, |  | Six Months Ended June 30,
Numerator: | 2026 |  | 2025 |  | 2026 |  | 2025
Net income | $ | 24,208 |  |  | $ | 34,217 |  |  | $ | 47,590 |  |  | $ | 61,929 |
Net loss attributable to redeemable noncontrolling interests | 38 |  |  | 335 |  |  | 239 |  |  | 573 |
Net income attributable to common stockholders - basic (A) | 24,246 |  |  | 34,552 |  |  | 47,829 |  |  | 62,502 |
Add back total interest expense, net of tax, attributable to convertible senior notes | 2,666 |  |  | 3,249 |  |  | 5,328 |  |  | 6,494 |
Net income attributable to common stockholders - diluted (B) | $ | 26,912 |  |  | $ | 37,801 |  |  | $ | 53,157 |  |  | $ | 68,996 |
Denominator: |  |  |  |  |  |  |
Weighted average common shares outstanding — basic (C) | 49,328,402 |  |  | 49,806,105 |  |  | 49,463,300 |  |  | 49,733,328 |
Dilutive effect of convertible senior notes, stock options and restricted stock units | 6,596,104 |  |  | 10,331,099 |  |  | 6,697,366 |  |  | 10,426,521 |
Weighted average common shares outstanding — diluted (D) | 55,924,506 |  |  | 60,137,204 |  |  | 56,160,666 |  |  | 60,159,849 |
Net income attributable to common stockholders per share: |  |  |  |  |  |  |
Basic (A/C) | $ | 0.49 |  |  | $ | 0.69 |  |  | $ | 0.97 |  |  | $ | 1.26 |
Diluted (B/D) | $ | 0.48 |  |  | $ | 0.63 |  |  | $ | 0.95 |  |  | $ | 1.15 |
The following securities have been excluded from the calculation of diluted weighted average common shares outstanding as the inclusion of these securities would have an anti-dilutive effect:
| Three Months Ended June 30, |  | Six Months Ended June 30,
| 2026 |  | 2025 |  | 2026 |  | 2025
Stock options | 800,577 |  |  | 789,688 |  |  | 800,577 |  |  | 698,302 |
Restricted stock units | 8,300 |  |  | 91,570 |  |  | 11,300 |  |  | — |
Our redeemable noncontrolling interests relate to our 89% equity ownership interest in OpenEye, our 99% equity ownership interest in Noonlight and our 81% equity ownership interest in CHeKT. We use the treasury stock method when calculating the dilutive impact of the stock options and restricted stock units on net income per share. We use the if-converted method when calculating the dilutive impact of the 2026 Notes and 2029 Notes on net income per share. Prior to the repayment of the 2026 Notes, after August 15, 2025, we were required to pay cash to satisfy the principal portion of our conversion obligation and deliver shares to satisfy any excess conversion value. The following securities have been included in the calculation of diluted weighted average common shares outstanding:
| Three Months Ended June 30, |  | Six Months Ended June 30, |  |
| 2026 |  | 2025 |  | 2026 |  | 2025 |  |  |  |
2026 Notes | — |  |  | 3,396,950 |  |  | — |  |  | 3,396,950 |  |  |  |  |
2029 Notes | 5,728,550 |  |  | 5,728,550 |  |  | 5,728,550 |  |  | 5,728,550 |  |  |  |  |
The denominator for diluted net income per share does not include any effect from the capped call transactions we entered into concurrently with the issuance of the 2029 Notes, as this effect would be anti-dilutive. In the event of conversion of the 2029 Notes, shares delivered to us under the capped call will offset the dilutive effect of the shares that we would issue under the 2029 Notes. See Note 12 for further details on our 2029 Notes.

X
- References No definition available. + Details
Name: | us-gaap_EarningsPerShareAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure for earnings per share. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 12 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482635/260-10-55-12 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 505 -SubTopic 20 -Name Accounting Standards Codification -Section 05 -Paragraph 5 -Publisher FASB -URI https://asc.fasb.org/1943274/2147481468/505-20-05-5 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/260/tableOfContent Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3 + Details
Name: | us-gaap_EarningsPerShareTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration