Description of Business and Summary of Significant Accounting Policies (Tables)
12 Months Ended
Dec. 31, 2020
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Schedule of Error Corrections and Prior Period Adjustments
The effects of the corrections to each of the individual affected line items in our Consolidated Statements of Income were as follows:
Year Ended December 31, 2019Year Ended December 31, 2018
(In thousands, except per share data)As Previously ReportedCorrectionAs CorrectedAs Previously ReportedCorrectionAs Corrected
Revenue$1,382,642 $(117)$1,382,525 $1,279,304 $(268)$1,279,036 
Cost of revenue1,252,711 1,849 1,254,560 1,164,609 — 1,164,609 
Operating income51,615 (1,966)49,649 48,323 (268)48,055 
Income from operations before income taxes45,145 (1,966)43,179 43,252 (268)42,984 
Income tax expense10,429 (426)10,003 7,956 (58)7,898 
Net income$34,716 $(1,540)$33,176 $35,296 $(210)$35,086 
Earnings per share
Basic$3.03 $(0.13)$2.90 $3.14 $(0.01)$3.13 
Diluted$2.99 $(0.13)$2.86 $3.10 $(0.02)$3.08 
The effects of the corrections to each of the individual affected line items on our Consolidated Statements of Comprehensive Income were as follows:
Year Ended December 31, 2019Year Ended December 31, 2018
(In thousands)As Previously ReportedCorrectionAs CorrectedAs Previously ReportedCorrectionAs Corrected
Net income$34,716 $(1,540)$33,176 $35,296 $(210)$35,086 
Total comprehensive income$32,792 $(1,540)$31,252 $33,818 $(210)$33,608 
The effects of the corrections to each of the individual affected line items on our Consolidated Balance Sheet were as follows:
December 31, 2019
(In thousands)As Previously ReportedCorrectionAs Corrected
Receivables$269,239 $(95)$269,144 
Total current assets320,711 (95)320,616 
Total Assets636,484 (95)636,389 
Other accrued liabilities34,587 2,822 37,409 
Total current liabilities242,257 2,822 245,079 
Deferred tax liability49,808 (401)49,407 
Total non-current liabilities132,846 (401)132,445 
Total Liabilities375,103 2,421 377,524 
Retained earnings187,591 (2,516)185,075 
Total shareholders' equity261,381 (2,516)258,865 
Total Liabilities and Shareholders' Equity$636,484 $(95)$636,389 
The effects of the corrections to each of the individual affected line items on our Consolidated Statements of Cash Flows were as follows:
Year Ended December 31, 2019Year Ended December 31, 2018
(In thousands)As Previously ReportedCorrectionAs CorrectedAs Previously ReportedCorrectionAs Corrected
Net income$34,716 $(1,540)$33,176 $35,296 $(210)$35,086 
Changes in receivables(21,148)95 (21,053)(24,646)— (24,646)
Changes in deferred taxes(6,772)(401)(7,173)475 — 475 
Changes in other liabilities6,087 1,846 7,933 (1,681)210 (1,471)
Net cash provided in operating activities$27,557 $— $27,557 $40,056 $— $40,056 
The effects of the corrections to each of the individual affected line items on our Consolidated Statements of Changes in Shareholders' Equity were as follows:
Retained EarningsTotal Shareholders' Equity
(In thousands)As Previously ReportedCorrectionAs CorrectedAs Previously ReportedCorrectionAs Corrected
Balance at December 31, 2017$117,415 $(766)$116,649 $183,372 $(766)$182,606 
Net Income35,296 (210)35,086 35,296 (210)35,086 
Balance at December 31, 2018152,616 (976)151,640 221,300 (976)220,324 
Net Income34,716 (1,540)33,176 34,716 (1,540)33,176 
Balance at December 31, 2019$187,591 $(2,516)$185,075 $261,381 $(2,516)$258,865 
Schedule of Cash and Cash Equivalents
(In thousands)December 31,
Reconciliation of cash, cash equivalents and restricted cash20202019
Cash and cash equivalents$66,949 $35,318 
Restricted cash1,778 — 
Total cash, cash equivalents and restricted cash$68,727 $35,318 
Schedule of Restricted Cash
(In thousands)December 31,
Reconciliation of cash, cash equivalents and restricted cash20202019
Cash and cash equivalents$66,949 $35,318 
Restricted cash1,778 — 
Total cash, cash equivalents and restricted cash$68,727 $35,318 
Schedule of Useful Lives
Depreciation and amortization are generally computed using either an accelerated or straight-line method and is based on estimated useful lives or lease terms as follows:
Years
Buildings and improvements
3 – 10
Machinery, equipment and vehicles
3 – 12
Office furniture and equipment, computers and software
3 – 7
Property, plant and equipment, net consisted of the following at December 31:
(In thousands)20202019
Buildings and improvements$2,143 $1,830 
Machinery, equipment and vehicles17,774 15,052 
Office furniture and equipment, computers and software17,346 12,998 
Property, plant and equipment, gross37,263 29,880 
Less: accumulated depreciation and amortization(14,690)(11,036)
Property, plant and equipment, net$22,573 $18,844