XML 22 R4.htm IDEA: XBRL DOCUMENT
v3.8.0.1

CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME - USD ($) shares in Thousands, $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2017 | Dec. 31, 2016 | Dec. 31, 2015
Contract revenues | $ 1,403,317 | $ 1,142,487 | $ 1,061,681
Contract costs | 1,278,313 | 1,007,764 | 939,340
Gross profit | 125,004 | 134,723 | 122,341
Selling, general and administrative expenses | 98,611 | 96,424 | 79,186
Amortization of intangible assets | 499 | 886 | 571
Gain on sale of property and equipment | (3,664) | (1,341) | (2,257)
Income from operations | 29,558 | 38,754 | 44,841
Other income (expense): |  |  |
Interest income | 4 | 5 | 25
Interest expense | (2,603) | (1,299) | (741)
Other income (expense), net | (2,319) | 885 | 174
Income before provision for income taxes | 24,640 | 38,345 | 44,299
Income tax expense | 3,486 | 16,914 | 16,997
Net income | $ 21,154 | $ 21,431 | $ 27,302
Income per common share: |  |  |
- Basic (in dollars per share) | $ 1.30 | $ 1.25 | $ 1.33
- Diluted (in dollars per share) | $ 1.28 | $ 1.23 | $ 1.30
Weighted average number of common shares and potential common shares outstanding: |  |  |
- Basic (in shares) | 16,273 | 17,109 | 20,577
- Diluted (in shares) | 16,496 | 17,461 | 21,038
Net income | $ 21,154 | $ 21,431 | $ 27,302
Other comprehensive income (loss): |  |  |
Foreign currency translation adjustment | 134 | (549) | 103
Other comprehensive income (loss) | 134 | (549) | 103
Total comprehensive income | $ 21,288 | $ 20,882 | $ 27,405

X
- Definition The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=98514028&loc=d3e3602-108585 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 30 -Section 50 -Paragraph 2 -Subparagraph (a)(2) -URI http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275 + Details
Name: | us-gaap_AmortizationOfIntangibleAssets
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=84228862&loc=d3e557-108580 + Details
Name: | us-gaap_ComprehensiveIncomeNetOfTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Total costs related to services rendered by an entity during the reporting period. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.2(d)) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 + Details
Name: | us-gaap_CostOfServices
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_EarningsPerShareAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 55 -Paragraph 52 -URI http://asc.fasb.org/extlink&oid=96948231&loc=d3e4984-109258 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04(19)) -URI http://asc.fasb.org/extlink&oid=6879464&loc=d3e573970-122913 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=96947427&loc=d3e1252-109256 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(21)) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 Reference 6: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-04(23)) -URI http://asc.fasb.org/extlink&oid=6879574&loc=d3e536633-122882 + Details
Name: | us-gaap_EarningsPerShareBasic
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04(19)) -URI http://asc.fasb.org/extlink&oid=6879464&loc=d3e573970-122913 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=96947427&loc=d3e1252-109256 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(21)) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-04(23)) -URI http://asc.fasb.org/extlink&oid=6879574&loc=d3e536633-122882 + Details
Name: | us-gaap_EarningsPerShareDiluted
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=98514028&loc=d3e3602-108585 + Details
Name: | us-gaap_GainLossOnSaleOfPropertyPlantEquipment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.1,2) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 + Details
Name: | us-gaap_GrossProfit
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08.(h)(1)(i)) -URI http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690 + Details
Name: | us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 740 -SubTopic 10 -Section 50 -Paragraph 9 -Subparagraph (a),(b) -URI http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08.(h)) -URI http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690 + Details
Name: | us-gaap_IncomeTaxExpenseBenefit
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of the cost of borrowed funds accounted for as interest expense. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 20 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 45 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=64930785&loc=d3e28555-108399 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-04.9) -URI http://asc.fasb.org/extlink&oid=6879574&loc=d3e536633-122882 + Details
Name: | us-gaap_InterestExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.7(b)) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 + Details
Name: | us-gaap_InvestmentIncomeInterest
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The portion of profit or loss for the period, net of income taxes, which is attributable to the parent. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -URI http://asc.fasb.org/extlink&oid=98514028&loc=d3e3602-108585 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-04(22)) -URI http://asc.fasb.org/extlink&oid=6879574&loc=d3e536633-122882 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04(18)) -URI http://asc.fasb.org/extlink&oid=6879464&loc=d3e573970-122913 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(20)) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 + Details
Name: | us-gaap_NetIncomeLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_NonoperatingIncomeExpenseAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The net result for the period of deducting operating expenses from operating revenues. + References No definition available. + Details
Name: | us-gaap_OperatingIncomeLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount after tax, before reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 830 -SubTopic 30 -Section 45 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=64808268&loc=d3e32211-110900 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 10A -Subparagraph (a-c) -URI http://asc.fasb.org/extlink&oid=84228862&loc=SL7669646-108580 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 830 -SubTopic 30 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 11 -URI http://asc.fasb.org/extlink&oid=84228862&loc=d3e637-108580 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 830 -SubTopic 30 -Section 45 -Paragraph 12 -URI http://asc.fasb.org/extlink&oid=64808268&loc=d3e32022-110900 Reference 6: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 830 -SubTopic 30 -Section 45 -Paragraph 18 -URI http://asc.fasb.org/extlink&oid=64808268&loc=d3e32157-110900 + Details
Name: | us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount after tax and reclassification adjustments of other comprehensive income (loss). + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=84159872&loc=d3e21463-112644 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 1A -URI http://asc.fasb.org/extlink&oid=84228862&loc=SL7669619-108580 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 1B -URI http://asc.fasb.org/extlink&oid=84228862&loc=SL7669625-108580 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 55 -Paragraph 15 -URI http://asc.fasb.org/extlink&oid=84158357&loc=d3e1436-108581 + Details
Name: | us-gaap_OtherComprehensiveIncomeLossNetOfTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of income (expense) related to nonoperating activities, classified as other. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.9) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 + Details
Name: | us-gaap_OtherNonoperatingIncomeExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Aggregate revenue during the period from services rendered in the normal course of business, after deducting allowances and discounts. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.1(d)) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 + Details
Name: | us-gaap_SalesRevenueServicesNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.4) -URI http://asc.fasb.org/extlink&oid=63488584&loc=d3e20235-122688 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 330 -SubTopic 10 -Section 30 -Paragraph 8 -URI http://asc.fasb.org/extlink&oid=68048583&loc=d3e3636-108311 + Details
Name: | us-gaap_SellingGeneralAndAdministrativeExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 45 -Paragraph 16 -URI http://asc.fasb.org/extlink&oid=96947427&loc=d3e1505-109256 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257 + Details
Name: | us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 45 -Paragraph 10 -URI http://asc.fasb.org/extlink&oid=96947427&loc=d3e1448-109256 + Details
Name: | us-gaap_WeightedAverageNumberOfSharesOutstandingBasic
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration