XML 105 R81.htm IDEA: XBRL DOCUMENT v3.22.4
Employee Stock Purchase Plan, Stock Options and Warrants - Stock Option Activity (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
12 Months Ended
Dec. 31, 2022
Dec. 31, 2021
Dec. 31, 2020
Share-based Payment Arrangement [Abstract]      
Total intrinsic value of stock options exercised $ 27,110 $ 36,086 $ 11,733
Cash received from stock option exercises 18,952 20,194 5,481
Excess tax benefit from the exercise of stock options $ 3,423 $ 5,571 $ 1,815
Number of Shares      
Beginning balance (in shares) 3,640    
Granted (in shares) 251    
Exercised (in shares) (703)    
Forfeited/expired (in shares) (111)    
Outstanding at December 31 (in shares) 3,077 3,640  
Exercisable (in shares) 1,792    
Ending vested and expected to vest (in shares) 3,013    
Weighted Average Exercise Price      
Beginning balance (in dollars per share) $ 44.70    
Granted (in dollars per share) 63.69    
Exercised (in dollars per share) 28.58    
Forfeited/expired (in dollars per share) 53.16    
Outstanding at December 31 (in dollars per share) 49.62 $ 44.70  
Exercisable (in dollars per share) 43.50    
Ending vested and expected to vest (in dollars per share) $ 49.37    
Outstanding, remaining contractual term 3 years 6 months 3 days    
Exercisable, remaining contractual term 2 years 7 months 9 days    
Ending vested and expected to vest, remaining contractual term 3 years 5 months 19 days    
Outstanding, intrinsic value $ 64,634    
Exercisable, intrinsic value 48,595    
Ending vested and expected to vest, intrinsic value $ 64,026