XML 16 R3.htm IDEA: XBRL DOCUMENT v3.22.0.1
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Income Statement [Abstract]      
Revenue $ 1,579,922 $ 1,397,700 $ 1,347,387
Direct costs 1,123,058 1,001,476 952,349
Gross profit 456,864 396,224 395,038
Selling, general and administrative expenses 345,721 310,713 314,167
Depreciation and amortization 4,500 5,255 6,050
Income from operations 106,643 80,256 74,821
Other expense, net 7,376 5,044 3,425
Income from continuing operations, before income taxes 99,267 75,212 71,396
Income tax expense 24,090 19,173 16,830
Income from continuing operations 75,177 56,039 54,566
Income from discontinued operations, net of tax 0 0 76,296
Net income 75,177 56,039 130,862
Other comprehensive (loss) income:      
Defined benefit pension plans, net of tax 3,103 (1,706) (2,183)
Change in fair value of interest rate swap, net of tax 1,941 (1,191) (807)
Comprehensive income $ 80,221 $ 53,142 $ 127,872
Earnings per share - basic:      
Continuing operations (in dollars per share) $ 3.65 $ 2.67 $ 2.35
Discontinued operations (in dollars per share) 0 0 3.29
Earnings per share – basic (in dollars per share) 3.65 2.67 5.64
Earnings per share - diluted:      
Continuing operations (in dollars per share) 3.54 2.62 2.29
Discontinued operations (in dollars per share) 0 0 3.21
Earnings per share – diluted (in dollars per share) $ 3.54 $ 2.62 $ 5.50
Weighted average shares outstanding - basic (in shares) 20,579 20,983 23,186
Weighted average shares outstanding – diluted (in shares) 21,212 21,395 23,772