XML 33 R67.htm IDEA: XBRL DOCUMENT v2.4.1.9
SELECTED QUARTERLY FINANCIAL DATA - Consolidated Statements of Cash Flows (Details) (USD $)
In Thousands, unless otherwise specified
3 Months Ended 6 Months Ended 9 Months Ended 12 Months Ended
Mar. 31, 2014
Mar. 31, 2013
Jun. 30, 2014
Jun. 30, 2013
Sep. 30, 2014
Sep. 30, 2013
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
CASH FLOWS FROM OPERATING ACTIVITIES:                  
Net income including non-controlling interest $ 1,487us-gaap_ProfitLoss $ 135us-gaap_ProfitLoss $ 3,803us-gaap_ProfitLoss $ 3,216us-gaap_ProfitLoss $ 6,142us-gaap_ProfitLoss $ 6,448us-gaap_ProfitLoss $ 2,567us-gaap_ProfitLoss [1] $ 6,551us-gaap_ProfitLoss [1] $ 10,775us-gaap_ProfitLoss [1]
Adjustments to reconcile net income to net cash provided by operating activities:                  
Loss (income) from discontinued operations, net of tax 316us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax 93us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax 97us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax (217)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax 77us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax (473)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax 77us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax (478)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax (943)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
Gain on sale of discontinued operations, net of tax             (718)us-gaap_DiscontinuedOperationGainLossOnDisposalOfDiscontinuedOperationNetOfTax 0us-gaap_DiscontinuedOperationGainLossOnDisposalOfDiscontinuedOperationNetOfTax 0us-gaap_DiscontinuedOperationGainLossOnDisposalOfDiscontinuedOperationNetOfTax
Depreciation (including capital lease amortization) 1,624us-gaap_Depreciation 1,272us-gaap_Depreciation 3,379us-gaap_Depreciation 2,583us-gaap_Depreciation 5,204us-gaap_Depreciation 4,004us-gaap_Depreciation 7,051us-gaap_Depreciation 5,920us-gaap_Depreciation 5,018us-gaap_Depreciation
Amortization of purchased intangible assets 1,616us-gaap_AmortizationOfIntangibleAssets 1,585us-gaap_AmortizationOfIntangibleAssets 3,232us-gaap_AmortizationOfIntangibleAssets 3,153us-gaap_AmortizationOfIntangibleAssets 4,808us-gaap_AmortizationOfIntangibleAssets 4,734us-gaap_AmortizationOfIntangibleAssets 6,103us-gaap_AmortizationOfIntangibleAssets 6,348us-gaap_AmortizationOfIntangibleAssets 6,210us-gaap_AmortizationOfIntangibleAssets
Amortization of deferred debt issuance costs 25us-gaap_AmortizationOfFinancingCostsAndDiscounts 25us-gaap_AmortizationOfFinancingCostsAndDiscounts 51us-gaap_AmortizationOfFinancingCostsAndDiscounts 51us-gaap_AmortizationOfFinancingCostsAndDiscounts 76us-gaap_AmortizationOfFinancingCostsAndDiscounts 76us-gaap_AmortizationOfFinancingCostsAndDiscounts 102us-gaap_AmortizationOfFinancingCostsAndDiscounts 102us-gaap_AmortizationOfFinancingCostsAndDiscounts 124us-gaap_AmortizationOfFinancingCostsAndDiscounts
Stock-based compensation 717us-gaap_ShareBasedCompensation 1,422us-gaap_ShareBasedCompensation 1,741us-gaap_ShareBasedCompensation 2,057us-gaap_ShareBasedCompensation 2,704us-gaap_ShareBasedCompensation 2,685us-gaap_ShareBasedCompensation 3,588us-gaap_ShareBasedCompensation 3,401us-gaap_ShareBasedCompensation 4,443us-gaap_ShareBasedCompensation
Deferred income tax benefit 670us-gaap_DeferredIncomeTaxExpenseBenefit 303us-gaap_DeferredIncomeTaxExpenseBenefit 848us-gaap_DeferredIncomeTaxExpenseBenefit 776us-gaap_DeferredIncomeTaxExpenseBenefit 255us-gaap_DeferredIncomeTaxExpenseBenefit 892us-gaap_DeferredIncomeTaxExpenseBenefit (255)us-gaap_DeferredIncomeTaxExpenseBenefit (521)us-gaap_DeferredIncomeTaxExpenseBenefit (470)us-gaap_DeferredIncomeTaxExpenseBenefit
Loss on disposal of property, plant and equipment   21us-gaap_GainLossOnSaleOfPropertyPlantEquipment 5us-gaap_GainLossOnSaleOfPropertyPlantEquipment 21us-gaap_GainLossOnSaleOfPropertyPlantEquipment 6us-gaap_GainLossOnSaleOfPropertyPlantEquipment 5us-gaap_GainLossOnSaleOfPropertyPlantEquipment 12us-gaap_GainLossOnSaleOfPropertyPlantEquipment 50us-gaap_GainLossOnSaleOfPropertyPlantEquipment 0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
Change in:                  
Accounts receivable, net 1,570us-gaap_IncreaseDecreaseInAccountsReceivable 2,784us-gaap_IncreaseDecreaseInAccountsReceivable (858)us-gaap_IncreaseDecreaseInAccountsReceivable (5,193)us-gaap_IncreaseDecreaseInAccountsReceivable 5,342us-gaap_IncreaseDecreaseInAccountsReceivable 4,868us-gaap_IncreaseDecreaseInAccountsReceivable (427)us-gaap_IncreaseDecreaseInAccountsReceivable (2,185)us-gaap_IncreaseDecreaseInAccountsReceivable 717us-gaap_IncreaseDecreaseInAccountsReceivable
Inventory, net (2,459)us-gaap_IncreaseDecreaseInInventories 619us-gaap_IncreaseDecreaseInInventories (5,000)us-gaap_IncreaseDecreaseInInventories 1,960us-gaap_IncreaseDecreaseInInventories (2,732)us-gaap_IncreaseDecreaseInInventories 6,588us-gaap_IncreaseDecreaseInInventories (3,459)us-gaap_IncreaseDecreaseInInventories 6,750us-gaap_IncreaseDecreaseInInventories (2,380)us-gaap_IncreaseDecreaseInInventories
Prepaid expenses and other (1,867)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets (952)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets (2,873)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets (545)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets (3,413)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets 1,031us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets (3,004)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets 89us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets 551us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
Accounts payable (1,051)us-gaap_IncreaseDecreaseInAccountsPayable (596)us-gaap_IncreaseDecreaseInAccountsPayable (4,778)us-gaap_IncreaseDecreaseInAccountsPayable 3,105us-gaap_IncreaseDecreaseInAccountsPayable (5,084)us-gaap_IncreaseDecreaseInAccountsPayable (2,208)us-gaap_IncreaseDecreaseInAccountsPayable (932)us-gaap_IncreaseDecreaseInAccountsPayable 2,228us-gaap_IncreaseDecreaseInAccountsPayable (3,616)us-gaap_IncreaseDecreaseInAccountsPayable
Customer advances 1,980us-gaap_IncreaseDecreaseInCustomerAdvances 55us-gaap_IncreaseDecreaseInCustomerAdvances 1,613us-gaap_IncreaseDecreaseInCustomerAdvances 3,434us-gaap_IncreaseDecreaseInCustomerAdvances 1,445us-gaap_IncreaseDecreaseInCustomerAdvances 21us-gaap_IncreaseDecreaseInCustomerAdvances 2,782us-gaap_IncreaseDecreaseInCustomerAdvances (360)us-gaap_IncreaseDecreaseInCustomerAdvances (556)us-gaap_IncreaseDecreaseInCustomerAdvances
Accrued expenses and other liabilities (1,151)us-gaap_IncreaseDecreaseInAccruedLiabilities (981)us-gaap_IncreaseDecreaseInAccruedLiabilities (586)us-gaap_IncreaseDecreaseInAccruedLiabilities 344us-gaap_IncreaseDecreaseInAccruedLiabilities 810us-gaap_IncreaseDecreaseInAccruedLiabilities 1,145us-gaap_IncreaseDecreaseInAccruedLiabilities 3,267us-gaap_IncreaseDecreaseInAccruedLiabilities 1,588us-gaap_IncreaseDecreaseInAccruedLiabilities (409)us-gaap_IncreaseDecreaseInAccruedLiabilities
Net cash flows provided by continuing operations 3,477us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 5,785us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 674us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 14,745us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 15,640us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 29,816us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 23,074us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 30,239us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations 19,464us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
Net cash flows provided by discontinued operations (298)us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 559us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 48us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 680us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 239us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 655us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 239us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 1,777us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations 1,092us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
Net cash provided by operating activities 3,179us-gaap_NetCashProvidedByUsedInOperatingActivities 6,344us-gaap_NetCashProvidedByUsedInOperatingActivities 722us-gaap_NetCashProvidedByUsedInOperatingActivities 15,425us-gaap_NetCashProvidedByUsedInOperatingActivities 15,879us-gaap_NetCashProvidedByUsedInOperatingActivities 30,471us-gaap_NetCashProvidedByUsedInOperatingActivities 23,313us-gaap_NetCashProvidedByUsedInOperatingActivities 32,016us-gaap_NetCashProvidedByUsedInOperatingActivities 20,556us-gaap_NetCashProvidedByUsedInOperatingActivities
CASH FLOWS FROM INVESTING ACTIVITIES:                  
Acquisition of property, plant and equipment (1,994)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (4,366)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (4,123)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (9,301)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (6,472)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (13,426)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (21,403)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (16,223)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment (15,133)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
Change in other non-current assets 32us-gaap_PaymentsForProceedsFromOtherInvestingActivities 45us-gaap_PaymentsForProceedsFromOtherInvestingActivities (59)us-gaap_PaymentsForProceedsFromOtherInvestingActivities 192us-gaap_PaymentsForProceedsFromOtherInvestingActivities 373us-gaap_PaymentsForProceedsFromOtherInvestingActivities 209us-gaap_PaymentsForProceedsFromOtherInvestingActivities 1,310us-gaap_PaymentsForProceedsFromOtherInvestingActivities (489)us-gaap_PaymentsForProceedsFromOtherInvestingActivities (224)us-gaap_PaymentsForProceedsFromOtherInvestingActivities
Net cash flows used in continuing operations (1,962)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (4,321)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (4,182)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (9,109)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (6,099)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (13,217)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (13,263)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (16,892)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations (25,651)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
Net cash flows used in discontinued operations (63)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (87)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (85)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (425)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (120)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (604)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (120)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (1,348)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations (514)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
Net cash used in investing activities (2,025)us-gaap_NetCashProvidedByUsedInInvestingActivities (4,408)us-gaap_NetCashProvidedByUsedInInvestingActivities (4,267)us-gaap_NetCashProvidedByUsedInInvestingActivities (9,534)us-gaap_NetCashProvidedByUsedInInvestingActivities (6,219)us-gaap_NetCashProvidedByUsedInInvestingActivities (13,821)us-gaap_NetCashProvidedByUsedInInvestingActivities (13,383)us-gaap_NetCashProvidedByUsedInInvestingActivities (18,240)us-gaap_NetCashProvidedByUsedInInvestingActivities (26,165)us-gaap_NetCashProvidedByUsedInInvestingActivities
CASH FLOWS FROM FINANCING ACTIVITIES:                  
Borrowings (repayments) on bank lines of credit, net (1,863)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit (202)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit 2,555us-gaap_ProceedsFromRepaymentsOfLinesOfCredit (9,811)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit (3,213)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit (13,252)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit (6,069)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit (9,592)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit 12,174us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
Payment on loans with former owners of LRI (15)us-gaap_RepaymentsOfOtherLongTermDebt (16)us-gaap_RepaymentsOfOtherLongTermDebt (31)us-gaap_RepaymentsOfOtherLongTermDebt (32)us-gaap_RepaymentsOfOtherLongTermDebt (47)us-gaap_RepaymentsOfOtherLongTermDebt (47)us-gaap_RepaymentsOfOtherLongTermDebt (50)us-gaap_RepaymentsOfOtherLongTermDebt (63)us-gaap_RepaymentsOfOtherLongTermDebt (1,176)us-gaap_RepaymentsOfOtherLongTermDebt
Payment on capital lease obligations (15)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (13)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (22)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (25)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (23)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (39)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (24)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (40)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations (66)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
Payment of dividends (550)us-gaap_PaymentsOfDividends (540)us-gaap_PaymentsOfDividends (1,108)us-gaap_PaymentsOfDividends (1,088)us-gaap_PaymentsOfDividends (1,667)us-gaap_PaymentsOfDividends (1,637)us-gaap_PaymentsOfDividends (2,226)us-gaap_PaymentsOfDividends (2,187)us-gaap_PaymentsOfDividends (2,155)us-gaap_PaymentsOfDividends
Net proceeds from issuance of common stock to employees and directors 22us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions   234us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions 163us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions 234us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions 163us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions      
Excess tax benefit from stock-based compensation 26us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities (890)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities 51us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities (836)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities 52us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities (895)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities 156us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities 0us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities 0us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
Net cash provided by (used in) financing activities (2,395)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations (1,661)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations 1,679us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations (11,629)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations (4,664)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations (15,707)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations (7,854)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations (11,587)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations 8,517us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
EFFECTS OF EXCHANGE RATES ON CASH (226)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations (247)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations (89)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations (112)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations (662)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations 172us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations (3,274)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations 191us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations (8)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS (1,467)us-gaap_NetCashProvidedByUsedInContinuingOperations 28us-gaap_NetCashProvidedByUsedInContinuingOperations (1,955)us-gaap_NetCashProvidedByUsedInContinuingOperations (5,850)us-gaap_NetCashProvidedByUsedInContinuingOperations 4,334us-gaap_NetCashProvidedByUsedInContinuingOperations 1,115us-gaap_NetCashProvidedByUsedInContinuingOperations (1,198)us-gaap_NetCashProvidedByUsedInContinuingOperations 2,380us-gaap_NetCashProvidedByUsedInContinuingOperations 2,900us-gaap_NetCashProvidedByUsedInContinuingOperations
CASH AND CASH EQUIVALENTS, beginning of the period 10,598us-gaap_CashAndCashEquivalentsAtCarryingValue 8,218us-gaap_CashAndCashEquivalentsAtCarryingValue 10,598us-gaap_CashAndCashEquivalentsAtCarryingValue 8,218us-gaap_CashAndCashEquivalentsAtCarryingValue 10,598us-gaap_CashAndCashEquivalentsAtCarryingValue 8,218us-gaap_CashAndCashEquivalentsAtCarryingValue 10,598us-gaap_CashAndCashEquivalentsAtCarryingValue 8,218us-gaap_CashAndCashEquivalentsAtCarryingValue 5,318us-gaap_CashAndCashEquivalentsAtCarryingValue
CASH AND CASH EQUIVALENTS, end of the period 9,131us-gaap_CashAndCashEquivalentsAtCarryingValue 8,246us-gaap_CashAndCashEquivalentsAtCarryingValue 8,643us-gaap_CashAndCashEquivalentsAtCarryingValue 2,368us-gaap_CashAndCashEquivalentsAtCarryingValue 14,932us-gaap_CashAndCashEquivalentsAtCarryingValue 9,333us-gaap_CashAndCashEquivalentsAtCarryingValue 9,400us-gaap_CashAndCashEquivalentsAtCarryingValue 10,598us-gaap_CashAndCashEquivalentsAtCarryingValue 8,218us-gaap_CashAndCashEquivalentsAtCarryingValue
As Reported                  
CASH FLOWS FROM OPERATING ACTIVITIES:                  
Net income including non-controlling interest 1,638us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
243us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,525us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
3,698us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
7,021us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
7,308us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  7,587us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
11,694us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Adjustments to reconcile net income to net cash provided by operating activities:                  
Loss (income) from discontinued operations, net of tax 316us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
93us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
97us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(217)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
77us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(473)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (478)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(943)us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Depreciation (including capital lease amortization) 1,826us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,272us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
3,581us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,583us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5,406us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,004us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  5,920us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5,018us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Amortization of purchased intangible assets 1,616us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,585us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
3,232us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
3,153us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,808us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,734us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  6,348us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
6,210us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Amortization of deferred debt issuance costs 25us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
25us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
51us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
51us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
76us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
76us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  102us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
124us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Stock-based compensation 555us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,422us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,591us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,057us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,565us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,685us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  3,401us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,443us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Deferred income tax benefit 612us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
130us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
72us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
229us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(608)us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(126)us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (1,666)us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,159)us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Loss on disposal of property, plant and equipment   21us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
21us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
6us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  50us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
 
