XML 75 R4.htm IDEA: XBRL DOCUMENT v2.4.1.9
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE (LOSS)/ INCOME
In Thousands, except Share data, unless otherwise specified
12 Months Ended
Dec. 31, 2014
USD ($)
Dec. 31, 2013
USD ($)
Dec. 31, 2012
USD ($)
Dec. 31, 2014
ZHEJIANG TIANLAN
CNY
Dec. 31, 2013
ZHEJIANG TIANLAN
CNY
Dec. 31, 2012
ZHEJIANG TIANLAN
CNY
Dec. 31, 2014
ZHEJIANG JIAHUAN
CNY
Dec. 31, 2013
ZHEJIANG JIAHUAN
CNY
Dec. 31, 2012
ZHEJIANG JIAHUAN
CNY
Revenues                  
Trading and manufacturing $ 11,647CLWT_TradingAndManufacturingRevenue $ 10,986CLWT_TradingAndManufacturingRevenue $ 10,866CLWT_TradingAndManufacturingRevenue            
Engineering 7,175CLWT_EngineeringRevenue 7,616CLWT_EngineeringRevenue 10,779CLWT_EngineeringRevenue            
Total revenues 18,822us-gaap_Revenues 18,602us-gaap_Revenues 21,645us-gaap_Revenues 474,265us-gaap_Revenues
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
378,956us-gaap_Revenues
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
281,203us-gaap_Revenues
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
99,908us-gaap_Revenues
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
89,685us-gaap_Revenues
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
80,097us-gaap_Revenues
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Cost of revenues                  
Trading and manufacturing (9,060)CLWT_TradingAndManufacturingExpense (8,422)CLWT_TradingAndManufacturingExpense (8,230)CLWT_TradingAndManufacturingExpense            
Engineering (4,931)CLWT_EngineeringExpense (4,716)CLWT_EngineeringExpense (7,250)CLWT_EngineeringExpense            
Total cost of revenues (13,991)us-gaap_CostOfRevenue (13,138)us-gaap_CostOfRevenue (15,480)us-gaap_CostOfRevenue (380,955)us-gaap_CostOfRevenue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(303,039)us-gaap_CostOfRevenue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(216,362)us-gaap_CostOfRevenue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(72,490)us-gaap_CostOfRevenue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(67,015)us-gaap_CostOfRevenue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(59,570)us-gaap_CostOfRevenue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Gross profit 4,831us-gaap_GrossProfit 5,464us-gaap_GrossProfit 6,165us-gaap_GrossProfit 93,310us-gaap_GrossProfit
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
75,917us-gaap_GrossProfit
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
64,841us-gaap_GrossProfit
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
27,418us-gaap_GrossProfit
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
22,670us-gaap_GrossProfit
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
20,527us-gaap_GrossProfit
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Selling and administrative expenses (5,802)CLWT_SellingAndAdministrativeExpenses (5,719)CLWT_SellingAndAdministrativeExpenses (6,224)CLWT_SellingAndAdministrativeExpenses (66,343)CLWT_SellingAndAdministrativeExpenses
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(70,823)CLWT_SellingAndAdministrativeExpenses
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(66,902)CLWT_SellingAndAdministrativeExpenses
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(21,090)CLWT_SellingAndAdministrativeExpenses
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(19,338)CLWT_SellingAndAdministrativeExpenses
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(18,485)CLWT_SellingAndAdministrativeExpenses
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Operating loss/ income (971)us-gaap_OperatingIncomeLoss (255)us-gaap_OperatingIncomeLoss (59)us-gaap_OperatingIncomeLoss 26,967us-gaap_OperatingIncomeLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,094us-gaap_OperatingIncomeLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,061)us-gaap_OperatingIncomeLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
6,328us-gaap_OperatingIncomeLoss
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
3,332us-gaap_OperatingIncomeLoss
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,042us-gaap_OperatingIncomeLoss
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Interest income 27us-gaap_InterestAndOtherIncome 45us-gaap_InterestAndOtherIncome 46us-gaap_InterestAndOtherIncome 148us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
194us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
149us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
17us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
32us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
68us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Interest expenses       (6,272)us-gaap_InterestExpense
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(4,751)us-gaap_InterestExpense
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(4,496)us-gaap_InterestExpense
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,209)us-gaap_InterestExpense
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,702)us-gaap_InterestExpense
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,574)us-gaap_InterestExpense
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Other income, net 65us-gaap_OtherNonoperatingIncome 54us-gaap_OtherNonoperatingIncome 48us-gaap_OtherNonoperatingIncome 4,595us-gaap_OtherNonoperatingIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
7,424us-gaap_OtherNonoperatingIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
7,341us-gaap_OtherNonoperatingIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
1,075us-gaap_OtherNonoperatingIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
697us-gaap_OtherNonoperatingIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,067us-gaap_OtherNonoperatingIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(Loss)/gain on disposal of fixed assets 0us-gaap_GainLossOnDispositionOfAssets (1)us-gaap_GainLossOnDispositionOfAssets (22)us-gaap_GainLossOnDispositionOfAssets            
(Loss)/profit before income taxes, equity in income of affiliates and non-controlling interests (879)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest (157)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest 13us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest 25,438us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
7,961us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
933us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,194us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,327us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,535us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Income (taxes)/benefit (18)us-gaap_IncomeTaxExpenseBenefit (73)us-gaap_IncomeTaxExpenseBenefit (142)us-gaap_IncomeTaxExpenseBenefit (2,559)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,663)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,434)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(484)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(19)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Equity in income of affiliates 892us-gaap_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLoss 325us-gaap_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLoss 9us-gaap_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLoss            
Net (loss)/profit for the year (5)us-gaap_ProfitLoss 95us-gaap_ProfitLoss (120)us-gaap_ProfitLoss 22,879us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,298us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,501)us-gaap_ProfitLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Less: net (income)/loss attributable to non-controlling interest 169us-gaap_NetIncomeLossAttributableToNoncontrollingInterest (113)us-gaap_NetIncomeLossAttributableToNoncontrollingInterest (309)us-gaap_NetIncomeLossAttributableToNoncontrollingInterest (8)us-gaap_NetIncomeLossAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2,328us-gaap_NetIncomeLossAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
251us-gaap_NetIncomeLossAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Net (loss)/income attributable to the Company 164us-gaap_NetIncomeLoss (18)us-gaap_NetIncomeLoss (429)us-gaap_NetIncomeLoss 22,871us-gaap_NetIncomeLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
7,626us-gaap_NetIncomeLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,250)us-gaap_NetIncomeLoss
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Other comprehensive loss                  
Net (loss)/profit (5)CLWT_NetLossIncome 95CLWT_NetLossIncome (120)CLWT_NetLossIncome 22,879CLWT_NetLossIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,298CLWT_NetLossIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,501)CLWT_NetLossIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Foreign exchange translation adjustments (15)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax 181us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax 0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax 0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Release of translation reserves upon disposal of a subsidiary 0CLWT_ReleaseOfTranslationReservesUponDisposalOfSubsidiary (74)CLWT_ReleaseOfTranslationReservesUponDisposalOfSubsidiary              
Comprehensive (loss)/income (20)us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest 202us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest (120)us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest 22,879us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,298us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,501)us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,710us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,308us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,535us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Less: Comprehensive (income)/loss attributable to non-controlling interest 176us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest (167)us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest (309)us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest (8)us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2,328us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
251us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(3)us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(16)us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Comprehensive income/(loss) attributable to the Company $ 156us-gaap_ComprehensiveIncomeNetOfTax $ 35us-gaap_ComprehensiveIncomeNetOfTax $ (429)us-gaap_ComprehensiveIncomeNetOfTax 22,871us-gaap_ComprehensiveIncomeNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
7,626us-gaap_ComprehensiveIncomeNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,250)us-gaap_ComprehensiveIncomeNetOfTax
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,710us-gaap_ComprehensiveIncomeNetOfTax
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,308us-gaap_ComprehensiveIncomeNetOfTax
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,535us-gaap_ComprehensiveIncomeNetOfTax
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Net income/(loss) per ordinary share                  
- Basic $ 0.08us-gaap_EarningsPerShareBasic $ (0.01)us-gaap_EarningsPerShareBasic $ (0.21)us-gaap_EarningsPerShareBasic            
- Diluted $ 0.08us-gaap_EarningsPerShareDiluted $ (0.01)us-gaap_EarningsPerShareDiluted $ (0.21)us-gaap_EarningsPerShareDiluted            
Weighted average number of ordinary shares outstanding                  
- Basic 2,069,223us-gaap_WeightedAverageNumberOfSharesOutstandingBasic 2,069,223us-gaap_WeightedAverageNumberOfSharesOutstandingBasic 2,070,685us-gaap_WeightedAverageNumberOfSharesOutstandingBasic            
- Diluted 2,069,223us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding 2,069,223us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding 2,076,315us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding