XML 21 R5.htm IDEA: XBRL DOCUMENT v3.25.0.1
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
12 Months Ended
Dec. 31, 2024
Dec. 31, 2023
Dec. 31, 2022
Income Statement [Abstract]      
Contract revenues $ 3,362,290 $ 3,643,905 $ 3,008,542
Contract costs 3,071,971 3,279,508 2,664,580
Gross profit 290,319 364,397 343,962
Selling, general and administrative expenses 238,222 234,611 222,424
Amortization of intangible assets 4,869 4,907 9,009
Gain on sale of property and equipment (6,854) (4,214) (2,378)
Income from operations 54,082 129,093 114,907
Other income (expense):      
Interest income 415 888 187
Interest expense (6,525) (4,939) (3,563)
Other income (expense), net (1,479) (38) 2,673
Income before provision for income taxes 46,493 125,004 114,204
Income tax expense 16,230 34,014 30,823
Net income $ 30,263 $ 90,990 $ 83,381
Income per common share:      
Basic (in dollars per share) $ 1.84 $ 5.45 $ 4.98
Diluted (in dollars per share) $ 1.83 $ 5.40 $ 4.91
Weighted average number of common shares and potential common shares outstanding:      
Basic (in shares) 16,467 16,682 16,760
Diluted (in shares) 16,526 16,837 16,980
Net income $ 30,263 $ 90,990 $ 83,381
Other comprehensive income (loss):      
Foreign currency translation adjustment (8,771) 2,420 (6,473)
Other comprehensive income (loss) (8,771) 2,420 (6,473)
Total comprehensive income $ 21,492 $ 93,410 $ 76,908