Change in:                  
Accounts receivable, net 1,570us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,784us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(858)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(5,193)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5,342us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,868us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (2,185)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
717us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Inventory, net (2,513)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
619us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(5,000)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,960us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(3,012)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
6,588us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  6,750us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(2,380)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Prepaid expenses and other (1,867)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(952)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(2,873)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(545)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(3,146)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,031us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  79us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
463us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Accounts payable (1,051)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(596)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,778)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
3,105us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(5,084)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(2,208)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  2,228us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(3,616)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Customer advances 1,980us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
55us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,613us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
3,434us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,445us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
21us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (360)us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(556)us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Accrued expenses and other liabilities (1,291)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(916)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(645)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
409us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
683us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,303us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  1,707us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(551)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net cash flows provided by continuing operations 3,416us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5,785us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
613us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
14,745us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
15,579us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
29,816us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  30,239us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
19,464us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net cash flows provided by discontinued operations (298)us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
559us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
48us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
680us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
239us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
655us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  1,777us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,092us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net cash provided by operating activities 3,118us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
6,344us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
661us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
15,425us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
15,818us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
30,471us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  32,016us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
20,556us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
CASH FLOWS FROM INVESTING ACTIVITIES:                  
Acquisition of property, plant and equipment (1,994)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,366)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,123)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(9,301)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(6,472)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(13,426)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (16,223)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(15,133)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Change in other non-current assets 32us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
45us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(59)us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
192us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
373us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
209us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (489)us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(224)us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net cash flows used in continuing operations (1,962)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,321)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,182)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(9,109)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(6,099)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(13,217)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (16,892)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(25,651)us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net cash flows used in discontinued operations (63)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(87)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(85)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(425)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(120)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(604)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (1,348)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(514)us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net cash used in investing activities (2,025)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,408)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,267)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(9,534)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(6,219)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(13,821)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (18,240)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(26,165)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
CASH FLOWS FROM FINANCING ACTIVITIES:                  
Borrowings (repayments) on bank lines of credit, net (1,863)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(202)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,555us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(9,811)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(3,213)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(13,252)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (9,592)us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
12,174us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Payment on loans with former owners of LRI (15)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(16)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(31)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(32)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(47)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(47)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (63)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,176)us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Payment on capital lease obligations (15)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(13)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(22)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(25)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(23)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(39)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (40)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(66)us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Payment of dividends (550)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(540)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,108)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,088)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,667)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,637)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (2,187)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(2,155)us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Net proceeds from issuance of common stock to employees and directors 22us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  234us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
163us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
234us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
163us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
     
Excess tax benefit from stock-based compensation 87us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(890)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
112us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(836)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
113us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(895)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
     
Net cash provided by (used in) financing activities (2,334)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,661)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,740us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(11,629)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(4,603)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(15,707)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  (11,587)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,517us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
EFFECTS OF EXCHANGE RATES ON CASH (226)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(247)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(89)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(112)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(662)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
172us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  191us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(8)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS (1,467)us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
28us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(1,955)us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
(5,850)us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
4,334us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
1,115us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  2,380us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,900us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
CASH AND CASH EQUIVALENTS, beginning of the period 10,598us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,218us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
10,598us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,218us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
10,598us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,218us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
10,598us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,218us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
5,318us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
CASH AND CASH EQUIVALENTS, end of the period 9,131us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,246us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,643us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
2,368us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
14,932us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
9,333us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
  10,598us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
8,218us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioPreviouslyReportedMember
Adjustments                  
CASH FLOWS FROM OPERATING ACTIVITIES:                  
Net income including non-controlling interest (151)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(108)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(722)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(482)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(879)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(860)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  (1,036)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(919)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Adjustments to reconcile net income to net cash provided by operating activities:                  
Loss (income) from discontinued operations, net of tax 0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationDuringPhaseOutPeriodNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Depreciation (including capital lease amortization) (202)us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(202)us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(202)us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_Depreciation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Amortization of purchased intangible assets 0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Amortization of deferred debt issuance costs 0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_AmortizationOfFinancingCostsAndDiscounts
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Stock-based compensation 162us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
150us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
139us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ShareBasedCompensation
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Deferred income tax benefit 58us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
173us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
776us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
547us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
863us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
1,018us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  1,145us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
689us-gaap_DeferredIncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Loss on disposal of property, plant and equipment   0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
 
