
| 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 | $96,016 | $90,197 | $76,474 | $77,742 | $72,681 | $65,104 | $67,510 | $46,547 | $50,966 | $52,132 | $49,588 | $44,607 | $36,477 | $37,159 | $39,671 | $31,858 | $26,489 | $28,527 | $29,295 | $27,387 | $25,690 | $24,771 | $21,992 | $20,100 | $17,466 | $13,223 | $9,802 | $12,337 | $10,796 | $9,274 | $9,976 | $7,916 | $8,578 | $6,590 | $5,785 | $4,320 | $4,786 | $4,236 | $3,933 | $3,699 | $2,984 |
| Enterprise value | $171,303 | $158,870 | $142,997 | $139,084 | $130,755 | $119,342 | $118,475 | $96,316 | $100,990 | $99,468 | $78,312 | $69,650 | $59,869 | $59,672 | $60,286 | $52,870 | $46,389 | $47,203 | $45,687 | $43,082 | $40,493 | $38,261 | $33,154 | $31,192 | $27,740 | $22,608 | $19,886 | $25,739 | $23,649 | $18,816 | $19,888 | $16,843 | – | – | – | – | – | – | – | – | – |
| P/E (TTM) at period end | 22.12× | 20.49× | 19.23× | 22.06× | 30.37× | 20.87× | 14.25× | 20.91× | 60.53× | 21.30× | 20.95× | 22.72× | 22.19× | 15.81× | 18.01× | 16.13× | 16.12× | 16.38× | 16.89× | 17.41× | 16.15× | 16.17× | 14.92× | 15.25× | 13.84× | 10.07× | 7.68× | 12.63× | 11.11× | 8.23× | 9.04× | 8.00× | 8.56× | 6.91× | 6.60× | 7.16× | 5.66× | 5.01× | 7.09× | 4.19× | 3.60× |
| P/S (TTM) at period end | 3.25× | 3.38× | 3.03× | 2.66× | 3.14× | 3.20× | 2.99× | 1.84× | 2.21× | 2.62× | 2.84× | 2.42× | 2.13× | 2.25× | 2.25× | 1.83× | 1.68× | 1.67× | 1.91× | 1.91× | 1.90× | 2.11× | 1.97× | 1.91× | 1.72× | 1.31× | 1.05× | 1.30× | 0.86× | 0.90× | 1.09× | 0.95× | 1.01× | 0.82× | 0.72× | 0.54× | 0.64× | 0.59× | 0.56× | 0.54× | 0.44× |
| P/B at period end | 2.67× | 2.72× | 2.43× | 2.56× | 2.61× | 2.33× | 2.45× | 1.88× | 2.11× | 2.11× | 2.41× | 2.24× | 1.92× | 2.03× | 2.26× | 1.92× | 1.74× | 2.09× | 2.18× | 2.26× | 2.28× | 2.29× | 2.18× | 2.23× | 2.09× | 1.20× | 1.02× | 1.21× | 1.06× | 0.91× | 0.99× | 0.83× | – | – | – | – | – | – | – | – | – |
| EV / EBITDA (TTM) | 12.87× | 12.88× | 13.23× | 14.74× | 17.05× | 13.58× | 10.71× | 12.44× | 17.44× | 13.43× | 11.73× | 11.74× | 10.78× | 9.03× | 9.60× | 9.39× | 9.18× | 9.06× | 9.49× | 9.27× | 9.29× | 9.61× | 8.23× | 8.28× | 7.40× | 6.04× | 5.74× | 6.76× | 5.56× | 4.78× | 5.20× | 4.85× | – | – | – | – | – | – | – | – | – |
| EV / Sales (TTM) | 5.80× | 5.94× | 5.66× | 4.75× | 5.66× | 5.86× | 5.24× | 3.82× | 4.38× | 5.00× | 4.48× | 3.77× | 3.50× | 3.61× | 3.41× | 3.03× | 2.95× | 2.76× | 2.98× | 3.00× | 2.99× | 3.26× | 2.96× | 2.97× | 2.73× | 2.25× | 2.13× | 2.71× | 1.88× | 1.82× | 2.17× | 2.03× | – | – | – | – | – | – | – | – | – |
| Returns | |||||||||||||||||||||||||||||||||||||||||
| Return on equity | 12.1% | 13.3% | 12.6% | 11.6% | 8.6% | 11.2% | 17.2% | 9.0% | 3.5% | 9.9% | 11.5% | 9.8% | 8.6% | 12.8% | 12.5% | 11.9% | 10.8% | 12.8% | 12.9% | 13.0% | 14.1% | 14.1% | 14.6% | 14.6% | 15.1% | 11.9% | 13.3% | 9.6% | 9.6% | 11.1% | 10.9% | 10.4% | – | – | – | – | – | – | – | – | – |
| Return on invested capital | 5.5% | 5.7% | 5.3% | 4.8% | 3.9% | 5.3% | 7.1% | 4.7% | 2.7% | 4.5% | 5.8% | 5.5% | 5.1% | 7.0% | 7.2% | 6.8% | 6.2% | 7.3% | 7.6% | 7.9% | 8.3% | 8.4% | 9.3% | 9.2% | 8.6% | 7.4% | 7.2% | 5.8% | 6.2% | 13.2% | 3.6% | 3.7% | – | – | – | – | – | – | – | – | – |
| Dividend yield | 3.1% | 3.3% | 4.0% | 3.7% | 3.8% | 4.1% | 3.8% | 5.2% | 4.5% | 4.0% | 4.0% | 4.2% | 4.8% | 4.6% | 4.0% | 4.7% | 5.2% | 4.5% | 4.1% | 4.2% | 4.3% | 4.2% | 4.6% | 4.8% | 5.3% | 6.6% | 9.4% | 7.6% | 8.2% | 9.1% | 8.1% | 9.7% | – | – | – | – | – | – | – | – | – |
| Financial health | |||||||||||||||||||||||||||||||||||||||||
| Current ratio | 0.65× | 0.67× | 0.77× | 0.66× | 0.82× | 0.71× | 0.78× | 0.67× | 0.74× | 0.75× | 0.71× | 0.65× | 1.02× | 0.88× | 0.95× | 0.91× | 1.05× | 1.03× | 0.84× | 0.63× | 0.80× | 0.92× | 0.87× | 0.59× | 0.68× | 0.76× | 0.59× | 0.65× | 0.67× | 0.76× | 0.79× | 0.85× | – | – | – | – | – | – | – | – | – |
| Debt / equity | 1.84× | 1.81× | 1.89× | 1.75× | 1.85× | 1.63× | 1.59× | 1.77× | 1.94× | 1.81× | 1.27× | 1.08× | 1.20× | 1.10× | 1.11× | 1.17× | 1.23× | 1.30× | 1.23× | 1.31× | 1.33× | 1.28× | 1.14× | 1.26× | 1.27× | 0.87× | 1.00× | 1.36× | 1.29× | 0.94× | 1.03× | 0.92× | – | – | – | – | – | – | – | – | – |
| Effective tax rate | 16.6% | 18.5% | 11.4% | 18.8% | 10.4% | 11.2% | 27.5% | 16.3% | 13.3% | 27.3% | 32.9% | 32.5% | 33.2% | 35.6% | 35.0% | 33.5% | 34.4% | 33.6% | 32.5% | 33.1% | 27.2% | 27.7% | 29.3% | 28.6% | 33.3% | 37.2% | 39.6% | 40.5% | 46.3% | – | 73.0% | 71.9% | – | – | – | – | – | – | – | – | – |
| Share count | |||||||||||||||||||||||||||||||||||||||||
| Diluted shares outstanding | 1,109 | 1,102 | 1,098 | 1,081 | 1,068 | 1,065 | 1,054 | 1,025 | 1,008 | 958 | 914 | 901 | 881 | 879 | 864 | 837 | 796 | 775 | 761 | 748 | 749 | 743 | 732 | 714 | 694 | 654 | 686 | 697 | 685 | 673 | 665 | 651 | 638 | 562 | 553 | 509 | 540 | 622 | 578 | 478 | 440 |
| 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 | $30,178 | $29,553 | $26,724 | $25,253 | $29,279 | $23,113 | $20,375 | $22,596 | $25,241 | $23,031 | $19,896 | $17,489 | $18,467 | $17,087 | $16,537 | $17,657 | $17,456 | $15,743 | $17,127 | $15,353 | $14,356 | $13,554 | $11,729 | $11,186 | $10,514 | $10,155 | $10,066 | $9,317 | $9,499 | $12,611 | $10,358 | $9,180 | $8,297 | $8,489 | $8,073 | $8,050 | $7,975 | $7,492 | $7,235 | $7,010 | $6,847 | $6,814 |
| Cost of revenue | ($17,082) | ($20,744) | ($13,382) | ($13,545) | ($18,652) | ($12,866) | ($10,478) | ($11,816) | ($13,879) | ($13,116) | ($11,366) | ($9,811) | ($11,031) | ($9,817) | ($9,373) | ($10,808) | ($7,262) | ($6,426) | ($7,633) | ($6,371) | ($5,695) | ($5,226) | ($4,042) | ($5,831) | ($5,363) | ($5,194) | ($5,102) | ($4,575) | ($4,569) | ($7,244) | ($5,208) | ($4,243) | ($3,840) | – | – | – | – | – | – | – | – | – |
| Gross profit | $13,096 | $8,809 | $13,342 | $11,708 | $10,627 | $10,247 | $9,897 | $9,603 | $9,616 | $9,915 | $8,530 | $7,678 | $7,436 | $7,270 | $7,164 | $6,849 | $10,194 | $9,317 | $9,494 | $8,982 | $8,661 | $8,328 | $7,687 | $5,355 | $5,151 | $4,961 | $4,964 | $4,742 | $4,930 | $5,367 | $5,150 | $4,937 | $4,457 | – | – | – | – | – | – | – | – | – |
| Operating expenses | ||||||||||||||||||||||||||||||||||||||||||
| Research and development | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Selling, general and administrative | – | – | – | – | – | – | – | – | – | – | – | – | ($11,031) | ($9,817) | – | – | – | ($202) | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Total operating expenses | ($5,791) | ($1,524) | ($6,274) | ($5,882) | ($5,257) | ($6,549) | ($5,012) | ($1,867) | ($5,425) | ($7,582) | ($4,044) | ($3,396) | ($3,794) | ($4,015) | ($2,701) | ($2,618) | ($6,392) | ($6,049) | ($5,988) | ($5,656) | ($5,437) | ($5,366) | ($4,866) | ($2,550) | ($2,569) | ($2,570) | ($2,559) | ($2,491) | ($2,651) | ($2,702) | ($2,549) | ($2,246) | ($2,031) | – | – | – | – | – | – | – | – | – |
| Total costs and expenses | ($22,873) | ($22,268) | ($19,656) | ($19,427) | ($23,909) | ($19,415) | ($15,490) | ($14,860) | ($21,050) | ($20,698) | ($15,410) | ($13,207) | ($14,825) | ($13,832) | ($12,074) | ($13,426) | ($13,654) | ($12,475) | ($13,621) | ($12,027) | ($11,132) | ($10,592) | ($8,908) | ($8,381) | ($7,932) | ($7,764) | ($7,661) | ($7,066) | ($7,220) | ($9,946) | ($7,757) | ($6,489) | ($5,871) | – | – | – | – | – | – | – | – | – |
| Operating income | $7,305 | $7,285 | $7,068 | $5,826 | $5,370 | $3,698 | $4,885 | $7,736 | $4,191 | $2,333 | $4,486 | $4,282 | $3,642 | $3,255 | $4,463 | $4,231 | $3,802 | $3,268 | $3,506 | $3,326 | $3,224 | $2,962 | $2,821 | $2,805 | $2,582 | $2,391 | $2,405 | $2,251 | $2,279 | $2,665 | $2,601 | $2,691 | $2,426 | $8,489 | $8,073 | $8,050 | $7,975 | $7,492 | $7,235 | $7,010 | $6,847 | $6,814 |
| Earnings | ||||||||||||||||||||||||||||||||||||||||||
| EBITDA | $13,651 | $13,315 | $12,334 | $10,812 | $9,434 | $7,671 | $8,790 | $11,067 | $7,740 | $5,790 | $7,409 | $6,677 | $5,935 | $5,553 | $6,608 | $6,279 | $5,633 | $5,056 | $5,210 | $4,812 | $4,645 | $4,360 | $3,982 | $4,026 | $3,767 | $3,749 | $3,742 | $3,467 | $3,809 | $4,257 | $3,939 | $3,825 | $3,476 | – | – | – | – | – | – | – | – | – |
| Interest income | – | – | – | $85 | $59 | $22 | $37 | $60 | $38 | $26 | $20 | $23 | $19 | $19 | $40 | $21 | $24 | $23 | $33 | $45 | $41 | $36 | $27 | $36 | $22 | $27 | $29 | $30 | $154 | $152 | $54 | $38 | $32 | – | – | – | – | – | – | – | – | – |
| Interest expense | ($3,224) | ($3,238) | ($2,743) | ($2,446) | ($2,022) | ($1,837) | ($1,821) | ($1,736) | ($1,842) | ($1,694) | ($1,317) | ($840) | ($835) | ($824) | ($859) | ($857) | ($895) | ($905) | ($866) | ($886) | ($866) | ($747) | ($640) | ($527) | ($492) | ($557) | ($643) | ($527) | ($558) | ($839) | ($664) | ($663) | ($648) | – | – | – | – | – | – | – | – | – |
| Pre-tax income | $5,248 | $4,999 | $5,229 | $4,345 | $4,223 | $2,576 | $3,496 | $6,542 | $2,749 | $1,068 | $3,480 | $3,629 | $3,008 | $2,559 | $3,749 | $3,487 | $3,066 | $2,604 | $2,722 | $2,569 | $2,353 | $2,186 | $2,114 | $2,086 | $1,846 | $1,677 | $1,582 | $1,514 | $1,656 | $1,811 | $1,127 | $1,103 | $989 | – | – | – | – | – | – | – | – | – |
| Income tax expense | ($674) | ($828) | ($969) | ($496) | ($795) | ($267) | ($393) | ($1,798) | ($449) | ($142) | ($951) | ($1,194) | ($977) | ($849) | ($1,334) | ($1,219) | ($1,026) | ($896) | ($915) | ($835) | ($780) | ($595) | ($585) | ($612) | ($528) | ($558) | ($588) | ($599) | ($670) | ($839) | – | ($805) | ($711) | – | – | – | – | – | – | – | – | – |
| Net income | $4,657 | $4,341 | $4,401 | $3,976 | $3,535 | $2,309 | $3,134 | $4,754 | $2,300 | $926 | $2,529 | $2,435 | $2,031 | $1,710 | $2,415 | $2,203 | $1,975 | $1,643 | $1,742 | $1,734 | $1,573 | $1,591 | $1,532 | $1,474 | $1,318 | $1,262 | $1,313 | $1,276 | $977 | $972 | $1,127 | $1,103 | $989 | $1,002 | $953 | $876 | $604 | $846 | $846 | $554 | $883 | $830 |
| Per share | ||||||||||||||||||||||||||||||||||||||||||
| Diluted EPS (GAAP) | $4.14 | $3.92 | $3.99 | $3.62 | $3.26 | $2.24 | $2.93 | $4.50 | $2.17 | $0.84 | $2.55 | $2.59 | $2.18 | $1.87 | $2.67 | $2.55 | $2.36 | $2.06 | $2.25 | $2.28 | $2.10 | $2.13 | $2.06 | $2.02 | $1.85 | $1.82 | $2.01 | $1.86 | $1.40 | $1.42 | $1.68 | $1.66 | $1.52 | $1.57 | $1.51 | $1.39 | $0.96 | $1.34 | $1.36 | $0.96 | $1.59 | $1.60 |
| Basic EPS (GAAP) | $4.17 | $3.94 | $4.02 | $3.64 | $3.28 | $2.26 | $2.95 | $4.53 | $2.18 | $0.84 | $2.57 | $2.60 | $2.19 | $1.88 | $2.70 | $2.57 | $2.37 | $2.07 | $2.26 | $2.29 | $2.12 | $2.14 | $2.07 | $2.03 | $1.86 | $1.83 | $2.01 | $1.86 | $1.40 | $1.42 | $1.68 | $1.66 | $1.52 | $1.57 | $1.51 | $1.39 | $0.96 | $1.34 | $1.36 | $0.96 | $1.59 | $1.60 |
| Basic shares outstanding | 1,116 | 1,103 | 1,096 | 1,092 | 1,075 | 1,061 | 1,058 | 1,046 | 1,020 | 1,000 | 951 | 910 | 897 | 877 | 871 | 857 | 832 | 795 | 771 | 756 | 743 | 744 | 739 | 727 | 708 | 689 | 653 | 685 | 697 | 685 | 673 | 665 | 650 | 638 | 562 | 553 | 509 | 540 | 622 | 578 | 478 | 440 |
| Margins | ||||||||||||||||||||||||||||||||||||||||||
| Gross margin | 43.4% | 29.8% | 49.9% | 46.4% | 36.3% | 44.3% | 48.6% | 42.5% | 38.1% | 43.1% | 42.9% | 43.9% | 40.3% | 42.5% | 43.3% | 38.8% | 58.4% | 59.2% | 55.4% | 58.5% | 60.3% | 61.4% | 65.5% | 47.9% | 49.0% | 48.9% | 49.3% | 50.9% | 51.9% | 42.6% | 49.7% | 53.8% | 53.7% | – | – | – | – | – | – | – | – | – |
| Operating margin | 24.2% | 24.7% | 26.4% | 23.1% | 18.3% | 16.0% | 24.0% | 34.2% | 16.6% | 10.1% | 22.5% | 24.5% | 19.7% | 19.0% | 27.0% | 24.0% | 21.8% | 20.8% | 20.5% | 21.7% | 22.5% | 21.9% | 24.1% | 25.1% | 24.6% | 23.5% | 23.9% | 24.2% | 24.0% | 21.1% | 25.1% | 29.3% | 29.2% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% | 100.0% |
| Net margin | 15.4% | 14.7% | 16.5% | 15.7% | 12.1% | 10.0% | 15.4% | 21.0% | 9.1% | 4.0% | 12.7% | 13.9% | 11.0% | 10.0% | 14.6% | 12.5% | 11.3% | 10.4% | 10.2% | 11.3% | 11.0% | 11.7% | 13.1% | 13.2% | 12.5% | 12.4% | 13.0% | 13.7% | 10.3% | 7.7% | 10.9% | 12.0% | 11.9% | 11.8% | 11.8% | 10.9% | 7.6% | 11.3% | 11.7% | 7.9% | 12.9% | 12.2% |