XML 82 R6.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
shares in Thousands, $ in Thousands
Common Stock
Retained Earnings
Accumulated Other Comprehensive Loss
Total
Beginning balance at Dec. 31, 2020 $ 606,224 $ 357,803 $ (5,452) $ 958,575
Beginning balance (in shares) at Dec. 31, 2020 55,623      
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Net income   48,454   48,454
Other comprehensive income (loss)     (2,539) (2,539)
Stock-based compensation expense $ 14,579     14,579
Options exercised $ 20,374     20,374
Options exercised (in shares) 883      
Issuance of common stock under Employee Stock Purchase Plan $ 1,112     1,112
Issuance of common stock under Employee Stock Purchase Plan (in shares) 18      
Shares issued from time-vested restricted stock units (in shares) 59      
Shares surrendered in exchange for payment of payroll tax liabilities $ (576)     (576)
Shares surrendered in exchange for payment of payroll tax liabilities (in shares) (10)      
Shares surrendered in exchange for exercise of stock options $ (180)     (180)
Shares surrendered in exchange for exercise of stock options (in shares) (3)      
Ending balance at Dec. 31, 2021 $ 641,533 406,257 (7,991) 1,039,799
Ending balance (in shares) at Dec. 31, 2021 56,570      
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Net income   74,516   74,516
Other comprehensive income (loss)     (3,559) (3,559)
Stock-based compensation expense $ 16,045     16,045
Options exercised $ 20,092     20,092
Options exercised (in shares) 703      
Issuance of common stock under Employee Stock Purchase Plan $ 1,118     1,118
Issuance of common stock under Employee Stock Purchase Plan (in shares) 19      
Shares issued from time-vested restricted stock units (in shares) 70      
Shares surrendered in exchange for payment of payroll tax liabilities $ (2,474)     (2,474)
Shares surrendered in exchange for payment of payroll tax liabilities (in shares) (38)      
Shares surrendered in exchange for exercise of stock options $ (1,140)     (1,140)
Shares surrendered in exchange for exercise of stock options (in shares) (18)      
Ending balance at Dec. 31, 2022 $ 675,174 480,773 (11,550) $ 1,144,397
Ending balance (in shares) at Dec. 31, 2022 57,306     57,306
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Net income   94,411   $ 94,411
Other comprehensive income (loss)     216 216
Stock-based compensation expense $ 19,043     19,043
Options exercised $ 20,312     $ 20,312
Options exercised (in shares) 606     606
Issuance of common stock under Employee Stock Purchase Plan $ 1,081     $ 1,081
Issuance of common stock under Employee Stock Purchase Plan (in shares) 15      
Shares issued from time-vested restricted stock units (in shares) 92      
Purchase of capped call option $ (66,528)     (66,528)
Shares surrendered in exchange for payment of payroll tax liabilities $ (5,123)     (5,123)
Shares surrendered in exchange for payment of payroll tax liabilities (in shares) (75)      
Shares surrendered in exchange for exercise of stock options $ (5,809)     (5,809)
Shares surrendered in exchange for exercise of stock options (in shares) (86)      
Ending balance at Dec. 31, 2023 $ 638,150 $ 575,184 $ (11,334) $ 1,202,000
Ending balance (in shares) at Dec. 31, 2023 57,858     57,858