Change in:                  
Accounts receivable, net 0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Inventory, net 54us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
280us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Prepaid expenses and other 0us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(267)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  10us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
88us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Accounts payable 0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Customer advances 0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_IncreaseDecreaseInCustomerAdvances
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Accrued expenses and other liabilities 140us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(65)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
59us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(65)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
127us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(158)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  (119)us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
142us-gaap_IncreaseDecreaseInAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net cash flows provided by continuing operations 61us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
61us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
61us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net cash flows provided by discontinued operations 0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net cash provided by operating activities 61us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
61us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
61us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
CASH FLOWS FROM INVESTING ACTIVITIES:                  
Acquisition of property, plant and equipment 0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Change in other non-current assets 0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsForProceedsFromOtherInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net cash flows used in continuing operations 0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net cash flows used in discontinued operations 0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net cash used in investing activities 0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
CASH FLOWS FROM FINANCING ACTIVITIES:                  
Borrowings (repayments) on bank lines of credit, net 0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromRepaymentsOfLinesOfCredit
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Payment on loans with former owners of LRI 0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfOtherLongTermDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Payment on capital lease obligations 0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_RepaymentsOfLongTermCapitalLeaseObligations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Payment of dividends 0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_PaymentsOfDividends
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
Net proceeds from issuance of common stock to employees and directors 0us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
     
Excess tax benefit from stock-based compensation (61)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(61)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(61)us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
     
Net cash provided by (used in) financing activities (61)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(61)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
(61)us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
EFFECTS OF EXCHANGE RATES ON CASH 0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
NET INCREASE (DECREASE) IN CASH AND CASH EQUIVALENTS 0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_NetCashProvidedByUsedInContinuingOperations
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
CASH AND CASH EQUIVALENTS, beginning of the period 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
CASH AND CASH EQUIVALENTS, end of the period $ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
$ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
$ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
$ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
$ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
$ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
  $ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
$ 0us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_ScenarioAdjustmentMember
[1] Restated