
| Line item | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | FY2015 | FY2014 | FY2013 | FY2012 | FY2011 | FY2010 | FY2009 | FY2008 | FY2007 | FY2006 | FY2005 | FY2004 | FY2003 | FY2002 | FY2001 | FY2000 | FY1999 | FY1998 | FY1997 | FY1996 | FY1995 | FY1994 | FY1993 | FY1992 | FY1991 | FY1990 | FY1989 | FY1988 | FY1987 | FY1986 | FY1985 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Valuation | |||||||||||||||||||||||||||||||||||||||||
| Market cap | $37,329 | $27,405 | $42,786 | $33,815 | $32,624 | $15,202 | $16,085 | $14,807 | $18,171 | $17,011 | $11,518 | $15,688 | $17,032 | $13,732 | $12,544 | $13,845 | $14,689 | $14,069 | $17,504 | $16,758 | $10,488 | $8,314 | $4,395 | $3,220 | $4,115 | $3,247 | $4,787 | $3,801 | $4,248 | $4,473 | $4,993 | $4,825 | $4,610 | $3,375 | $1,929 | $1,324 | $1,282 | $1,006 | $835 | $645 | $760 |
| Enterprise value | $42,939 | $31,339 | $43,681 | $36,804 | $36,278 | $17,938 | $19,066 | $18,109 | $21,313 | $19,547 | $14,239 | $19,451 | $20,195 | $16,479 | $14,494 | $15,871 | $15,729 | $15,317 | $18,488 | $15,723 | $9,768 | $8,632 | $5,125 | $4,112 | $4,397 | $3,529 | $4,886 | $3,990 | $4,409 | $4,788 | $5,119 | $5,072 | $5,078 | $3,737 | $2,089 | $1,409 | $1,488 | $1,095 | $800 | $561 | $617 |
| P/E (TTM) at period end | 21.49× | 13.58× | 9.49× | 4.46× | 4.80× | 21.20× | 12.72× | 6.30× | 13.83× | 21.43× | 145.41× | 23.17× | 35.04× | 27.31× | 16.17× | 104.68× | – | 7.71× | 11.89× | 9.53× | 8.00× | 7.41× | 70.00× | 19.87× | 36.43× | 10.44× | 19.57× | 14.41× | 14.42× | 18.02× | 18.19× | 21.29× | 37.32× | 42.61× | 29.81× | 17.64× | 22.18× | 14.19× | 16.53× | 13.89× | 12.99× |
| P/S (TTM) at period end | 1.15× | 0.89× | 1.23× | 0.81× | 0.89× | 0.75× | 0.71× | 0.59× | 0.90× | 1.05× | 0.70× | 0.74× | 0.89× | 0.71× | 0.63× | 0.87× | 1.31× | 0.59× | 1.05× | 1.14× | 0.83× | 0.73× | 0.70× | 0.67× | 0.95× | 0.68× | 1.19× | 0.92× | 1.02× | 1.23× | 1.44× | 1.62× | 2.05× | 2.08× | 1.32× | 0.89× | 1.01× | 0.95× | 0.98× | 0.85× | 1.00× |
| P/B at period end | 1.78× | 1.35× | 2.04× | 1.84× | 2.33× | 1.41× | 1.55× | 1.51× | 2.08× | 2.16× | 1.54× | 2.02× | 2.23× | 1.80× | 1.68× | 1.94× | 1.99× | 1.77× | 3.42× | 3.47× | 2.45× | 2.41× | 1.88× | 1.39× | 1.87× | 1.52× | 2.12× | 1.83× | 2.26× | 2.78× | 3.61× | 4.30× | 5.11× | 4.30× | 2.71× | 2.03× | 2.19× | 1.89× | 1.95× | 1.68× | 2.12× |
| EV / EBITDA (TTM) | 11.05× | 7.69× | 6.10× | 3.25× | 3.61× | 7.75× | 7.29× | 4.45× | 8.47× | 9.57× | 11.12× | 9.82× | 13.66× | 10.35× | 7.38× | 16.46× | 52.44× | 4.05× | 6.26× | 4.86× | 3.89× | 3.89× | 10.95× | 6.84× | 7.88× | 3.91× | 7.75× | 6.00× | 6.49× | 8.41× | 8.46× | 9.60× | 15.74× | 16.77× | 11.04× | 6.94× | 8.59× | – | – | – | – |
| EV / Sales (TTM) | 1.32× | 1.02× | 1.26× | 0.89× | 0.99× | 0.89× | 0.84× | 0.72× | 1.05× | 1.21× | 0.87× | 0.92× | 1.06× | 0.85× | 0.72× | 1.00× | 1.41× | 0.65× | 1.11× | 1.07× | 0.77× | 0.76× | 0.82× | 0.86× | 1.01× | 0.74× | 1.22× | 0.96× | 1.05× | 1.31× | 1.48× | 1.70× | 2.25× | 2.31× | 1.43× | 0.95× | 1.17× | 1.03× | 0.94× | 0.74× | 0.81× |
| Returns | |||||||||||||||||||||||||||||||||||||||||
| Return on equity | 8.3% | 9.9% | 21.5% | 41.1% | 48.5% | 6.6% | 12.2% | 24.0% | 15.0% | 10.1% | 1.1% | 8.7% | 6.4% | 6.6% | 10.4% | 1.9% | (4.0%) | 23.0% | 28.8% | 36.4% | 30.6% | 32.5% | 2.7% | 7.0% | 5.1% | 14.6% | 10.8% | 12.7% | 15.7% | 15.4% | 19.9% | 20.2% | 13.7% | 10.1% | 9.1% | 11.5% | 9.9% | 13.3% | 11.8% | 12.1% | 16.4% |
| Return on invested capital | 7.8% | 9.6% | 21.6% | 37.7% | 40.2% | 11.6% | 11.1% | 20.2% | 12.4% | 9.4% | 5.1% | 7.5% | 6.2% | 7.0% | 9.2% | 3.4% | (1.3%) | 24.8% | 26.6% | 35.8% | 31.5% | 31.5% | 3.2% | 6.4% | 7.1% | 17.6% | 10.2% | 11.5% | 14.5% | 12.9% | 18.2% | 17.2% | 9.6% | 7.4% | 7.4% | 10.8% | 8.3% | 11.7% | 12.7% | 14.5% | 25.3% |
| Dividend yield | 1.4% | 1.9% | 1.2% | 1.6% | 1.5% | 3.2% | 3.1% | 3.3% | 2.7% | 2.8% | 4.2% | 3.0% | 2.8% | 3.4% | 3.7% | 3.3% | 3.0% | 4.7% | 4.1% | 3.4% | 2.0% | 0.8% | 1.4% | 1.8% | 1.3% | 1.5% | 0.9% | 1.1% | 0.8% | 0.6% | 0.5% | 0.3% | 0.3% | 0.4% | 0.6% | 0.8% | 0.7% | – | – | – | – |
| Financial health | |||||||||||||||||||||||||||||||||||||||||
| Current ratio | 2.94× | 2.51× | 3.57× | 3.39× | 2.48× | 3.61× | 3.34× | 3.08× | 2.42× | 2.72× | 4.23× | 3.07× | 3.27× | 2.79× | 2.80× | 3.90× | 4.22× | 3.45× | 3.21× | 3.29× | 3.24× | 2.98× | 2.57× | 2.41× | 2.84× | 2.48× | 2.90× | 2.32× | 2.15× | 1.78× | 1.86× | 1.67× | 1.34× | 1.34× | 1.46× | 1.40× | 1.45× | 1.15× | 1.59× | 2.50× | 2.76× |
| Debt / equity | 0.34× | 0.29× | 0.32× | 0.36× | 0.36× | 0.49× | 0.42× | 0.44× | 0.43× | 0.55× | 0.59× | 0.56× | 0.57× | 0.48× | 0.57× | 0.60× | 0.42× | 0.41× | 0.44× | 0.19× | 0.22× | 0.27× | 0.39× | 0.39× | 0.21× | 0.22× | 0.17× | 0.10× | 0.09× | 0.10× | 0.08× | 0.15× | 0.39× | 0.31× | 0.11× | 0.05× | 0.27× | 0.22× | 0.09× | 0.12× | 0.12× |
| Effective tax rate | 20.6% | 20.1% | 21.7% | 21.1% | 22.6% | (0.1%) | 23.1% | 23.2% | 21.1% | 30.7% | 20.2% | 32.1% | 26.0% | 30.5% | 31.2% | 22.8% | 42.7% | 30.9% | 34.7% | 34.8% | 34.8% | 35.2% | 6.1% | 29.5% | 34.0% | 33.9% | 35.5% | 36.5% | 36.0% | 36.0% | 36.5% | 36.5% | 34.0% | 32.5% | 32.5% | 32.5% | 32.5% | 34.1% | 39.3% | 44.9% | 44.9% |
| Share count | |||||||||||||||||||||||||||||||||||||||||
| Diluted shares outstanding | 231 | 238 | 250 | 263 | 293 | 303 | 306 | 317 | 321 | 320 | 321 | 320 | 319 | 318 | 317 | 317 | 315 | 305 | 298 | 309 | 317 | 320 | 314 | 313 | 311 | 327 | 349 | 352 | 352 | 351 | 350 | 349 | 348 | 344 | 345 | 341 | 340 | 338 | 337 | 337 | 339 |
| Line item | TTM | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | FY2015 | FY2014 | FY2013 | FY2012 | FY2011 | FY2010 | FY2009 | FY2008 | FY2007 | FY2006 | FY2005 | FY2004 | FY2003 | FY2002 | FY2001 | FY2000 | FY1999 | FY1998 | FY1997 | FY1996 | FY1995 | FY1994 | FY1993 | FY1992 | FY1991 | FY1990 | FY1989 | FY1988 | FY1987 | FY1986 | FY1985 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and gross profit | ||||||||||||||||||||||||||||||||||||||||||
| Revenue | $36,101 | $32,494 | $30,734 | $34,714 | $41,512 | $36,484 | $20,140 | $22,589 | $25,067 | $20,252 | $16,208 | $16,439 | $21,105 | $19,052 | $19,429 | $20,024 | $15,845 | $11,190 | $23,663 | $16,593 | $14,751 | $12,701 | $11,377 | $6,266 | $4,802 | $4,334 | $4,757 | $4,009 | $4,151 | $4,184 | $3,647 | $3,462 | $2,976 | $2,254 | $1,619 | $1,466 | $1,482 | $1,269 | $1,061 | $851 | $755 | $758 |
| Cost of revenue | ($30,516) | ($28,616) | ($26,632) | ($26,899) | ($29,009) | ($25,459) | ($17,912) | ($19,910) | ($20,772) | ($17,683) | ($14,182) | ($15,325) | ($19,256) | ($17,641) | ($17,916) | ($18,142) | ($15,061) | ($11,036) | ($19,612) | ($13,463) | ($11,285) | ($10,109) | ($9,129) | ($5,997) | ($4,332) | ($3,914) | ($3,929) | ($3,224) | ($3,339) | ($3,360) | ($2,957) | ($2,726) | ($2,334) | ($1,844) | ($1,320) | ($1,209) | ($1,208) | ($1,029) | ($833) | ($672) | ($576) | ($570) |
| Gross profit | $5,585 | $3,878 | $4,102 | $7,815 | $12,503 | $11,025 | $2,228 | $2,679 | $4,295 | $2,569 | $2,026 | $1,114 | $1,849 | $1,411 | $1,514 | $1,881 | $784 | $154 | $4,051 | $3,130 | $3,467 | $2,592 | $2,248 | $269 | $469 | $419 | $827 | $785 | $812 | $824 | $690 | $736 | $642 | $410 | $300 | $256 | $274 | $240 | $228 | $180 | $180 | $189 |
| Operating expenses | ||||||||||||||||||||||||||||||||||||||||||
| Research and development | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Selling, general and administrative | ($1,417) | ($1,219) | ($1,123) | ($1,585) | ($1,997) | ($1,707) | ($615) | ($711) | ($861) | ($688) | ($597) | ($459) | ($521) | ($468) | ($455) | ($440) | ($331) | ($351) | ($714) | ($553) | ($592) | ($459) | ($415) | ($165) | ($176) | ($151) | ($183) | ($155) | ($148) | ($145) | ($120) | ($131) | ($113) | ($88) | ($77) | ($67) | ($70) | ($67) | ($62) | ($55) | ($66) | ($59) |
| Total operating expenses | ($1,417) | ($1,219) | ($1,123) | ($1,585) | ($1,997) | ($1,707) | ($615) | ($711) | ($861) | ($688) | ($597) | ($459) | ($521) | ($468) | ($455) | ($440) | ($331) | ($348) | ($751) | ($578) | ($592) | ($459) | ($415) | ($165) | ($176) | ($151) | ($183) | ($411) | ($401) | ($364) | ($303) | ($305) | ($271) | ($210) | ($175) | ($161) | ($156) | ($144) | ($118) | ($97) | ($101) | ($90) |
| Total costs and expenses | ($31,933) | ($29,835) | ($27,755) | ($28,484) | ($31,006) | ($27,165) | ($18,527) | ($20,621) | ($21,633) | ($18,371) | ($14,779) | ($15,784) | ($19,777) | ($18,109) | ($18,371) | ($18,582) | ($15,392) | ($11,384) | ($20,363) | ($14,041) | ($11,877) | ($10,568) | ($9,544) | ($6,162) | ($4,508) | ($4,065) | ($4,112) | ($3,635) | ($3,740) | ($3,724) | ($3,260) | ($3,031) | ($2,605) | ($2,053) | ($1,494) | ($1,370) | ($1,364) | ($1,172) | ($951) | ($769) | ($676) | ($660) |
| Operating income | $4,168 | $2,659 | $2,979 | $6,230 | $10,506 | $9,319 | $1,613 | $1,968 | $3,435 | $1,882 | $1,429 | $655 | $1,328 | $943 | $1,059 | $1,442 | $452 | ($194) | $3,300 | $2,552 | $2,874 | $2,133 | $1,833 | $104 | $294 | $269 | $644 | $374 | $411 | $460 | $387 | $431 | $370 | $200 | $125 | $96 | $118 | $97 | $110 | $82 | $79 | $99 |
| Earnings | ||||||||||||||||||||||||||||||||||||||||||
| EBITDA | $5,429 | $3,885 | $4,073 | $7,161 | $11,333 | $10,054 | $2,315 | $2,617 | $4,066 | $2,518 | $2,042 | $1,281 | $1,980 | $1,479 | $1,593 | $1,964 | $964 | $300 | $3,780 | $2,955 | $3,238 | $2,508 | $2,216 | $468 | $601 | $558 | $904 | $631 | $664 | $679 | $570 | $605 | $528 | $323 | $223 | $189 | $203 | $173 | – | – | – | – |
| Interest income | $88 | $111 | $258 | $276 | $49 | $4 | $13 | $36 | $26 | $14 | $12 | $4 | $5 | $5 | $11 | $13 | ($8) | $15 | $44 | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Interest expense | ($145) | ($170) | ($228) | ($246) | ($219) | ($163) | ($167) | ($157) | ($161) | ($187) | ($181) | ($178) | ($174) | ($152) | ($174) | ($179) | ($161) | ($150) | ($135) | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Pre-tax income | $4,105 | $2,568 | $2,902 | $6,273 | $10,245 | $9,201 | $836 | $1,783 | $3,229 | $1,750 | $1,299 | $242 | $1,147 | $791 | $853 | $1,252 | $267 | ($414) | $3,104 | $2,253 | $2,692 | $2,027 | $1,731 | $67 | $230 | $179 | $494 | $379 | $415 | $460 | $388 | $432 | $357 | $187 | $117 | $96 | $111 | $86 | $108 | $83 | $84 | $106 |
| Income tax expense | ($849) | ($530) | ($583) | ($1,360) | ($2,166) | ($2,078) | $0 | ($412) | ($748) | ($369) | ($398) | ($49) | ($369) | ($206) | ($260) | ($391) | ($61) | $177 | ($959) | ($781) | ($936) | ($706) | ($610) | ($4) | ($68) | ($61) | ($167) | ($135) | ($152) | ($166) | ($140) | ($158) | ($130) | ($64) | ($38) | ($31) | ($36) | ($28) | ($37) | ($33) | ($38) | ($48) |
| Net income | $2,884 | $1,744 | $2,027 | $4,525 | $7,607 | $6,827 | $721 | $1,271 | $2,361 | $1,319 | $796 | $81 | $679 | $488 | $505 | $778 | $134 | ($294) | $1,831 | $1,472 | $1,758 | $1,310 | $1,121 | $63 | $162 | $113 | $311 | $245 | $264 | $294 | $248 | $274 | $227 | $124 | $79 | $65 | $75 | $58 | $71 | $50 | $46 | $58 |
| Per share | ||||||||||||||||||||||||||||||||||||||||||
| Diluted EPS (GAAP) | $12.54 | $7.52 | $8.46 | $18.00 | $28.79 | $23.16 | $2.36 | $4.14 | $7.42 | $4.10 | $2.48 | $0.25 | $2.11 | $1.52 | $1.58 | $2.45 | $0.42 | ($0.94) | $5.98 | $4.94 | $5.68 | $4.15 | $3.50 | $0.20 | $0.52 | $0.36 | $0.95 | $0.70 | $0.75 | $0.84 | $0.71 | $0.79 | $0.65 | $0.36 | $0.23 | $0.19 | $0.22 | $0.17 | $0.21 | $0.15 | $0.14 | $0.17 |
| Basic EPS (GAAP) | $12.55 | $7.53 | $8.47 | $18.05 | $28.88 | $23.23 | $2.37 | $4.14 | $7.44 | $4.11 | $2.48 | $0.25 | $2.12 | $1.52 | $1.58 | $2.45 | $0.42 | ($0.94) | $5.99 | $4.96 | $5.73 | $4.19 | $3.53 | $0.20 | $0.52 | $0.36 | $0.95 | $0.70 | $0.75 | $0.84 | $0.71 | $0.79 | $0.65 | $0.36 | $0.23 | $0.19 | $0.22 | $0.17 | $0.21 | $0.15 | $0.14 | $0.17 |
| Basic shares outstanding | 229 | 231 | 238 | 250 | 262 | 292 | 303 | 305 | 316 | 320 | 320 | 321 | 320 | 319 | 318 | 317 | 316 | 315 | 305 | 296 | 307 | 314 | 318 | 314 | 312 | 311 | 327 | 349 | 352 | 352 | 351 | 350 | 349 | 348 | 344 | 345 | 341 | 340 | 338 | 337 | 337 | 339 |
| Margins | ||||||||||||||||||||||||||||||||||||||||||
| Gross margin | 15.5% | 11.9% | 13.3% | 22.5% | 30.1% | 30.2% | 11.1% | 11.9% | 17.1% | 12.7% | 12.5% | 6.8% | 8.8% | 7.4% | 7.8% | 9.4% | 4.9% | 1.4% | 17.1% | 18.9% | 23.5% | 20.4% | 19.8% | 4.3% | 9.8% | 9.7% | 17.4% | 19.6% | 19.6% | 19.7% | 18.9% | 21.3% | 21.6% | 18.2% | 18.5% | 17.5% | 18.5% | 18.9% | 21.5% | 21.1% | 23.8% | 24.9% |
| Operating margin | 11.5% | 8.2% | 9.7% | 17.9% | 25.3% | 25.5% | 8.0% | 8.7% | 13.7% | 9.3% | 8.8% | 4.0% | 6.3% | 4.9% | 5.4% | 7.2% | 2.9% | (1.7%) | 13.9% | 15.4% | 19.5% | 16.8% | 16.1% | 1.7% | 6.1% | 6.2% | 13.5% | 9.3% | 9.9% | 11.0% | 10.6% | 12.5% | 12.4% | 8.9% | 7.7% | 6.5% | 8.0% | 7.6% | 10.4% | 9.7% | 10.4% | 13.0% |
| Net margin | 8.0% | 5.4% | 6.6% | 13.0% | 18.3% | 18.7% | 3.6% | 5.6% | 9.4% | 6.5% | 4.9% | 0.5% | 3.2% | 2.6% | 2.6% | 3.9% | 0.8% | (2.6%) | 7.7% | 8.9% | 11.9% | 10.3% | 9.9% | 1.0% | 3.4% | 2.6% | 6.5% | 6.1% | 6.4% | 7.0% | 6.8% | 7.9% | 7.6% | 5.5% | 4.9% | 4.4% | 5.1% | 4.6% | 6.7% | 5.9% | 6.1% | 7.7% |